redkite 0.1.7 → 0.1.8
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.
- package/README.md +313 -25
- package/dist/checks.d.ts.map +1 -1
- package/dist/checks.js +4 -0
- package/dist/checks.js.map +1 -1
- package/dist/cli/agent.d.ts +2 -0
- package/dist/cli/agent.d.ts.map +1 -1
- package/dist/cli/agent.js +23 -1
- package/dist/cli/agent.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +98 -30
- package/dist/cli/index.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +16 -1
- package/dist/config.js.map +1 -1
- package/dist/deploy.d.ts +4 -1
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js +77 -23
- package/dist/deploy.js.map +1 -1
- package/dist/dockerfile.js +6 -7
- package/dist/dockerfile.js.map +1 -1
- package/dist/environment.d.ts +5 -0
- package/dist/environment.d.ts.map +1 -0
- package/dist/environment.js +20 -0
- package/dist/environment.js.map +1 -0
- package/dist/host.d.ts +2 -0
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +6 -0
- package/dist/host.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/localHost.d.ts.map +1 -1
- package/dist/localHost.js +2 -0
- package/dist/localHost.js.map +1 -1
- package/dist/plugin.d.ts +15 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +21 -0
- package/dist/plugin.js.map +1 -0
- package/dist/plugins/bitwarden.d.ts +11 -0
- package/dist/plugins/bitwarden.d.ts.map +1 -0
- package/dist/plugins/bitwarden.js +40 -0
- package/dist/plugins/bitwarden.js.map +1 -0
- package/dist/plugins/digitalOcean.d.ts +19 -0
- package/dist/plugins/digitalOcean.d.ts.map +1 -0
- package/dist/plugins/digitalOcean.js +71 -0
- package/dist/plugins/digitalOcean.js.map +1 -0
- package/dist/plugins/index.d.ts +5 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +5 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/rds.d.ts +14 -0
- package/dist/plugins/rds.d.ts.map +1 -0
- package/dist/plugins/rds.js +86 -0
- package/dist/plugins/rds.js.map +1 -0
- package/dist/plugins/snapshot.d.ts +7 -0
- package/dist/plugins/snapshot.d.ts.map +1 -0
- package/dist/plugins/snapshot.js +29 -0
- package/dist/plugins/snapshot.js.map +1 -0
- package/dist/presets/nodeApp.d.ts +1 -2
- package/dist/presets/nodeApp.d.ts.map +1 -1
- package/dist/presets/nodeApp.js +0 -1
- package/dist/presets/nodeApp.js.map +1 -1
- package/dist/recover.d.ts +19 -0
- package/dist/recover.d.ts.map +1 -0
- package/dist/recover.js +58 -0
- package/dist/recover.js.map +1 -0
- package/dist/secrets/store.d.ts +5 -2
- package/dist/secrets/store.d.ts.map +1 -1
- package/dist/secrets/store.js +25 -14
- package/dist/secrets/store.js.map +1 -1
- package/dist/sshHost.d.ts +2 -0
- package/dist/sshHost.d.ts.map +1 -1
- package/dist/sshHost.js +29 -11
- package/dist/sshHost.js.map +1 -1
- package/dist/steps.d.ts +0 -7
- package/dist/steps.d.ts.map +1 -1
- package/dist/steps.js +6 -3
- package/dist/steps.js.map +1 -1
- package/dist/types.d.ts +4 -5
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/checks.ts +4 -0
- package/src/cli/agent.ts +28 -1
- package/src/cli/index.ts +118 -29
- package/src/config.ts +19 -1
- package/src/deploy.ts +101 -29
- package/src/dockerfile.ts +7 -11
- package/src/environment.ts +24 -0
- package/src/host.ts +11 -0
- package/src/index.ts +4 -1
- package/src/localHost.ts +3 -0
- package/src/plugin.ts +50 -0
- package/src/plugins/bitwarden.ts +57 -0
- package/src/plugins/digitalOcean.ts +111 -0
- package/src/plugins/index.ts +4 -0
- package/src/plugins/rds.ts +126 -0
- package/src/plugins/snapshot.ts +44 -0
- package/src/presets/nodeApp.ts +1 -3
- package/src/recover.ts +90 -0
- package/src/secrets/store.ts +39 -20
- package/src/sshHost.ts +35 -11
- package/src/steps.ts +7 -6
- package/src/types.ts +22 -12
- package/dist/secrets/bitwarden.d.ts +0 -3
- package/dist/secrets/bitwarden.d.ts.map +0 -1
- package/dist/secrets/bitwarden.js +0 -6
- package/dist/secrets/bitwarden.js.map +0 -1
- package/src/secrets/bitwarden.ts +0 -7
package/dist/cli/index.js
CHANGED
|
@@ -6,11 +6,12 @@ import { silent } from "../log.js";
|
|
|
6
6
|
import { renderNginx } from "../nginx.js";
|
|
7
7
|
import { addressOf, RUNS, SLOTS } from "../pipeline.js";
|
|
8
8
|
import { listRefs } from "../secrets/refs.js";
|
|
9
|
-
import {
|
|
9
|
+
import { pluginSteps, storeFor } from "../plugin.js";
|
|
10
|
+
import { down, rollback } from "../recover.js";
|
|
10
11
|
import { driftOf, plannedServices } from "../services/planned.js";
|
|
11
12
|
import { sshHost } from "../sshHost.js";
|
|
12
13
|
import { topologyFor } from "../topology.js";
|
|
13
|
-
import { requireAgent } from "./agent.js";
|
|
14
|
+
import { needsAgent, requireAgent } from "./agent.js";
|
|
14
15
|
import { loadConfig } from "./config.js";
|
|
15
16
|
import { createLog, describeFailure } from "./log.js";
|
|
16
17
|
// One command that reads the config and does everything under it: the agent,
|
|
@@ -20,6 +21,8 @@ const USAGE = `redkite <command> [environment]
|
|
|
20
21
|
plan [environment] Print the derived topology, the pipeline and the nginx
|
|
21
22
|
deploy [environment] Build, swap, health check, and revert on failure
|
|
22
23
|
verify [environment] Bring the services up, build, and run each app's checks
|
|
24
|
+
rollback [environment] Put back any app a run moved and did not finish
|
|
25
|
+
down [environment] Stop everything this environment named
|
|
23
26
|
|
|
24
27
|
--config <path> Defaults to redkite.config.ts at the root of the project
|
|
25
28
|
--local Build the images here and ship them to the host
|
|
@@ -39,6 +42,7 @@ function measured(host, log) {
|
|
|
39
42
|
cache: host.cache,
|
|
40
43
|
pipe: host.pipe.bind(host),
|
|
41
44
|
stop: host.stop.bind(host),
|
|
45
|
+
final: host.final.bind(host),
|
|
42
46
|
sh: async (command, onLine) => {
|
|
43
47
|
const started = Date.now();
|
|
44
48
|
const result = await host.sh(command, onLine);
|
|
@@ -114,6 +118,9 @@ async function dispatch(argv) {
|
|
|
114
118
|
const configPath = flag(argv, "--config");
|
|
115
119
|
if (command === "plan")
|
|
116
120
|
return await plan(environment, configPath);
|
|
121
|
+
if (command === "rollback" || command === "down") {
|
|
122
|
+
return await recover(command, environment, configPath);
|
|
123
|
+
}
|
|
117
124
|
if (command === "deploy" || command === "verify") {
|
|
118
125
|
return await run(command, environment, configPath, {
|
|
119
126
|
verbose: argv.includes("--verbose"),
|
|
@@ -124,6 +131,38 @@ async function dispatch(argv) {
|
|
|
124
131
|
process.stdout.write(USAGE);
|
|
125
132
|
process.exitCode = command ? 1 : 0;
|
|
126
133
|
}
|
|
134
|
+
// Neither runs a pipeline. Both exist for the run that was killed rather than
|
|
135
|
+
// asked to stop, so they read what the host is in rather than what a deploy
|
|
136
|
+
// remembered, and both are safe where there is nothing to do
|
|
137
|
+
async function recover(command, environment, configPath) {
|
|
138
|
+
const config = await loadConfig(configPath);
|
|
139
|
+
const topology = topologyFor(config, environment);
|
|
140
|
+
const deployHost = environmentOf(config, environment)?.host;
|
|
141
|
+
const say = (message = "") => process.stdout.write(`${message}\n`);
|
|
142
|
+
if (needsAgent(config, environment))
|
|
143
|
+
requireAgent(say);
|
|
144
|
+
const host = await hostFor(deployHost, silent);
|
|
145
|
+
try {
|
|
146
|
+
if (command === "down") {
|
|
147
|
+
const { stopped } = await down({ config, environment, host, log: asLog(say) });
|
|
148
|
+
say(stopped.length === 0 ? "Nothing was running" : `Stopped ${stopped.join(", ")}`);
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
const { restored } = await rollback({ config, environment, host, log: asLog(say) });
|
|
152
|
+
if (restored.length === 0) {
|
|
153
|
+
return say(`Nothing to put back in ${topology.environment}`);
|
|
154
|
+
}
|
|
155
|
+
say(`Put back ${restored.join(", ")}`);
|
|
156
|
+
}
|
|
157
|
+
finally {
|
|
158
|
+
await host.close?.();
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
// These print rather than draw: a recovery runs after the view has gone, and
|
|
162
|
+
// often in a job that is already being torn down
|
|
163
|
+
function asLog(say) {
|
|
164
|
+
return Object.assign(say, { warn: say, fail: say, done: say, step: () => silent.step("") });
|
|
165
|
+
}
|
|
127
166
|
async function plan(environment, configPath) {
|
|
128
167
|
const config = await loadConfig(configPath);
|
|
129
168
|
const topology = topologyFor(config, environment);
|
|
@@ -159,6 +198,7 @@ async function plan(environment, configPath) {
|
|
|
159
198
|
// An environment that publishes nothing cannot serve, so verify is the only
|
|
160
199
|
// run it supports. Nothing declares that: the missing port is what says it
|
|
161
200
|
const serves = Boolean(topology.publicPort);
|
|
201
|
+
sayPlugins(config, say);
|
|
162
202
|
sayPipeline(config, serves, say);
|
|
163
203
|
await sayDrift(config, topology, serves ? "deploy" : "verify", say);
|
|
164
204
|
if (!serves)
|
|
@@ -198,11 +238,34 @@ const DRIFT = {
|
|
|
198
238
|
changed: "created from an earlier version of this file",
|
|
199
239
|
unrecognised: "not created by redkite, will be recreated",
|
|
200
240
|
};
|
|
241
|
+
// Everything this deployment opted into. A vault that is missing from here is
|
|
242
|
+
// the reason its refs will not resolve, and that is worth seeing before a run
|
|
243
|
+
function sayPlugins(config, say) {
|
|
244
|
+
const plugins = config.plugins ?? [];
|
|
245
|
+
if (plugins.length === 0)
|
|
246
|
+
return;
|
|
247
|
+
say("\nplugins");
|
|
248
|
+
for (const plugin of plugins) {
|
|
249
|
+
const stores = Object.keys(plugin.stores ?? {});
|
|
250
|
+
const resolves = stores.length > 0 ? ` resolves ${stores.join(", ")}` : "";
|
|
251
|
+
const count = plugin.steps?.length ?? 0;
|
|
252
|
+
say(` ${plugin.name}${gap(plugin.name.length)}${count} ${count === 1 ? "step" : "steps"}${resolves}`);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
const COLUMN = 26;
|
|
256
|
+
function gap(width) {
|
|
257
|
+
return " ".repeat(Math.max(2, COLUMN - width));
|
|
258
|
+
}
|
|
201
259
|
// What each run will actually do, in the order it will do it. A step is
|
|
202
260
|
// addressed rather than called, so this is the only place a sequence is visible
|
|
203
261
|
function sayPipeline(config, serves, say) {
|
|
204
|
-
|
|
262
|
+
// What the run will walk, which is the plugins' steps and then the
|
|
263
|
+
// deployment's own. A plan that showed only one of them would be a plan of a
|
|
264
|
+
// different deploy
|
|
265
|
+
const steps = [...pluginSteps(config.plugins), ...(config.steps ?? [])];
|
|
205
266
|
const added = new Set(steps.map((step) => step.point));
|
|
267
|
+
// Says which plugin a step came from, because a point on its own does not
|
|
268
|
+
const from = new Map((config.plugins ?? []).flatMap((plugin) => (plugin.steps ?? []).map((step) => [step.point, plugin.name])));
|
|
206
269
|
const at = (phase, slot) => steps.filter((step) => {
|
|
207
270
|
const address = addressOf(step.point);
|
|
208
271
|
return address.phase === phase && address.slot === slot && step.point !== phase;
|
|
@@ -226,8 +289,14 @@ function sayPipeline(config, serves, say) {
|
|
|
226
289
|
const what = phase === "verify" ? ` ${checked.join(", ")}` : "";
|
|
227
290
|
say(` ${phase.padEnd(26)}${who}${what}`);
|
|
228
291
|
}
|
|
229
|
-
for (const step of at(phase, slot))
|
|
230
|
-
|
|
292
|
+
for (const step of at(phase, slot)) {
|
|
293
|
+
const owner = from.get(step.point);
|
|
294
|
+
if (!owner)
|
|
295
|
+
say(` ${step.point}`);
|
|
296
|
+
// A point long enough to fill the column still gets its two spaces
|
|
297
|
+
else
|
|
298
|
+
say(` ${step.point}${gap(step.point.length)}${owner}`);
|
|
299
|
+
}
|
|
231
300
|
}
|
|
232
301
|
}
|
|
233
302
|
}
|
|
@@ -304,7 +373,7 @@ async function hostFor(host, log, signal) {
|
|
|
304
373
|
return await localHost({ signal });
|
|
305
374
|
const task = log.step(`Opening a connection to ${host.bastion}`);
|
|
306
375
|
try {
|
|
307
|
-
const opened = await sshHost(host.bastion, { signal });
|
|
376
|
+
const opened = await sshHost(host.bastion, { signal, hostKeys: host.hostKeys });
|
|
308
377
|
task.done();
|
|
309
378
|
return opened;
|
|
310
379
|
}
|
|
@@ -315,6 +384,9 @@ async function hostFor(host, log, signal) {
|
|
|
315
384
|
}
|
|
316
385
|
// Only the stores the config actually names. A deployment that keeps its
|
|
317
386
|
// environment somewhere else, or nowhere, needs no credentials to deploy
|
|
387
|
+
// One store per provider a ref names, opened from the plugins the deployment
|
|
388
|
+
// registered. Nothing is opened for a deployment that names no refs, and a ref
|
|
389
|
+
// no plugin answers for is refused rather than reaching for a vault by name
|
|
318
390
|
async function openStores(config, log) {
|
|
319
391
|
// Services name refs too, and a deployment whose only secret is a database
|
|
320
392
|
// password opened no store at all until this counted them
|
|
@@ -325,30 +397,24 @@ async function openStores(config, log) {
|
|
|
325
397
|
]),
|
|
326
398
|
...config.services.flatMap((service) => listRefs(service.secrets)),
|
|
327
399
|
];
|
|
328
|
-
const
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
throw error;
|
|
400
|
+
const opened = {};
|
|
401
|
+
for (const provider of new Set(refs.map((ref) => ref.provider))) {
|
|
402
|
+
const open = storeFor(config.plugins, provider);
|
|
403
|
+
if (!open) {
|
|
404
|
+
throw new Error(`Nothing resolves ${provider} secrets. Add the plugin that does to ` +
|
|
405
|
+
"the plugins this deployment registers");
|
|
406
|
+
}
|
|
407
|
+
const task = log.step(`Reading the ${provider} vault`);
|
|
408
|
+
try {
|
|
409
|
+
opened[provider] = await open({ detail: task.detail });
|
|
410
|
+
task.done();
|
|
411
|
+
}
|
|
412
|
+
catch (error) {
|
|
413
|
+
task.fail(`Could not read the ${provider} vault`);
|
|
414
|
+
throw error;
|
|
415
|
+
}
|
|
345
416
|
}
|
|
346
|
-
|
|
347
|
-
function required(name) {
|
|
348
|
-
const value = process.env[name];
|
|
349
|
-
if (value)
|
|
350
|
-
return value;
|
|
351
|
-
throw new Error(`${name} is not set, and this deployment reads its environment from Bitwarden`);
|
|
417
|
+
return opened;
|
|
352
418
|
}
|
|
353
419
|
async function run(kind, environment, configPath, options) {
|
|
354
420
|
const config = await loadConfig(configPath);
|
|
@@ -358,7 +424,9 @@ async function run(kind, environment, configPath, options) {
|
|
|
358
424
|
// The host clones the repositories over this, so it has to exist before the
|
|
359
425
|
// connection that forwards it is opened. Before the view too: ssh-add asks
|
|
360
426
|
// for a passphrase on the terminal, and by then the view owns it
|
|
361
|
-
|
|
427
|
+
if (needsAgent(config, environment)) {
|
|
428
|
+
requireAgent((message) => process.stderr.write(`${message}\n`));
|
|
429
|
+
}
|
|
362
430
|
// Whatever is in flight is killed, the pipeline unwinds through its own
|
|
363
431
|
// failure path, and the finally below removes the scratch directory
|
|
364
432
|
const stopping = new AbortController();
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAK1D,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,2BAE7D;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,CAAC,SAAS,UAAU,GAAG;IAAE,YAAY,CAAC,EAAE,KAAK,CAAA;CAAE,EACpF,MAAM,EAAE,CAAC,GACR,CAAC,CAUH;AAID,wBAAgB,iBAAiB,CAAC,KAAK,CAAC,CAAC,SAAS,WAAW,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAEhF"}
|
package/dist/config.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { assertSteps } from "./pipeline.js";
|
|
2
|
+
import { pluginSteps } from "./plugin.js";
|
|
2
3
|
// The one selected, from the one place worth looking. A deployment that carries
|
|
3
4
|
// its own overrides every file, which is what makes it an override rather than
|
|
4
5
|
// a default nobody can displace
|
|
@@ -14,7 +15,10 @@ export function defineDeployment(config) {
|
|
|
14
15
|
assertOneSource(config);
|
|
15
16
|
assertRoutesResolvable(config);
|
|
16
17
|
assertDirsRelative(config);
|
|
17
|
-
|
|
18
|
+
assertUniquePlugins(config);
|
|
19
|
+
// Together, because a plugin's step and the deployment's own share the same
|
|
20
|
+
// points and two of them at one point is the collision worth catching
|
|
21
|
+
assertSteps([...pluginSteps(config.plugins), ...(config.steps ?? [])]);
|
|
18
22
|
return config;
|
|
19
23
|
}
|
|
20
24
|
// Identity, for the environment a redkite.<name>.config.ts holds. It pins the
|
|
@@ -22,6 +26,17 @@ export function defineDeployment(config) {
|
|
|
22
26
|
export function defineEnvironment(environment) {
|
|
23
27
|
return environment;
|
|
24
28
|
}
|
|
29
|
+
// Registering one twice is either a mistake or two configurations of the same
|
|
30
|
+
// thing, and neither is something to pick a winner for
|
|
31
|
+
function assertUniquePlugins(config) {
|
|
32
|
+
const seen = new Set();
|
|
33
|
+
for (const plugin of config.plugins ?? []) {
|
|
34
|
+
if (seen.has(plugin.name)) {
|
|
35
|
+
throw new Error(`The plugin ${plugin.name} is registered twice`);
|
|
36
|
+
}
|
|
37
|
+
seen.add(plugin.name);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
25
40
|
// Cloned or already here, and the two are built differently enough that
|
|
26
41
|
// guessing between them is worse than being told
|
|
27
42
|
function assertOneSource(config) {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/deploy.d.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { Docker } from "./docker.js";
|
|
1
2
|
import { type HealthDeps } from "./health.js";
|
|
2
|
-
import type
|
|
3
|
+
import { type Host } from "./host.js";
|
|
3
4
|
import { type Log } from "./log.js";
|
|
4
5
|
import { type Finished } from "./pipeline.js";
|
|
5
6
|
import { type SecretStores } from "./secrets/refs.js";
|
|
7
|
+
import { type AppTopology, type Topology } from "./topology.js";
|
|
6
8
|
import type { Deployment } from "./types.js";
|
|
7
9
|
export type DeployOptions = {
|
|
8
10
|
config: Deployment;
|
|
@@ -16,4 +18,5 @@ export type DeployOptions = {
|
|
|
16
18
|
};
|
|
17
19
|
export declare function deploy(options: DeployOptions): Promise<Finished>;
|
|
18
20
|
export declare function verify(options: DeployOptions): Promise<Finished>;
|
|
21
|
+
export declare function revert(docker: Docker, topology: Topology, app: AppTopology): Promise<boolean>;
|
|
19
22
|
//# sourceMappingURL=deploy.d.ts.map
|
package/dist/deploy.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAa,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjD,OAAO,EAAU,KAAK,GAAG,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAQL,KAAK,QAAQ,EAMd,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGxE,OAAO,EAAe,KAAK,WAAW,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC7E,OAAO,KAAK,EAAW,UAAU,EAAE,MAAM,YAAY,CAAC;AAWtD,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IAEpB,IAAI,EAAE,IAAI,CAAC;IAEX,OAAO,EAAE,YAAY,CAAC;IAGtB,MAAM,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACnC,GAAG,CAAC,EAAE,GAAG,CAAC;IAEV,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,CAAC;AAEF,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAEtE;AAID,wBAAsB,MAAM,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC,CAEtE;AAwWD,wBAAsB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,WAAW,oBAkBhF"}
|
package/dist/deploy.js
CHANGED
|
@@ -2,10 +2,13 @@ import { build } from "./build.js";
|
|
|
2
2
|
import { assertCheckable, runChecks } from "./checks.js";
|
|
3
3
|
import { environmentOf } from "./config.js";
|
|
4
4
|
import { Docker } from "./docker.js";
|
|
5
|
+
import { envFileFor } from "./environment.js";
|
|
5
6
|
import { healthcheck } from "./health.js";
|
|
7
|
+
import { finalHost } from "./host.js";
|
|
6
8
|
import { localHost } from "./localHost.js";
|
|
7
9
|
import { silent } from "./log.js";
|
|
8
10
|
import { defineStep, merge, runPipeline, } from "./pipeline.js";
|
|
11
|
+
import { pluginSteps } from "./plugin.js";
|
|
9
12
|
import { readEnv, readRef } from "./secrets/refs.js";
|
|
10
13
|
import { ensureService } from "./services/ensure.js";
|
|
11
14
|
import { plannedServices } from "./services/planned.js";
|
|
@@ -30,8 +33,10 @@ async function start(run, options) {
|
|
|
30
33
|
log,
|
|
31
34
|
run,
|
|
32
35
|
};
|
|
33
|
-
|
|
34
|
-
|
|
36
|
+
// A plugin's steps lead, so a snapshot listed as a plugin runs above the
|
|
37
|
+
// migration the deployment writes after it
|
|
38
|
+
const added = [...pluginSteps(options.config.plugins), ...(options.config.steps ?? [])];
|
|
39
|
+
return await runPipeline(run, merge(supplied(options), added), setting, options.signal);
|
|
35
40
|
}
|
|
36
41
|
// Every step redkite supplies, in the order the phases name. A run walks the
|
|
37
42
|
// phases it has, so the ones it does not are never ordered in
|
|
@@ -93,24 +98,46 @@ async function release(input, context, health) {
|
|
|
93
98
|
// Keyed by name rather than by index: appOf resolves the topology, and two
|
|
94
99
|
// lists walked in step is a bug waiting for someone to reorder one
|
|
95
100
|
const environments = new Map(context.config.apps.map((app) => [app.name, app.environment ?? {}]));
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
101
|
+
// Resolved now and handed over when the container is made. Nothing from the
|
|
102
|
+
// vault is in the image, so this is the only way the running process sees it
|
|
103
|
+
const files = new Map(await Promise.all(context.config.apps.map(async (app) => [app.name, await envFileFor(app, context)])));
|
|
104
|
+
// What has actually been moved, rather than what was going to be. A stop
|
|
105
|
+
// lands between two docker commands, and only this says which side of it
|
|
106
|
+
const moved = [];
|
|
107
|
+
try {
|
|
108
|
+
task.detail("retiring the running containers");
|
|
109
|
+
await Promise.all(apps.map(async (app) => {
|
|
110
|
+
await retire(docker, topology, app);
|
|
111
|
+
moved.push(app);
|
|
112
|
+
}));
|
|
113
|
+
task.detail("creating the new ones");
|
|
114
|
+
await Promise.all(apps.map((app) => create(docker, topology, app, environments.get(app.name), files.get(app.name))));
|
|
115
|
+
task.detail("starting them");
|
|
116
|
+
await Promise.all(apps.map((app) => docker.container.start(app.container)));
|
|
117
|
+
// Inside, because the swap is not over until this says so. A stop lands
|
|
118
|
+
// here more often than anywhere else: it is the longest part, and by now
|
|
119
|
+
// every address has already moved
|
|
120
|
+
if (!(await checkAll(context, health))) {
|
|
121
|
+
context.log.fail("Health checks failed, reverting");
|
|
122
|
+
await Promise.all(apps.map((app) => revert(docker, topology, app)));
|
|
123
|
+
return {
|
|
124
|
+
...input,
|
|
125
|
+
ok: false,
|
|
126
|
+
released: [],
|
|
127
|
+
reverted: apps.map((app) => app.container),
|
|
128
|
+
checked: [],
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
// Whatever ended this, the addresses have moved and something has to put
|
|
134
|
+
// them back. A stop is the usual one, so the revert runs on a host that
|
|
135
|
+
// has been told to stop: it is the abort that made this necessary
|
|
136
|
+
if (moved.length > 0) {
|
|
137
|
+
context.log.fail(`Putting ${moved.length} back where they were`);
|
|
138
|
+
await putBack(context, moved);
|
|
139
|
+
}
|
|
140
|
+
throw error;
|
|
114
141
|
}
|
|
115
142
|
return {
|
|
116
143
|
...input,
|
|
@@ -120,6 +147,21 @@ async function release(input, context, health) {
|
|
|
120
147
|
checked: [],
|
|
121
148
|
};
|
|
122
149
|
}
|
|
150
|
+
// Through a host with the stop lifted, because the commands that undo a swap
|
|
151
|
+
// cannot be refused by the same signal that interrupted it. One app failing to
|
|
152
|
+
// go back must not stop the others, so each is settled on its own
|
|
153
|
+
async function putBack(context, moved) {
|
|
154
|
+
const docker = new Docker(finalHost(context.host));
|
|
155
|
+
const put = moved.map(async (app) => {
|
|
156
|
+
try {
|
|
157
|
+
await revert(docker, context.topology, app);
|
|
158
|
+
}
|
|
159
|
+
catch (error) {
|
|
160
|
+
context.log.fail(`${app.container} could not be put back: ${String(error)}`);
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
await Promise.all(put);
|
|
164
|
+
}
|
|
123
165
|
// A build leaves its image on the host rather than sending one, so without this
|
|
124
166
|
// every run adds a runtime image and a builder to a disk nobody is watching
|
|
125
167
|
async function finish(input, context) {
|
|
@@ -214,7 +256,7 @@ async function retire(docker, topology, app) {
|
|
|
214
256
|
await docker.network.reconnect(topology.network, app.container, app.retiredAddress);
|
|
215
257
|
await docker.container.rename(app.container, app.retired);
|
|
216
258
|
}
|
|
217
|
-
async function create(docker, topology, app, environment = {}) {
|
|
259
|
+
async function create(docker, topology, app, environment = {}, envFile) {
|
|
218
260
|
const builder = docker.container
|
|
219
261
|
.builder()
|
|
220
262
|
.name(app.container)
|
|
@@ -228,19 +270,31 @@ async function create(docker, topology, app, environment = {}) {
|
|
|
228
270
|
continue;
|
|
229
271
|
builder.extraHost(host, ip);
|
|
230
272
|
}
|
|
273
|
+
if (envFile)
|
|
274
|
+
builder.envFile(envFile);
|
|
231
275
|
for (const volume of app.volumes)
|
|
232
276
|
builder.volume(volume.volume, volume.mountPath);
|
|
233
277
|
for (const [name, value] of Object.entries(environment))
|
|
234
278
|
builder.env(name, value);
|
|
235
279
|
await builder.create();
|
|
236
280
|
}
|
|
237
|
-
// Put the retired container back on the live address and its original name
|
|
238
|
-
|
|
281
|
+
// Put the retired container back on the live address and its original name.
|
|
282
|
+
// Answers with whether there was one: a first deploy has nothing behind it, and
|
|
283
|
+
// the container that just failed is simply left where it was renamed to
|
|
284
|
+
export async function revert(docker, topology, app) {
|
|
239
285
|
await docker.container.stop(app.container);
|
|
286
|
+
// The slot may still hold what an earlier interrupted run put there, and a
|
|
287
|
+
// rename refuses rather than clobbers. Retiring clears its own slot the same
|
|
288
|
+
// way, and a revert that skipped this would leave the new container live
|
|
289
|
+
await docker.container.stop(app.failed);
|
|
290
|
+
await docker.container.remove(app.failed);
|
|
240
291
|
await docker.container.rename(app.container, app.failed);
|
|
292
|
+
if (!(await docker.container.exists(app.retired)))
|
|
293
|
+
return false;
|
|
241
294
|
await docker.network.reconnect(topology.network, app.retired, app.currentAddress);
|
|
242
295
|
await docker.container.rename(app.retired, app.container);
|
|
243
296
|
await docker.container.start(app.container);
|
|
297
|
+
return true;
|
|
244
298
|
}
|
|
245
299
|
async function cleanup(docker, app) {
|
|
246
300
|
const removed = [];
|
package/dist/deploy.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
|
package/dist/dockerfile.js
CHANGED
|
@@ -44,17 +44,16 @@ function builderStage(spec, context) {
|
|
|
44
44
|
// Only now, so the steps below read the app's own manifest and write beside it
|
|
45
45
|
if (context.dir)
|
|
46
46
|
lines.push(`WORKDIR ${workdir}`);
|
|
47
|
-
lines.push(`
|
|
47
|
+
lines.push(`ENV SENTRY_RELEASE=${context.release}`);
|
|
48
|
+
// Mounted for the length of each step rather than copied into the tree. A
|
|
49
|
+
// file that is copied is in that layer for good, and no later instruction
|
|
50
|
+
// can take it back out: rm leaves it readable in the layer underneath
|
|
51
|
+
const env = `--mount=type=secret,id=${context.envSecret},target=${workdir}/.env `;
|
|
48
52
|
// Unquoted: the shell form hands everything after RUN to sh -c, so a step is
|
|
49
53
|
// written exactly as it would be typed. Quoting it made the whole command one
|
|
50
54
|
// word, and the shell went looking for a program by that name
|
|
51
55
|
for (const step of spec.steps) {
|
|
52
|
-
lines.push(`RUN ${mounts}${step}`);
|
|
53
|
-
}
|
|
54
|
-
if (spec.sourcemaps) {
|
|
55
|
-
// The built .env ships inside the image, and an upload token is build-time
|
|
56
|
-
const token = spec.sourcemaps.stripFromImage;
|
|
57
|
-
lines.push(`RUN sed -i '/^${token}=/d' ${rootedAt(spec.output, context.dir)}/.env`);
|
|
56
|
+
lines.push(`RUN ${env}${mounts}${step}`);
|
|
58
57
|
}
|
|
59
58
|
return lines;
|
|
60
59
|
}
|