gcb-host 0.7.1 → 0.8.1
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/CHANGELOG.md +22 -1
- package/bin/gcb.js +3 -3
- package/lib/audit.d.ts +4 -4
- package/lib/audit.d.ts.map +1 -1
- package/lib/audit.js +15 -14
- package/lib/audit.js.map +1 -1
- package/lib/broker.d.ts +12 -13
- package/lib/broker.d.ts.map +1 -1
- package/lib/broker.js +77 -53
- package/lib/broker.js.map +1 -1
- package/lib/commands/authorize.d.ts +43 -13
- package/lib/commands/authorize.d.ts.map +1 -1
- package/lib/commands/authorize.js +146 -53
- package/lib/commands/authorize.js.map +1 -1
- package/lib/commands/compose.d.ts +8 -10
- package/lib/commands/compose.d.ts.map +1 -1
- package/lib/commands/compose.js +33 -44
- package/lib/commands/compose.js.map +1 -1
- package/lib/commands/config.d.ts.map +1 -1
- package/lib/commands/config.js +59 -41
- package/lib/commands/config.js.map +1 -1
- package/lib/commands/deployment.d.ts +11 -11
- package/lib/commands/deployment.d.ts.map +1 -1
- package/lib/commands/deployment.js +19 -18
- package/lib/commands/deployment.js.map +1 -1
- package/lib/commands/diagnose.d.ts.map +1 -1
- package/lib/commands/diagnose.js +51 -33
- package/lib/commands/diagnose.js.map +1 -1
- package/lib/commands/doctor.d.ts +5 -5
- package/lib/commands/doctor.d.ts.map +1 -1
- package/lib/commands/doctor.js +53 -32
- package/lib/commands/doctor.js.map +1 -1
- package/lib/commands/host.d.ts +7 -7
- package/lib/commands/host.d.ts.map +1 -1
- package/lib/commands/host.js +144 -93
- package/lib/commands/host.js.map +1 -1
- package/lib/commands/init.d.ts +33 -33
- package/lib/commands/init.d.ts.map +1 -1
- package/lib/commands/init.js +93 -75
- package/lib/commands/init.js.map +1 -1
- package/lib/commands/stage.d.ts +6 -6
- package/lib/commands/stage.d.ts.map +1 -1
- package/lib/commands/stage.js +21 -15
- package/lib/commands/stage.js.map +1 -1
- package/lib/config.d.ts +29 -28
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +100 -84
- package/lib/config.js.map +1 -1
- package/lib/daemon.d.ts +9 -9
- package/lib/daemon.d.ts.map +1 -1
- package/lib/daemon.js +21 -18
- package/lib/daemon.js.map +1 -1
- package/lib/device-flow.d.ts +23 -22
- package/lib/device-flow.d.ts.map +1 -1
- package/lib/device-flow.js +33 -28
- package/lib/device-flow.js.map +1 -1
- package/lib/gh.d.ts +2 -2
- package/lib/gh.d.ts.map +1 -1
- package/lib/gh.js +74 -46
- package/lib/gh.js.map +1 -1
- package/lib/http.d.ts.map +1 -1
- package/lib/http.js +35 -18
- package/lib/http.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/policy.d.ts +25 -25
- package/lib/policy.d.ts.map +1 -1
- package/lib/policy.js +57 -36
- package/lib/policy.js.map +1 -1
- package/lib/providers/github-app.d.ts +12 -12
- package/lib/providers/github-app.d.ts.map +1 -1
- package/lib/providers/github-app.js +194 -125
- package/lib/providers/github-app.js.map +1 -1
- package/lib/providers/index.d.ts +8 -9
- package/lib/providers/index.d.ts.map +1 -1
- package/lib/providers/index.js +5 -5
- package/lib/providers/index.js.map +1 -1
- package/lib/providers/static.d.ts +3 -3
- package/lib/providers/static.d.ts.map +1 -1
- package/lib/providers/static.js +14 -12
- package/lib/providers/static.js.map +1 -1
- package/lib/proxy.d.ts +10 -10
- package/lib/proxy.d.ts.map +1 -1
- package/lib/proxy.js +18 -16
- package/lib/proxy.js.map +1 -1
- package/lib/public-repo.d.ts +10 -10
- package/lib/public-repo.d.ts.map +1 -1
- package/lib/public-repo.js +17 -14
- package/lib/public-repo.js.map +1 -1
- package/lib/reload.d.ts +4 -4
- package/lib/reload.d.ts.map +1 -1
- package/lib/reload.js +24 -14
- package/lib/reload.js.map +1 -1
- package/package.json +10 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/commands/compose.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,EAAE,MAAM,SAAS,
|
|
1
|
+
{"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/commands/compose.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AA6BA,eAAO,MAAM,YAAY,6nBAUxB,CAAA;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAuEzD"}
|
package/lib/commands/config.js
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `config` — inspect, edit and validate the broker configuration.
|
|
3
|
-
*/
|
|
1
|
+
/** `config` — inspect, edit and validate the broker configuration. */
|
|
4
2
|
import { spawnSync } from 'node:child_process';
|
|
5
|
-
import { chmodSync, chownSync, existsSync, linkSync, readFileSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from 'node:fs';
|
|
6
3
|
import { randomUUID } from 'node:crypto';
|
|
4
|
+
import { chmodSync, chownSync, existsSync, linkSync, readFileSync, realpathSync, renameSync, rmSync, statSync, writeFileSync, } from 'node:fs';
|
|
7
5
|
import { dirname } from 'node:path';
|
|
6
|
+
import { fail, parseArgs, say } from 'gcb-core';
|
|
8
7
|
import { parseDocument, isMap, isScalar, isSeq } from 'yaml';
|
|
9
|
-
import { inferMode, loadConfig, loadConfigText, readConfigText, resolveConfigPath } from '../config.js';
|
|
8
|
+
import { inferMode, loadConfig, loadConfigText, readConfigText, resolveConfigPath, } from '../config.js';
|
|
10
9
|
import { parseAllowEntry } from '../policy.js';
|
|
11
|
-
import { fail, parseArgs, say } from 'gcb-core';
|
|
12
10
|
export const CONFIG_USAGE = `Usage: gcb config check|edit|allow add|remove [options]
|
|
13
11
|
|
|
14
12
|
Validate or edit the broker configuration, or change one allowlist entry.
|
|
@@ -27,14 +25,17 @@ export function runConfig(argv) {
|
|
|
27
25
|
return 0;
|
|
28
26
|
}
|
|
29
27
|
const configValues = args.values('config');
|
|
30
|
-
if (args.has('config') || configValues.length > 1)
|
|
28
|
+
if (args.has('config') || configValues.length > 1) {
|
|
31
29
|
fail('--config may only be given once and needs a value');
|
|
30
|
+
}
|
|
32
31
|
const configArg = configValues[0];
|
|
33
|
-
if (configArg === '')
|
|
32
|
+
if (configArg === '') {
|
|
34
33
|
fail('--config needs a value');
|
|
34
|
+
}
|
|
35
35
|
for (const name of args.names) {
|
|
36
|
-
if (name !== 'config' && name !== 'help' && name !== 'h')
|
|
36
|
+
if (name !== 'config' && name !== 'help' && name !== 'h') {
|
|
37
37
|
fail(`unknown option --${name}`);
|
|
38
|
+
}
|
|
38
39
|
}
|
|
39
40
|
const command = args.positionals[0];
|
|
40
41
|
if (command !== 'check' && command !== 'edit' && command !== 'allow') {
|
|
@@ -45,19 +46,25 @@ export function runConfig(argv) {
|
|
|
45
46
|
}
|
|
46
47
|
const path = resolveConfigPath(configArg);
|
|
47
48
|
if (command === 'edit') {
|
|
48
|
-
if (!existsSync(path))
|
|
49
|
+
if (!existsSync(path)) {
|
|
49
50
|
fail(`cannot edit missing config ${path}`);
|
|
51
|
+
}
|
|
50
52
|
const editor = process.env['VISUAL'] ?? process.env['EDITOR'];
|
|
51
|
-
if (editor === undefined || editor.trim() === '')
|
|
53
|
+
if (editor === undefined || editor.trim() === '') {
|
|
52
54
|
fail('config edit needs $VISUAL or $EDITOR');
|
|
55
|
+
}
|
|
53
56
|
// Edit in place: this path needs write access to the file; some editors also need its directory.
|
|
54
57
|
// `$VISUAL`/`$EDITOR` is a shell command in git's own semantics; `$@` keeps the path intact.
|
|
55
|
-
const result = spawnSync('/bin/sh', ['-c', `${editor} "$@"`, editor, path], {
|
|
58
|
+
const result = spawnSync('/bin/sh', ['-c', `${editor} "$@"`, editor, path], {
|
|
59
|
+
stdio: 'inherit',
|
|
60
|
+
});
|
|
56
61
|
if (result.error !== undefined) {
|
|
57
62
|
fail(`cannot run editor ${JSON.stringify(editor)}: ${result.error.message}`);
|
|
58
63
|
}
|
|
59
64
|
if (result.status !== 0) {
|
|
60
|
-
const how = result.status === null
|
|
65
|
+
const how = result.status === null
|
|
66
|
+
? `signal ${String(result.signal)}`
|
|
67
|
+
: `status ${String(result.status)}`;
|
|
61
68
|
fail(`editor exited with ${how}`);
|
|
62
69
|
}
|
|
63
70
|
}
|
|
@@ -86,7 +93,7 @@ const LOCK_WAIT_MS = 5_000;
|
|
|
86
93
|
/**
|
|
87
94
|
* Sleep without yielding the event loop; this command is synchronous by design.
|
|
88
95
|
*
|
|
89
|
-
* @param ms -
|
|
96
|
+
* @param ms - Milliseconds to wait.
|
|
90
97
|
*/
|
|
91
98
|
function sleepSync(ms) {
|
|
92
99
|
Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, ms);
|
|
@@ -94,8 +101,8 @@ function sleepSync(ms) {
|
|
|
94
101
|
/**
|
|
95
102
|
* Whether a pid is still alive.
|
|
96
103
|
*
|
|
97
|
-
* @param pid -
|
|
98
|
-
* @returns
|
|
104
|
+
* @param pid - The pid to probe.
|
|
105
|
+
* @returns True when the process exists.
|
|
99
106
|
*/
|
|
100
107
|
function pidAlive(pid) {
|
|
101
108
|
try {
|
|
@@ -110,10 +117,10 @@ function pidAlive(pid) {
|
|
|
110
117
|
/**
|
|
111
118
|
* Describe a lock-creation failure without exposing an internal temp name.
|
|
112
119
|
*
|
|
113
|
-
* @param path -
|
|
114
|
-
* @param directory -
|
|
115
|
-
* @param error -
|
|
116
|
-
* @returns
|
|
120
|
+
* @param path - The config path the user named.
|
|
121
|
+
* @param directory - Its directory.
|
|
122
|
+
* @param error - The underlying filesystem error.
|
|
123
|
+
* @returns The error to throw.
|
|
117
124
|
*/
|
|
118
125
|
function lockError(path, directory, error) {
|
|
119
126
|
const code = error.code ?? 'error';
|
|
@@ -125,8 +132,8 @@ function lockError(path, directory, error) {
|
|
|
125
132
|
/**
|
|
126
133
|
* Resolve the real file a config path names, keeping a missing-file message useful.
|
|
127
134
|
*
|
|
128
|
-
* @param path -
|
|
129
|
-
* @returns
|
|
135
|
+
* @param path - The configured path, which may be a symlink.
|
|
136
|
+
* @returns The target path.
|
|
130
137
|
*/
|
|
131
138
|
function configTarget(path) {
|
|
132
139
|
try {
|
|
@@ -134,7 +141,7 @@ function configTarget(path) {
|
|
|
134
141
|
}
|
|
135
142
|
catch (error) {
|
|
136
143
|
if (error.code === 'ENOENT') {
|
|
137
|
-
throw new Error(`cannot read config ${path}: ${error.message}
|
|
144
|
+
throw new Error(`cannot read config ${path}: ${error.message}`, { cause: error });
|
|
138
145
|
}
|
|
139
146
|
throw error;
|
|
140
147
|
}
|
|
@@ -142,9 +149,9 @@ function configTarget(path) {
|
|
|
142
149
|
/**
|
|
143
150
|
* Serialize one read/update/replace sequence on a config file.
|
|
144
151
|
*
|
|
145
|
-
* @param path -
|
|
146
|
-
* @param fn -
|
|
147
|
-
* @returns
|
|
152
|
+
* @param path - The configuration path.
|
|
153
|
+
* @param fn - The update to run while holding the lock.
|
|
154
|
+
* @returns Whatever the update returns.
|
|
148
155
|
*/
|
|
149
156
|
function withConfigLock(path, fn) {
|
|
150
157
|
const target = configTarget(path);
|
|
@@ -168,8 +175,9 @@ function withConfigLock(path, fn) {
|
|
|
168
175
|
pid = Number(readFileSync(lock, 'utf8'));
|
|
169
176
|
}
|
|
170
177
|
catch (error) {
|
|
171
|
-
if (error.code === 'ENOENT')
|
|
178
|
+
if (error.code === 'ENOENT') {
|
|
172
179
|
continue;
|
|
180
|
+
}
|
|
173
181
|
throw error;
|
|
174
182
|
}
|
|
175
183
|
const usablePid = Number.isInteger(pid) && pid > 0 && pid <= 0x7fffffff;
|
|
@@ -179,8 +187,9 @@ function withConfigLock(path, fn) {
|
|
|
179
187
|
age = Date.now() - statSync(lock).mtimeMs;
|
|
180
188
|
}
|
|
181
189
|
catch (error) {
|
|
182
|
-
if (error.code === 'ENOENT')
|
|
190
|
+
if (error.code === 'ENOENT') {
|
|
183
191
|
continue;
|
|
192
|
+
}
|
|
184
193
|
throw error;
|
|
185
194
|
}
|
|
186
195
|
// Only a lock from an older writer can be empty now; give it a moment, then fail closed.
|
|
@@ -188,11 +197,15 @@ function withConfigLock(path, fn) {
|
|
|
188
197
|
sleepSync(50);
|
|
189
198
|
continue;
|
|
190
199
|
}
|
|
191
|
-
throw new Error(`stale lock ${lock}; remove it if no gcb command is running
|
|
200
|
+
throw new Error(`stale lock ${lock}; remove it if no gcb command is running`, {
|
|
201
|
+
cause: error,
|
|
202
|
+
});
|
|
192
203
|
}
|
|
193
204
|
if (pidAlive(pid)) {
|
|
194
205
|
if (Date.now() >= deadline) {
|
|
195
|
-
throw new Error(`another gcb command is updating ${path}; retry after it finishes
|
|
206
|
+
throw new Error(`another gcb command is updating ${path}; retry after it finishes`, {
|
|
207
|
+
cause: error,
|
|
208
|
+
});
|
|
196
209
|
}
|
|
197
210
|
sleepSync(50);
|
|
198
211
|
continue;
|
|
@@ -200,7 +213,9 @@ function withConfigLock(path, fn) {
|
|
|
200
213
|
// Recovering a stale lock by unlink/rename races the holder's release and a new acquirer,
|
|
201
214
|
// and the loser can delete a lock the winner just created. Fail closed instead; removing the
|
|
202
215
|
// file is a deliberate operator action once no gcb command is running.
|
|
203
|
-
throw new Error(`stale lock ${lock}; remove it if no gcb command is running
|
|
216
|
+
throw new Error(`stale lock ${lock}; remove it if no gcb command is running`, {
|
|
217
|
+
cause: error,
|
|
218
|
+
});
|
|
204
219
|
}
|
|
205
220
|
finally {
|
|
206
221
|
rmSync(temporary, { force: true });
|
|
@@ -216,7 +231,7 @@ function withConfigLock(path, fn) {
|
|
|
216
231
|
/**
|
|
217
232
|
* Apply one allowlist add or remove, validate the result, then replace the file atomically.
|
|
218
233
|
*
|
|
219
|
-
* @param path -
|
|
234
|
+
* @param path - The configuration file.
|
|
220
235
|
* @param positionals - `allow`, `add|remove`, host, `owner/name`.
|
|
221
236
|
*/
|
|
222
237
|
function changeAllow(path, positionals) {
|
|
@@ -236,19 +251,20 @@ function changeAllow(path, positionals) {
|
|
|
236
251
|
repository.toLowerCase().endsWith('.git')) {
|
|
237
252
|
throw new Error(`repository must be one exact owner/name without a wildcard or .git, got ${JSON.stringify(repository)}`);
|
|
238
253
|
}
|
|
239
|
-
withConfigLock(path,
|
|
254
|
+
withConfigLock(path, target => {
|
|
240
255
|
const before = readConfigText(target);
|
|
241
256
|
if (before.includes('\r\n') && /(^|[^\r])\n/u.test(before)) {
|
|
242
257
|
throw new Error(`config ${path} has mixed line endings; normalize it to LF or CRLF first`);
|
|
243
258
|
}
|
|
244
259
|
const document = parseDocument(before, { schema: 'core', uniqueKeys: true, prettyErrors: true });
|
|
245
260
|
if (document.errors.length > 0) {
|
|
246
|
-
throw new Error(`config ${path} is not valid YAML: ${document.errors.map(
|
|
261
|
+
throw new Error(`config ${path} is not valid YAML: ${document.errors.map(error => error.message).join('; ')}`);
|
|
247
262
|
}
|
|
248
263
|
const hostsNode = document.getIn(['hosts'], true);
|
|
249
|
-
if (!isMap(hostsNode))
|
|
264
|
+
if (!isMap(hostsNode)) {
|
|
250
265
|
throw new Error(`no hosts in ${path}`);
|
|
251
|
-
|
|
266
|
+
}
|
|
267
|
+
const pair = hostsNode.items.find(item => isScalar(item.key) && String(item.key.value).toLowerCase() === host.toLowerCase());
|
|
252
268
|
if (pair === undefined || !isMap(pair.value)) {
|
|
253
269
|
throw new Error(`no host ${JSON.stringify(host)} in ${path}`);
|
|
254
270
|
}
|
|
@@ -259,14 +275,15 @@ function changeAllow(path, positionals) {
|
|
|
259
275
|
throw new Error(`hosts.${hostKey}.allow must be a list`);
|
|
260
276
|
}
|
|
261
277
|
const entries = isSeq(allowNode)
|
|
262
|
-
? allowNode.items.map(
|
|
278
|
+
? allowNode.items.map(item => (isScalar(item) ? String(item.value) : undefined))
|
|
263
279
|
: [];
|
|
264
|
-
const normalized = entries.map(
|
|
280
|
+
const normalized = entries.map(entry => entry?.trim().toLowerCase());
|
|
265
281
|
const wanted = repository.toLowerCase();
|
|
266
|
-
const index = normalized.findIndex(
|
|
282
|
+
const index = normalized.findIndex(entry => entry === wanted);
|
|
267
283
|
if (action === 'add') {
|
|
268
|
-
if (index !== -1)
|
|
284
|
+
if (index !== -1) {
|
|
269
285
|
throw new Error(`${repository} is already in ${hostKey}.allow`);
|
|
286
|
+
}
|
|
270
287
|
if (isSeq(allowNode)) {
|
|
271
288
|
allowNode.add(repository);
|
|
272
289
|
}
|
|
@@ -275,8 +292,9 @@ function changeAllow(path, positionals) {
|
|
|
275
292
|
}
|
|
276
293
|
}
|
|
277
294
|
else {
|
|
278
|
-
if (index === -1 || !isSeq(allowNode))
|
|
295
|
+
if (index === -1 || !isSeq(allowNode)) {
|
|
279
296
|
throw new Error(`${repository} is not in ${hostKey}.allow`);
|
|
297
|
+
}
|
|
280
298
|
const kept = allowNode.items.filter((_item, position) => normalized[position] !== wanted);
|
|
281
299
|
if (kept.length === 0) {
|
|
282
300
|
throw new Error(`refusing to remove: this would leave the allowlist empty for ${hostKey}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,17 +20,17 @@ export declare const HOST_SOCKET_PATH_DEFAULT = "/run/git-cred-broker/broker.soc
|
|
|
20
20
|
/**
|
|
21
21
|
* The host-side files a deployment needs, regardless of mode.
|
|
22
22
|
*
|
|
23
|
-
* @param dir -
|
|
24
|
-
* @returns
|
|
23
|
+
* @param dir - The host directory holding the deployment.
|
|
24
|
+
* @returns The paths on the host.
|
|
25
25
|
*/
|
|
26
26
|
export declare function hostArtifacts(dir: string): HostArtifacts;
|
|
27
27
|
/**
|
|
28
28
|
* The paths to record in the configuration for one deployment.
|
|
29
29
|
*
|
|
30
|
-
* @param mode -
|
|
31
|
-
* @param dir -
|
|
32
|
-
* @param hostSocketPath -
|
|
33
|
-
* @returns
|
|
30
|
+
* @param mode - Which deployment the broker will run as.
|
|
31
|
+
* @param dir - The host directory holding the deployment.
|
|
32
|
+
* @param hostSocketPath - The socket path a host process should use; ignored in sidecar mode.
|
|
33
|
+
* @returns The paths as the broker will resolve them.
|
|
34
34
|
*/
|
|
35
35
|
export declare function brokerPaths(mode: DeploymentMode, dir: string, hostSocketPath?: string): BrokerPaths;
|
|
36
36
|
/**
|
|
@@ -39,11 +39,11 @@ export declare function brokerPaths(mode: DeploymentMode, dir: string, hostSocke
|
|
|
39
39
|
* The compose file fixes these locations, so silently ignoring a different value would produce a
|
|
40
40
|
* broker that starts and then cannot find its own key. Failing loudly is the only kind option.
|
|
41
41
|
*
|
|
42
|
-
* @param flag -
|
|
43
|
-
* @param given -
|
|
44
|
-
* @param fixed -
|
|
45
|
-
* @param mode -
|
|
46
|
-
* @throws {Error}
|
|
42
|
+
* @param flag - The flag name, for the message.
|
|
43
|
+
* @param given - The value the user supplied, if any.
|
|
44
|
+
* @param fixed - The value the deployment requires.
|
|
45
|
+
* @param mode - The chosen deployment.
|
|
46
|
+
* @throws {Error} When sidecar mode was chosen and a conflicting value was supplied.
|
|
47
47
|
*/
|
|
48
48
|
export declare function requireFixedInSidecar(flag: string, given: string | undefined, fixed: string, mode: DeploymentMode): void;
|
|
49
49
|
//# sourceMappingURL=deployment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../src/commands/deployment.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../src/commands/deployment.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAElD,+CAA+C;AAC/C,eAAO,MAAM,gBAAgB,EAAE,SAAS,cAAc,EAAwB,CAAA;AAE9E,oFAAoF;AACpF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAC3B;AAED,+FAA+F;AAC/F,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,gEAAgE;IAChE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAED,4EAA4E;AAC5E,eAAO,MAAM,wBAAwB,qCAAqC,CAAA;AAE1E;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAOxD;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,MAAM,EACX,cAAc,GAAE,MAAiC,GAChD,WAAW,CAab;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,cAAc,GACnB,IAAI,CAON"}
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
* Where each deployment expects its files, from the **broker's** point of view.
|
|
3
3
|
*
|
|
4
4
|
* This module exists because of one easily-missed fact: the paths inside `broker.config.yml` are
|
|
5
|
-
* resolved by whichever process reads the file. A broker running as a host process sees the
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* resolved by whichever process reads the file. A broker running as a host process sees the host's
|
|
6
|
+
* filesystem, and a broker running as a sidecar sees only what its `volumes:` mount. The same file
|
|
7
|
+
* therefore means two different things, and one config cannot serve both.
|
|
8
8
|
*
|
|
9
|
-
* Both `init --mode` and `compose` derive from here, so the two halves cannot drift apart —
|
|
10
|
-
*
|
|
11
|
-
*
|
|
9
|
+
* Both `init --mode` and `compose` derive from here, so the two halves cannot drift apart — which
|
|
10
|
+
* they did once: `init` recorded host paths while `compose` mounted the files at container paths,
|
|
11
|
+
* producing a sidecar that could not read its own key.
|
|
12
12
|
*/
|
|
13
13
|
import path from 'node:path';
|
|
14
14
|
import { USER_TOKEN_FILE, SIDECAR } from '../config.js';
|
|
@@ -19,8 +19,8 @@ export const HOST_SOCKET_PATH_DEFAULT = '/run/git-cred-broker/broker.sock';
|
|
|
19
19
|
/**
|
|
20
20
|
* The host-side files a deployment needs, regardless of mode.
|
|
21
21
|
*
|
|
22
|
-
* @param dir -
|
|
23
|
-
* @returns
|
|
22
|
+
* @param dir - The host directory holding the deployment.
|
|
23
|
+
* @returns The paths on the host.
|
|
24
24
|
*/
|
|
25
25
|
export function hostArtifacts(dir) {
|
|
26
26
|
return {
|
|
@@ -33,10 +33,10 @@ export function hostArtifacts(dir) {
|
|
|
33
33
|
/**
|
|
34
34
|
* The paths to record in the configuration for one deployment.
|
|
35
35
|
*
|
|
36
|
-
* @param mode -
|
|
37
|
-
* @param dir -
|
|
38
|
-
* @param hostSocketPath -
|
|
39
|
-
* @returns
|
|
36
|
+
* @param mode - Which deployment the broker will run as.
|
|
37
|
+
* @param dir - The host directory holding the deployment.
|
|
38
|
+
* @param hostSocketPath - The socket path a host process should use; ignored in sidecar mode.
|
|
39
|
+
* @returns The paths as the broker will resolve them.
|
|
40
40
|
*/
|
|
41
41
|
export function brokerPaths(mode, dir, hostSocketPath = HOST_SOCKET_PATH_DEFAULT) {
|
|
42
42
|
if (mode === 'sidecar') {
|
|
@@ -58,15 +58,16 @@ export function brokerPaths(mode, dir, hostSocketPath = HOST_SOCKET_PATH_DEFAULT
|
|
|
58
58
|
* The compose file fixes these locations, so silently ignoring a different value would produce a
|
|
59
59
|
* broker that starts and then cannot find its own key. Failing loudly is the only kind option.
|
|
60
60
|
*
|
|
61
|
-
* @param flag -
|
|
62
|
-
* @param given -
|
|
63
|
-
* @param fixed -
|
|
64
|
-
* @param mode -
|
|
65
|
-
* @throws {Error}
|
|
61
|
+
* @param flag - The flag name, for the message.
|
|
62
|
+
* @param given - The value the user supplied, if any.
|
|
63
|
+
* @param fixed - The value the deployment requires.
|
|
64
|
+
* @param mode - The chosen deployment.
|
|
65
|
+
* @throws {Error} When sidecar mode was chosen and a conflicting value was supplied.
|
|
66
66
|
*/
|
|
67
67
|
export function requireFixedInSidecar(flag, given, fixed, mode) {
|
|
68
|
-
if (mode !== 'sidecar' || given === undefined || given === fixed)
|
|
68
|
+
if (mode !== 'sidecar' || given === undefined || given === fixed) {
|
|
69
69
|
return;
|
|
70
|
+
}
|
|
70
71
|
throw new Error(`${flag} must be ${fixed} with --mode sidecar, because the compose file mounts it there; got ${given}`);
|
|
71
72
|
}
|
|
72
73
|
//# sourceMappingURL=deployment.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../src/commands/deployment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,IAAI,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../src/commands/deployment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAGvD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,gBAAgB,GAA8B,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAkB9E,4EAA4E;AAC5E,MAAM,CAAC,MAAM,wBAAwB,GAAG,kCAAkC,CAAA;AAE1E;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,GAAW;IACvC,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC;QAClC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,eAAe,CAAC;QAC9C,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC;QAC/C,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC;KAChC,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CACzB,IAAoB,EACpB,GAAW,EACX,cAAc,GAAW,wBAAwB;IAEjD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,cAAc,EAAE,OAAO,CAAC,OAAO;YAC/B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAA;IACH,CAAC;IACD,OAAO;QACL,UAAU,EAAE,cAAc;QAC1B,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC;QACzC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC;KAChD,CAAA;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAY,EACZ,KAAyB,EACzB,KAAa,EACb,IAAoB;IAEpB,IAAI,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QACjE,OAAM;IACR,CAAC;IACD,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,YAAY,KAAK,uEAAuE,KAAK,EAAE,CACvG,CAAA;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnose.d.ts","sourceRoot":"","sources":["../../src/commands/diagnose.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"diagnose.d.ts","sourceRoot":"","sources":["../../src/commands/diagnose.ts"],"names":[],"mappings":"AAsCA,iCAAiC;AACjC,eAAO,MAAM,cAAc,iiBAU1B,CAAA;AAUD,wBAAsB,WAAW,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAmO1E"}
|