rampway 0.5.11 → 0.5.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,26 @@
1
1
  /**
2
2
  * @typedef {{socketPath: string, stop: () => Promise<void>}} AgentProcess
3
- * @typedef {{makeTemp?: (prefix: string) => Promise<string>, startAgent?: (socketPath: string) => Promise<AgentProcess>, addIdentity?: (socketPath: string, input: Buffer) => Promise<void>}} AgentDependencies
3
+ * @typedef {{configPath?: string, homeDirectory?: string, makeTemp?: (prefix: string) => Promise<string>, startAgent?: (socketPath: string) => Promise<AgentProcess>, addIdentity?: (socketPath: string, input: Buffer) => Promise<void>, writeDiagnostic?: (message: string) => void}} AgentDependencies
4
4
  */
5
+ /**
6
+ * Runs one complete Rampway command with its configured isolated SSH agent.
7
+ *
8
+ * @template T
9
+ * @param {{configPath: string, stage: {transport: import('#types').TransportConfig}}} prepared
10
+ * @param {() => Promise<T>} callback
11
+ * @param {{manageSignals?: boolean, startAgent?: typeof startEphemeralSshAgent, writeDiagnostic?: (message: string) => void}} [dependencies]
12
+ * @returns {Promise<T>}
13
+ */
14
+ export function withCommandSshCredentials<T>(prepared: {
15
+ configPath: string;
16
+ stage: {
17
+ transport: import("#types").TransportConfig;
18
+ };
19
+ }, callback: () => Promise<T>, { manageSignals, startAgent, writeDiagnostic }?: {
20
+ manageSignals?: boolean;
21
+ startAgent?: typeof startEphemeralSshAgent;
22
+ writeDiagnostic?: (message: string) => void;
23
+ }): Promise<T>;
5
24
  /**
6
25
  * @param {import('#types').SshCredentialsConfig} credentials
7
26
  * @param {AgentDependencies} [dependencies]
@@ -18,8 +37,11 @@ export type AgentProcess = {
18
37
  stop: () => Promise<void>;
19
38
  };
20
39
  export type AgentDependencies = {
40
+ configPath?: string;
41
+ homeDirectory?: string;
21
42
  makeTemp?: (prefix: string) => Promise<string>;
22
43
  startAgent?: (socketPath: string) => Promise<AgentProcess>;
23
44
  addIdentity?: (socketPath: string, input: Buffer) => Promise<void>;
45
+ writeDiagnostic?: (message: string) => void;
24
46
  };
25
47
  //# sourceMappingURL=ssh-credentials.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ssh-credentials.d.ts","sourceRoot":"","sources":["../../../src/transports/ssh-credentials.js"],"names":[],"mappings":"AAOA;;;GAGG;AAEH;;;;GAIG;AACH,oDAJW,OAAO,QAAQ,EAAE,oBAAoB,iBACrC,iBAAiB,GACf,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAC,SAAS,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAC,CAAC,CA0C/H;2BAjDY;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAC;gCAC/C;IAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAAC,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAAC"}
1
+ {"version":3,"file":"ssh-credentials.d.ts","sourceRoot":"","sources":["../../../src/transports/ssh-credentials.js"],"names":[],"mappings":"AAWA;;;GAGG;AAEH;;;;;;;;GAQG;AACH,0CANa,CAAC,YACH;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE;QAAC,SAAS,EAAE,OAAO,QAAQ,EAAE,eAAe,CAAA;KAAC,CAAA;CAAC,YAC1E,MAAM,OAAO,CAAC,CAAC,CAAC,mDAChB;IAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,sBAAsB,CAAC;IAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAC,GAChH,OAAO,CAAC,CAAC,CAAC,CAmCtB;AAED;;;;GAIG;AACH,oDAJW,OAAO,QAAQ,EAAE,oBAAoB,iBACrC,iBAAiB,GACf,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAC,SAAS,CAAC,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAC,CAAC,CA2C/H;2BA9FY;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAC;gCAC/C;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAAC,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAC"}
@@ -4,10 +4,74 @@ import fs from "node:fs/promises";
4
4
  import os from "node:os";
5
5
  import path from "node:path";
6
6
  import { setTimeout as delay } from "node:timers/promises";
7
+ import { createOwnedProcessTree } from "../core/owned-process-tree.js";
8
+ import { withSshCommandEnvironment } from "./ssh-command-environment.js";
9
+ const OPENSSH_DEFAULT_IDENTITY_NAMES = ["id_rsa", "id_ecdsa", "id_ecdsa_sk", "id_ed25519", "id_ed25519_sk", "id_mldsa44_ed25519"];
7
10
  /**
8
11
  * @typedef {{socketPath: string, stop: () => Promise<void>}} AgentProcess
9
- * @typedef {{makeTemp?: (prefix: string) => Promise<string>, startAgent?: (socketPath: string) => Promise<AgentProcess>, addIdentity?: (socketPath: string, input: Buffer) => Promise<void>}} AgentDependencies
12
+ * @typedef {{configPath?: string, homeDirectory?: string, makeTemp?: (prefix: string) => Promise<string>, startAgent?: (socketPath: string) => Promise<AgentProcess>, addIdentity?: (socketPath: string, input: Buffer) => Promise<void>, writeDiagnostic?: (message: string) => void}} AgentDependencies
10
13
  */
14
+ /**
15
+ * Runs one complete Rampway command with its configured isolated SSH agent.
16
+ *
17
+ * @template T
18
+ * @param {{configPath: string, stage: {transport: import('#types').TransportConfig}}} prepared
19
+ * @param {() => Promise<T>} callback
20
+ * @param {{manageSignals?: boolean, startAgent?: typeof startEphemeralSshAgent, writeDiagnostic?: (message: string) => void}} [dependencies]
21
+ * @returns {Promise<T>}
22
+ */
23
+ export async function withCommandSshCredentials(prepared, callback, { manageSignals = false, startAgent = startEphemeralSshAgent, writeDiagnostic } = {}) {
24
+ const { stage } = prepared;
25
+ const credentials = stage.transport.type === "ssh" ? stage.transport.credentials : undefined;
26
+ if (!credentials)
27
+ return await callback();
28
+ const agent = await startAgent(credentials, { configPath: prepared.configPath, writeDiagnostic });
29
+ const ownedProcesses = createOwnedProcessTree();
30
+ /** @type {Promise<void>|undefined} */
31
+ let cleanupPromise;
32
+ const cleanup = () => {
33
+ cleanupPromise ??= (async () => {
34
+ let treeError;
35
+ try {
36
+ await ownedProcesses.close();
37
+ }
38
+ catch (error) {
39
+ treeError = error;
40
+ }
41
+ try {
42
+ await agent.close();
43
+ }
44
+ catch (error) {
45
+ if (!treeError)
46
+ treeError = error;
47
+ }
48
+ if (treeError)
49
+ throw treeError;
50
+ })();
51
+ return cleanupPromise;
52
+ };
53
+ const removeSignalHandlers = manageSignals ? installCredentialSignalHandlers(cleanup) : () => { };
54
+ let primaryError;
55
+ try {
56
+ return await ownedProcesses.run(() => withSshCommandEnvironment(agent.env, callback));
57
+ }
58
+ catch (error) {
59
+ primaryError = error;
60
+ throw error;
61
+ }
62
+ finally {
63
+ try {
64
+ await cleanup();
65
+ }
66
+ catch (cleanupError) {
67
+ if (!primaryError)
68
+ throw cleanupError;
69
+ }
70
+ finally {
71
+ removeSignalHandlers();
72
+ }
73
+ }
74
+ }
11
75
  /**
12
76
  * @param {import('#types').SshCredentialsConfig} credentials
13
77
  * @param {AgentDependencies} [dependencies]
@@ -17,6 +81,7 @@ export async function startEphemeralSshAgent(credentials, dependencies = {}) {
17
81
  const makeTemp = dependencies.makeTemp ?? (prefix => fs.mkdtemp(prefix));
18
82
  const startAgent = dependencies.startAgent ?? startAgentProcess;
19
83
  const addIdentity = dependencies.addIdentity ?? addIdentityProcess;
84
+ const identityFiles = await resolveIdentityFiles(credentials, dependencies);
20
85
  const directory = await makeTemp(path.join(os.tmpdir(), "rampway-ssh-agent-"));
21
86
  const socketPath = path.join(directory, "agent.sock");
22
87
  /** @type {AgentProcess|undefined} */
@@ -24,7 +89,7 @@ export async function startEphemeralSshAgent(credentials, dependencies = {}) {
24
89
  try {
25
90
  await fs.chmod(directory, 0o700);
26
91
  agent = await startAgent(socketPath);
27
- for (const [index, identityFile] of credentials.identityFiles.entries()) {
92
+ for (const [index, identityFile] of identityFiles.entries()) {
28
93
  let identity;
29
94
  try {
30
95
  const stat = await fs.stat(identityFile);
@@ -58,6 +123,79 @@ export async function startEphemeralSshAgent(credentials, dependencies = {}) {
58
123
  }
59
124
  };
60
125
  }
126
+ /**
127
+ * Selects the deploy-host identity before loading any additional identities.
128
+ * Existing identityFiles-only configurations retain their declared order.
129
+ *
130
+ * @param {import('#types').SshCredentialsConfig} credentials
131
+ * @param {AgentDependencies} dependencies
132
+ * @returns {Promise<string[]>}
133
+ */
134
+ async function resolveIdentityFiles(credentials, dependencies) {
135
+ const additionalIdentityFiles = credentials.identityFiles ?? [];
136
+ if (credentials.deployKey === undefined)
137
+ return additionalIdentityFiles;
138
+ const deployKeyPath = await resolveDeployKeyPath(credentials.deployKey, dependencies);
139
+ return [deployKeyPath, ...additionalIdentityFiles.filter(identityFile => identityFile !== deployKeyPath)];
140
+ }
141
+ /**
142
+ * Resolves one readable regular deploy key from the configured search order.
143
+ *
144
+ * @param {"auto"|string} configuredDeployKey
145
+ * @param {AgentDependencies} dependencies
146
+ * @returns {Promise<string>}
147
+ */
148
+ async function resolveDeployKeyPath(configuredDeployKey, dependencies) {
149
+ const writeDiagnostic = dependencies.writeDiagnostic ?? (message => process.stderr.write(`${message}\n`));
150
+ const explicit = configuredDeployKey !== "auto";
151
+ let candidates;
152
+ if (explicit) {
153
+ candidates = [configuredDeployKey];
154
+ }
155
+ else {
156
+ if (!dependencies.configPath)
157
+ throw new Error("Automatic SSH deploy key discovery requires the loaded Rampway config path.");
158
+ const sshDirectory = path.join(dependencies.homeDirectory ?? os.homedir(), ".ssh");
159
+ candidates = [
160
+ path.join(path.dirname(dependencies.configPath), "deploy.key"),
161
+ ...OPENSSH_DEFAULT_IDENTITY_NAMES.map(name => path.join(sshDirectory, name))
162
+ ];
163
+ }
164
+ for (const candidate of candidates) {
165
+ writeDiagnostic(`SSH deploy key: checking ${candidate}`);
166
+ let stat;
167
+ try {
168
+ stat = await fs.stat(candidate);
169
+ }
170
+ catch (error) {
171
+ if ( /** @type {{code?: string}} */(error).code !== "ENOENT")
172
+ throw error;
173
+ writeDiagnostic(`SSH deploy key: not found ${candidate}`);
174
+ if (explicit)
175
+ throw new Error(`Configured SSH deploy key was not found: ${candidate}`, { cause: error });
176
+ continue;
177
+ }
178
+ if (!stat.isFile()) {
179
+ writeDiagnostic(`SSH deploy key: not a regular file ${candidate}`);
180
+ if (explicit)
181
+ throw new Error(`Configured SSH deploy key is not a regular file: ${candidate}`);
182
+ continue;
183
+ }
184
+ try {
185
+ await fs.access(candidate, fs.constants.R_OK);
186
+ }
187
+ catch (error) {
188
+ writeDiagnostic(`SSH deploy key: not readable ${candidate}`);
189
+ if (explicit)
190
+ throw new Error(`Configured SSH deploy key is not readable: ${candidate}`, { cause: error });
191
+ continue;
192
+ }
193
+ writeDiagnostic(`SSH deploy key: found ${candidate}`);
194
+ writeDiagnostic(`SSH deploy key: using ${candidate}`);
195
+ return candidate;
196
+ }
197
+ throw new Error(`No readable SSH deploy key found. Checked: ${candidates.join(", ")}`);
198
+ }
61
199
  /**
62
200
  * @param {string} socketPath
63
201
  * @returns {Promise<AgentProcess>}
@@ -124,4 +262,34 @@ async function cleanupAgent(agent, directory) {
124
262
  if (stopError)
125
263
  throw new Error("Failed to clean up ephemeral SSH agent.", { cause: stopError });
126
264
  }
265
+ /**
266
+ * Clean up command-scoped credentials before restoring conventional signal
267
+ * termination. Handlers exist only while an agent is active.
268
+ *
269
+ * @param {() => Promise<void>} close
270
+ * @returns {() => void}
271
+ */
272
+ function installCredentialSignalHandlers(close) {
273
+ const signals = /** @type {const} */ (["SIGINT", "SIGTERM", "SIGHUP"]);
274
+ let terminating = false;
275
+ const handlers = new Map();
276
+ const remove = () => {
277
+ for (const [signal, handler] of handlers)
278
+ process.removeListener(signal, handler);
279
+ };
280
+ for (const signal of signals) {
281
+ const handler = () => {
282
+ if (terminating)
283
+ return;
284
+ terminating = true;
285
+ void close().catch(() => { }).finally(() => {
286
+ remove();
287
+ process.kill(process.pid, signal);
288
+ });
289
+ };
290
+ handlers.set(signal, handler);
291
+ process.on(signal, handler);
292
+ }
293
+ return remove;
294
+ }
127
295
  //# sourceMappingURL=ssh-credentials.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ssh-credentials.js","sourceRoot":"","sources":["../../../src/transports/ssh-credentials.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ssh-credentials.js","sourceRoot":"","sources":["../../../src/transports/ssh-credentials.js"],"names":[],"mappings":"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"}
@@ -14,8 +14,13 @@ export type TransportConfig = {
14
14
  };
15
15
  export type SshCredentialsConfig = {
16
16
  type: "ephemeral-agent";
17
+ } & ({
18
+ deployKey: string;
19
+ identityFiles?: string[];
20
+ } | {
21
+ deployKey?: undefined;
17
22
  identityFiles: string[];
18
- };
23
+ });
19
24
  export type HttpTransportConfig = {
20
25
  /**
21
26
  * - Base URL of the mounted control plane, e.g. `https://app.example/rampway/deployments`.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.js"],"names":[],"mappings":"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"}
@@ -50,7 +50,7 @@ export function createDetachedExecution({ configuration, emitFrameworkError = ()
50
50
  const child = spawnImpl(process.execPath, [workerPath, workerBootstrapPath, mountIdentifier, runId], {
51
51
  cwd: configuration.getDirectory(),
52
52
  detached: true,
53
- stdio: ["ignore", "ignore", "ignore"]
53
+ stdio: ["ignore", "ignore", "inherit"]
54
54
  });
55
55
  child.once("close", (code, signal) => {
56
56
  if (code !== 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/velocious/controller.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/velocious/controller.js"],"names":[],"mappings":"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"}
@@ -13,17 +13,21 @@ export function readDeploymentStatus({ stage, transport }: {
13
13
  * deploy, rollback, and status functions. Dependency overrides are test-only.
14
14
  *
15
15
  * @param {object} [deps] - Overrides.
16
- * @param {typeof defaultCommandContext} [deps.commandContext] - Context loader.
16
+ * @param {typeof defaultCommandContextFromPrepared} [deps.commandContextFromPrepared] - Operational transport constructor.
17
17
  * @param {typeof runDeploy} [deps.deploy] - Deploy lifecycle.
18
+ * @param {typeof defaultPrepareCommandContext} [deps.prepareCommandContext] - Structural context loader.
18
19
  * @param {typeof readDeploymentStatus} [deps.readDeploymentStatus] - Status reader.
19
20
  * @param {typeof runRollback} [deps.rollback] - Rollback lifecycle.
21
+ * @param {typeof defaultWithCommandSshCredentials} [deps.withCommandSshCredentials] - Command credential scope.
20
22
  * @returns {RampwayDeploymentExecutor} Executor.
21
23
  */
22
- export function createRampwayDeploymentExecutor({ commandContext, deploy, readDeploymentStatus: statusReader, rollback }?: {
23
- commandContext?: typeof defaultCommandContext | undefined;
24
+ export function createRampwayDeploymentExecutor({ commandContextFromPrepared, deploy, prepareCommandContext, readDeploymentStatus: statusReader, rollback, withCommandSshCredentials }?: {
25
+ commandContextFromPrepared?: typeof defaultCommandContextFromPrepared | undefined;
24
26
  deploy?: typeof runDeploy | undefined;
27
+ prepareCommandContext?: typeof defaultPrepareCommandContext | undefined;
25
28
  readDeploymentStatus?: typeof readDeploymentStatus | undefined;
26
29
  rollback?: typeof runRollback | undefined;
30
+ withCommandSshCredentials?: typeof defaultWithCommandSshCredentials | undefined;
27
31
  }): RampwayDeploymentExecutor;
28
32
  export type RampwayDeploymentTarget = {
29
33
  configPath: string;
@@ -50,7 +54,9 @@ export type RampwayDeploymentExecutor = {
50
54
  target: RampwayDeploymentTarget;
51
55
  }) => Promise<Record<string, any>>;
52
56
  };
53
- import { commandContext as defaultCommandContext } from "../commands/context.js";
57
+ import { commandContextFromPrepared as defaultCommandContextFromPrepared } from "../commands/context.js";
54
58
  import { deploy as runDeploy } from "../core/deploy-runner.js";
59
+ import { prepareCommandContext as defaultPrepareCommandContext } from "../commands/context.js";
55
60
  import { rollback as runRollback } from "../core/deploy-runner.js";
61
+ import { withCommandSshCredentials as defaultWithCommandSshCredentials } from "../transports/ssh-credentials.js";
56
62
  //# sourceMappingURL=executor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/velocious/executor.js"],"names":[],"mappings":"AAuBA;;;;;GAKG;AACH,2DAHW;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,OAAO,QAAQ,EAAE,SAAS,CAAA;CAAC,GAC1E,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAaxC;AAED;;;;;;;;;;GAUG;AACH,2HANG;IAA4C,cAAc;IAC1B,MAAM;IACK,oBAAoB;IAC7B,QAAQ;CAC1C,GAAU,yBAAyB,CAkGrC;sCAvIY;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAC;;sBAE1C,CAAC,IAAI,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,uBAAuB,CAAA;KAAC,KAAK,OAAO,CAAC,OAAO,CAAC;YAC/G,CAAC,IAAI,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,uBAAuB,CAAA;KAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC3K,CAAC,IAAI,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,uBAAuB,CAAA;KAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;;wDAbjE,wBAAwB;oCACnB,0BAA0B;wCAA1B,0BAA0B"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/velocious/executor.js"],"names":[],"mappings":"AAwBA;;;;;GAKG;AACH,2DAHW;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,OAAO,QAAQ,EAAE,SAAS,CAAA;CAAC,GAC1E,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAaxC;AAED;;;;;;;;;;;;GAYG;AACH,yLARG;IAAwD,0BAA0B;IAClD,MAAM;IACa,qBAAqB;IAC7B,oBAAoB;IAC7B,QAAQ;IACa,yBAAyB;CAChF,GAAU,yBAAyB,CA0GrC;sCAjJY;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAC;;sBAE1C,CAAC,IAAI,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,uBAAuB,CAAA;KAAC,KAAK,OAAO,CAAC,OAAO,CAAC;YAC/G,CAAC,IAAI,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,uBAAuB,CAAA;KAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAC3K,CAAC,IAAI,EAAE;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,uBAAuB,CAAA;KAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;;gFAdc,wBAAwB;oCAClG,0BAA0B;sEADgD,wBAAwB;wCAClG,0BAA0B;8EAMT,kCAAkC"}
@@ -1,13 +1,14 @@
1
1
  // @ts-check
2
2
  import path from "node:path";
3
3
  import { randomUUID } from "node:crypto";
4
- import { commandContext as defaultCommandContext } from "../commands/context.js";
4
+ import { commandContextFromPrepared as defaultCommandContextFromPrepared, prepareCommandContext as defaultPrepareCommandContext } from "../commands/context.js";
5
5
  import { deploy as runDeploy, rollback as runRollback } from "../core/deploy-runner.js";
6
6
  import { deployPaths } from "../core/paths.js";
7
7
  import { currentReleaseId, previousRelease } from "../core/release-manager.js";
8
8
  import { remoteGitRepoLabel } from "../core/git-source.js";
9
9
  import { Reporter } from "../core/reporter.js";
10
10
  import { shellQuote } from "../transports/ssh-transport.js";
11
+ import { withCommandSshCredentials as defaultWithCommandSshCredentials } from "../transports/ssh-credentials.js";
11
12
  /**
12
13
  * @typedef {{configPath: string, releaseBranch: string}} RampwayDeploymentTarget
13
14
  * @typedef {object} RampwayDeploymentExecutor
@@ -38,105 +39,113 @@ export async function readDeploymentStatus({ stage, transport }) {
38
39
  * deploy, rollback, and status functions. Dependency overrides are test-only.
39
40
  *
40
41
  * @param {object} [deps] - Overrides.
41
- * @param {typeof defaultCommandContext} [deps.commandContext] - Context loader.
42
+ * @param {typeof defaultCommandContextFromPrepared} [deps.commandContextFromPrepared] - Operational transport constructor.
42
43
  * @param {typeof runDeploy} [deps.deploy] - Deploy lifecycle.
44
+ * @param {typeof defaultPrepareCommandContext} [deps.prepareCommandContext] - Structural context loader.
43
45
  * @param {typeof readDeploymentStatus} [deps.readDeploymentStatus] - Status reader.
44
46
  * @param {typeof runRollback} [deps.rollback] - Rollback lifecycle.
47
+ * @param {typeof defaultWithCommandSshCredentials} [deps.withCommandSshCredentials] - Command credential scope.
45
48
  * @returns {RampwayDeploymentExecutor} Executor.
46
49
  */
47
- export function createRampwayDeploymentExecutor({ commandContext = defaultCommandContext, deploy = runDeploy, readDeploymentStatus: statusReader = readDeploymentStatus, rollback = runRollback } = {}) {
50
+ export function createRampwayDeploymentExecutor({ commandContextFromPrepared = defaultCommandContextFromPrepared, deploy = runDeploy, prepareCommandContext = defaultPrepareCommandContext, readDeploymentStatus: statusReader = readDeploymentStatus, rollback = runRollback, withCommandSshCredentials = defaultWithCommandSshCredentials } = {}) {
48
51
  /**
49
52
  * @param {RampwayDeploymentTarget} target - Allowlisted target.
50
53
  * @param {string} stageName - Allowlisted stage.
51
- * @returns {Promise<{stage: import('#types').StageConfig, transport: import('#types').Transport}>} Rampway context.
54
+ * @template T
55
+ * @param {(context: {stage: import('#types').StageConfig, transport: import('#types').Transport}) => Promise<T>} callback - Scoped operation.
56
+ * @returns {Promise<T>} Scoped operation result.
52
57
  */
53
- async function contextFor(target, stageName) {
54
- const context = await commandContext({ config: target.configPath }, stageName, { reporter: quietReporter() });
55
- if (context.stage.strategy !== "remote-git") {
56
- throw new Error(`Callable deployment target ${context.stage.application}/${stageName} must use the remote-git strategy`);
57
- }
58
- if (!context.stage.repo)
59
- throw new Error(`Callable deployment target ${context.stage.application}/${stageName} requires a repository`);
60
- return context;
58
+ async function withContext(target, stageName, callback) {
59
+ const prepared = await prepareCommandContext({ config: target.configPath }, stageName);
60
+ return await withCommandSshCredentials(prepared, async () => {
61
+ const context = commandContextFromPrepared(prepared, { reporter: quietReporter() });
62
+ if (context.stage.strategy !== "remote-git") {
63
+ throw new Error(`Callable deployment target ${context.stage.application}/${stageName} must use the remote-git strategy`);
64
+ }
65
+ if (!context.stage.repo)
66
+ throw new Error(`Callable deployment target ${context.stage.application}/${stageName} requires a repository`);
67
+ return await callback(context);
68
+ });
61
69
  }
62
70
  return {
63
71
  async validateRevision({ revision, stage, target }) {
64
- const { stage: rampwayStage, transport } = await contextFor(target, stage);
65
- const checkPath = path.join(rampwayStage.deployTo, `.rampway-revision-check-${randomUUID()}`);
66
- const repository = /** @type {string} */ (rampwayStage.repo);
67
- await transport.mkdirp(rampwayStage.deployTo);
68
- try {
69
- try {
70
- await transport.run(`git init ${shellQuote(checkPath)}`);
71
- await transport.run(`git -C ${shellQuote(checkPath)} remote add origin ${shellQuote(repository)}`);
72
- await transport.run(`git -C ${shellQuote(checkPath)} fetch --no-tags origin ${shellQuote(`refs/heads/${target.releaseBranch}`)}`);
73
- }
74
- catch {
75
- throw new Error(`Could not fetch approved branch ${target.releaseBranch} from ${remoteGitRepoLabel(repository)} for revision validation`);
76
- }
72
+ return await withContext(target, stage, async ({ stage: rampwayStage, transport }) => {
73
+ const checkPath = path.join(rampwayStage.deployTo, `.rampway-revision-check-${randomUUID()}`);
74
+ const repository = /** @type {string} */ (rampwayStage.repo);
75
+ await transport.mkdirp(rampwayStage.deployTo);
77
76
  try {
78
- await transport.run(`git -C ${shellQuote(checkPath)} merge-base --is-ancestor ${shellQuote(revision)} FETCH_HEAD`);
79
- return true;
77
+ try {
78
+ await transport.run(`git init ${shellQuote(checkPath)}`);
79
+ await transport.run(`git -C ${shellQuote(checkPath)} remote add origin ${shellQuote(repository)}`);
80
+ await transport.run(`git -C ${shellQuote(checkPath)} fetch --no-tags origin ${shellQuote(`refs/heads/${target.releaseBranch}`)}`);
81
+ }
82
+ catch {
83
+ throw new Error(`Could not fetch approved branch ${target.releaseBranch} from ${remoteGitRepoLabel(repository)} for revision validation`);
84
+ }
85
+ try {
86
+ await transport.run(`git -C ${shellQuote(checkPath)} merge-base --is-ancestor ${shellQuote(revision)} FETCH_HEAD`);
87
+ return true;
88
+ }
89
+ catch {
90
+ return false;
91
+ }
80
92
  }
81
- catch {
82
- return false;
93
+ finally {
94
+ await transport.rm(checkPath);
83
95
  }
84
- }
85
- finally {
86
- await transport.rm(checkPath);
87
- }
96
+ });
88
97
  },
89
98
  async deploy({ revision, expectedActiveRevision, stage, target }) {
90
- const { stage: rampwayStage, transport } = await contextFor(target, stage);
91
- const before = await statusReader({ stage: rampwayStage, transport });
92
- try {
93
- return /** @type {Record<string, any>} */ (await deploy({
94
- branch: target.releaseBranch,
95
- force: false,
96
- expectedActiveRevision,
97
- reporter: quietReporter(),
98
- revision,
99
- stage: rampwayStage,
100
- transport
101
- }));
102
- }
103
- catch (error) {
104
- const failure = error instanceof Error ? error : new Error(String(error));
105
- /** @type {Record<string, any>} */
106
- let recovery;
99
+ return await withContext(target, stage, async ({ stage: rampwayStage, transport }) => {
100
+ const before = await statusReader({ stage: rampwayStage, transport });
107
101
  try {
108
- const after = await statusReader({ stage: rampwayStage, transport });
109
- const changed = after.currentRelease !== before.currentRelease;
110
- if (changed && after.activeRevision === revision && before.currentRelease) {
111
- const rollbackReport = await rollback({ stage: rampwayStage, to: before.currentRelease, transport });
112
- recovery = {
113
- activeRevision: before.activeRevision ?? null,
114
- currentRelease: before.currentRelease ?? null,
115
- restored: true,
116
- rollback: rollbackReport
117
- };
102
+ return /** @type {Record<string, any>} */ (await deploy({
103
+ branch: target.releaseBranch,
104
+ force: false,
105
+ expectedActiveRevision,
106
+ reporter: quietReporter(),
107
+ revision,
108
+ stage: rampwayStage,
109
+ transport
110
+ }));
111
+ }
112
+ catch (error) {
113
+ const failure = error instanceof Error ? error : new Error(String(error));
114
+ /** @type {Record<string, any>} */
115
+ let recovery;
116
+ try {
117
+ const after = await statusReader({ stage: rampwayStage, transport });
118
+ const changed = after.currentRelease !== before.currentRelease;
119
+ if (changed && after.activeRevision === revision && before.currentRelease) {
120
+ const rollbackReport = await rollback({ stage: rampwayStage, to: before.currentRelease, transport });
121
+ recovery = {
122
+ activeRevision: before.activeRevision ?? null,
123
+ currentRelease: before.currentRelease ?? null,
124
+ restored: true,
125
+ rollback: rollbackReport
126
+ };
127
+ }
128
+ else {
129
+ recovery = {
130
+ activeRevision: after.activeRevision ?? null,
131
+ currentRelease: after.currentRelease ?? null,
132
+ restored: !changed
133
+ };
134
+ }
118
135
  }
119
- else {
136
+ catch (recoveryError) {
120
137
  recovery = {
121
- activeRevision: after.activeRevision ?? null,
122
- currentRelease: after.currentRelease ?? null,
123
- restored: !changed
138
+ message: recoveryError instanceof Error ? recoveryError.message : String(recoveryError),
139
+ restored: false
124
140
  };
125
141
  }
142
+ /** @type {Error & {recovery?: Record<string, any>}} */ (failure).recovery = recovery;
143
+ throw failure;
126
144
  }
127
- catch (recoveryError) {
128
- recovery = {
129
- message: recoveryError instanceof Error ? recoveryError.message : String(recoveryError),
130
- restored: false
131
- };
132
- }
133
- /** @type {Error & {recovery?: Record<string, any>}} */ (failure).recovery = recovery;
134
- throw failure;
135
- }
145
+ });
136
146
  },
137
147
  async readStatus({ stage, target }) {
138
- const context = await contextFor(target, stage);
139
- return await statusReader(context);
148
+ return await withContext(target, stage, statusReader);
140
149
  }
141
150
  };
142
151
  }