fix(v2): use root SSH as bootstrap readiness signal

This commit is contained in:
2026-07-25 13:39:10 +00:00
parent 318b0fd836
commit c80854ebd1
+5 -3
View File
@@ -13,7 +13,7 @@ import {
deleteKeyPairAws,
deleteSecurityGroupAws,
} from "./ec2";
import { connectSsh, waitForBootstrap, type SshSession } from "./ssh";
import { connectSsh, type SshSession } from "./ssh";
import {
buildPrCommentBody,
postComment,
@@ -232,8 +232,10 @@ async function firstDeploy(
activeSshSessions.set(previewId, sshSession);
try {
await appendLog(previewId, `[PP] SSH connected. Waiting for bootstrap to complete...\n`);
await waitForBootstrap(sshSession, 900_000);
// Root SSH is enabled as the final bootstrap step, after the completion
// marker is written. A successful root connection is therefore the
// readiness signal; polling the same long-lived SSH connection can leave
// a completed instance stuck when its exec channel goes stale.
await appendLog(previewId, `[PP] Bootstrap complete. Starting setup...\n`);
if (repoConfig.aptPackages.length > 0) {