Skip to content

Commit 79e695f

Browse files
committed
fix(cli): fix --prepare-only output indentation, make --transaction-hash optional
- Replace dedent template literal with line-by-line array join for consistent output formatting without indentation artifacts - --transaction-hash is now optional in --commit mode; defaults to 'already-registered' (state-only check) with info message - --compose-hash also optional (server reads from token)
1 parent f98f614 commit 79e695f

File tree

1 file changed

+45
-45
lines changed

1 file changed

+45
-45
lines changed

cli/src/commands/deploy/handler.ts

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1060,54 +1060,55 @@ const updateCvm = async (
10601060
if (validatedOptions.json !== false) {
10611061
stdout.write(`${JSON.stringify(output, null, 2)}\n`);
10621062
} else {
1063-
const commitCmd = [
1064-
`phala deploy --cvm-id ${validatedOptions.uuid}`,
1065-
" --commit",
1066-
` --token ${result.commitToken || "<token>"}`,
1067-
` --compose-hash ${composeHashHex}`,
1068-
" --transaction-hash <tx-hash>",
1069-
].join(" \\\n");
1070-
1071-
const chainLine = chainId
1072-
? `Chain: ${chain?.name || "Unknown"} (ID: ${chainId})`
1073-
: "";
1074-
const explorerLine = contractExplorerUrl
1075-
? `Contract: ${contractExplorerUrl}`
1076-
: "";
1077-
1078-
// On-chain status
1079-
let onchainLines = "";
1063+
const lines = [
1064+
"CVM update prepared successfully (pending on-chain approval).",
1065+
"",
1066+
`Compose Hash: ${composeHashHex}`,
1067+
`App ID: ${cvm.app_id}`,
1068+
`Device ID: ${result.deviceId}`,
1069+
];
1070+
if (chainId) {
1071+
lines.push(
1072+
`Chain: ${chain?.name || "Unknown"} (ID: ${chainId})`,
1073+
);
1074+
}
1075+
if (contractExplorerUrl) {
1076+
lines.push(`Contract: ${contractExplorerUrl}`);
1077+
}
1078+
lines.push(
1079+
`Commit Token: ${result.commitToken || "N/A"}`,
1080+
`Commit URL: ${result.commitUrl || "N/A"}`,
1081+
`API Commit URL: ${result.apiCommitUrl || "N/A"} (POST)`,
1082+
);
10801083
if (onchain) {
10811084
const hashStatus = onchain.compose_hash_allowed
10821085
? "registered"
10831086
: "NOT registered";
10841087
const deviceStatus = onchain.device_id_allowed
10851088
? "registered"
10861089
: "NOT registered";
1087-
onchainLines = `\nOn-chain Status:\n Compose Hash: ${hashStatus}\n Device ID: ${deviceStatus}`;
1090+
lines.push(
1091+
"",
1092+
"On-chain Status:",
1093+
` Compose Hash: ${hashStatus}`,
1094+
` Device ID: ${deviceStatus}`,
1095+
);
10881096
if (onchain.is_allowed) {
1089-
onchainLines +=
1090-
"\n All prerequisites met. You can commit with --transaction-hash already-registered.";
1097+
lines.push(
1098+
" All prerequisites met. You can commit with --transaction-hash already-registered.",
1099+
);
10911100
}
10921101
}
1093-
1094-
stdout.write(
1095-
`${dedent`
1096-
CVM update prepared successfully (pending on-chain approval).
1097-
1098-
Compose Hash: ${composeHashHex}
1099-
App ID: ${cvm.app_id}
1100-
Device ID: ${result.deviceId}
1101-
${chainLine}
1102-
${explorerLine}
1103-
Commit Token: ${result.commitToken || "N/A"}
1104-
Commit URL: ${result.commitUrl || "N/A"}
1105-
API Commit URL: ${result.apiCommitUrl || "N/A"} (POST)
1106-
${onchainLines}
1107-
1108-
To complete the update after on-chain approval:
1109-
`}\n${commitCmd}\n`,
1102+
lines.push(
1103+
"",
1104+
"To complete the update after on-chain approval:",
1105+
` phala deploy --cvm-id ${validatedOptions.uuid} \\`,
1106+
" --commit \\",
1107+
` --token ${result.commitToken || "<token>"} \\`,
1108+
` --compose-hash ${composeHashHex} \\`,
1109+
" --transaction-hash <tx-hash>",
11101110
);
1111+
stdout.write(`${lines.join("\n")}\n`);
11111112
}
11121113
return;
11131114
}
@@ -1265,23 +1266,22 @@ const commitCvmUpdate = async (
12651266
if (!validatedOptions.token) {
12661267
throw new Error("--token is required for --commit mode");
12671268
}
1268-
if (!validatedOptions.composeHash) {
1269-
throw new Error("--compose-hash is required for --commit mode");
1270-
}
1271-
if (!validatedOptions.transactionHash) {
1272-
throw new Error("--transaction-hash is required for --commit mode");
1273-
}
12741269
if (!validatedOptions.uuid) {
12751270
throw new Error("--cvm-id is required for --commit mode");
12761271
}
1272+
if (!validatedOptions.transactionHash) {
1273+
logger.info(
1274+
"No --transaction-hash provided, using 'already-registered' (state-only check)",
1275+
);
1276+
}
12771277

12781278
logger.info(`Committing CVM update for ${validatedOptions.uuid}...`);
12791279

12801280
const commitResult = await safeCommitCvmUpdate(client, {
12811281
id: validatedOptions.uuid,
12821282
token: validatedOptions.token,
1283-
composeHash: validatedOptions.composeHash,
1284-
transactionHash: validatedOptions.transactionHash,
1283+
composeHash: validatedOptions.composeHash || "",
1284+
transactionHash: validatedOptions.transactionHash || "",
12851285
});
12861286

12871287
if (!commitResult.success) {

0 commit comments

Comments
 (0)