@sparkwing/sdk 0.69.2 → 0.70.0

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/dist/command.js CHANGED
@@ -42,9 +42,10 @@ function boundedCommand(command) {
42
42
  cut--;
43
43
  return `${bytes.subarray(0, cut).toString()}... [${bytes.length - cut} more bytes]`;
44
44
  }
45
- export function registerCommandContext(ctx, emit, env = {}) {
46
- bindings.set(ctx, { emit, env: { ...env } });
45
+ export function registerCommandContext(ctx, emit, env = {}, hostExec) {
46
+ bindings.set(ctx, { emit, env: { ...env }, ...(hostExec === undefined ? {} : { hostExec }) });
47
47
  }
48
+ export function commandEnvironment(ctx) { return binding(ctx).env; }
48
49
  function binding(ctx) {
49
50
  return bindings.get(ctx) ?? { emit: (event, attrs) => ctx.log.info(event, attrs), env: {} };
50
51
  }
@@ -63,7 +64,7 @@ function deriveContext(ctx, signal, env) {
63
64
  },
64
65
  });
65
66
  if (registered)
66
- registerCommandContext(derived, binding(ctx).emit, env);
67
+ registerCommandContext(derived, binding(ctx).emit, env, binding(ctx).hostExec);
67
68
  return derived;
68
69
  }
69
70
  export function withCommandEnv(ctx, env) {
@@ -124,28 +125,14 @@ export function createCommand(ctx, argv, options = {}) {
124
125
  },
125
126
  };
126
127
  }
127
- const protocolEnv = new Set([
128
- "SPARKWING_NODE_TOKEN",
129
- "SPARKWING_AGENT_TOKEN",
130
- "SPARKWING_CACHE_GRANT",
131
- "SPARKWING_SOURCE_TOKEN",
132
- "SPARKWING_API_TOKEN",
133
- "SPARKWING_LEASE_TOKEN",
134
- "SPARKWING_SECRETS_KEY",
135
- "SPARKWING_SECRETS_PREVIOUS_KEY",
136
- "SPARKWING_RELEASE_SIGNING_KEY",
137
- "SPARKWING_NODE_URL",
138
- "SPARKWING_PROTOCOL_HANDLES",
139
- "SPARKWING_CONTROLLER_URL",
140
- ]);
141
- function commandEnv(ctx, options) {
142
- const env = Object.create(null);
143
- for (const layer of [process.env, binding(ctx).env, options.env ?? {}]) {
144
- for (const [name, value] of Object.entries(layer)) {
145
- const key = process.platform === "win32" ? name.toUpperCase() : name;
146
- if (!protocolEnv.has(key) && !key.startsWith("SPARKWING_NODE_CLAIM_"))
147
- env[key] = value;
148
- }
128
+ function commandEnv(ctx, options) { return { ...process.env, ...binding(ctx).env, ...options.env }; }
129
+ const windowsPrivateEnv = new Set(["SPARKWING_NODE_TOKEN", "SPARKWING_AGENT_TOKEN", "SPARKWING_CACHE_GRANT", "SPARKWING_SOURCE_TOKEN", "SPARKWING_API_TOKEN", "SPARKWING_LEASE_TOKEN", "SPARKWING_SECRETS_KEY", "SPARKWING_SECRETS_PREVIOUS_KEY", "SPARKWING_RELEASE_SIGNING_KEY", "SPARKWING_NODE_URL", "SPARKWING_PROTOCOL_HANDLES", "SPARKWING_CONTROLLER_URL"]);
130
+ function windowsCommandEnv(ctx, options) {
131
+ const env = commandEnv(ctx, options);
132
+ for (const name of Object.keys(env)) {
133
+ const key = name.toUpperCase();
134
+ if (windowsPrivateEnv.has(key) || key.startsWith("SPARKWING_NODE_CLAIM_"))
135
+ delete env[name];
149
136
  }
150
137
  return env;
151
138
  }
@@ -164,9 +151,30 @@ export async function runCommand(ctx, argv, options = {}) {
164
151
  if (ctx.signal.aborted)
165
152
  throw new ExecError(result, "cancellation", ctx.signal.reason);
166
153
  const cwd = options.cwd !== undefined && isAbsolute(options.cwd) ? options.cwd : resolve(projectRoot(), options.cwd ?? "");
154
+ const hostExec = binding(ctx).hostExec;
155
+ // Output callbacks need the bytes as they arrive, so those commands stay in the SDK.
156
+ if (process.platform !== "win32") {
157
+ if (!hostExec)
158
+ throw new Error("host command service unavailable");
159
+ const reply = await hostCommand(ctx, hostExec, argv, cwd, options);
160
+ result = { command, stdout: reply.stdout.toString("utf8"), stderr: reply.stderr.toString("utf8"), exitCode: reply.exitCode };
161
+ if (reply.startError !== undefined) {
162
+ result = { command, stdout: "", stderr: "", exitCode: exitNotStarted };
163
+ throw new ExecError(result, "", Object.assign(new Error(reply.startError), reply.notFound ? { code: "ENOENT" } : {}));
164
+ }
165
+ if (ctx.signal.aborted && (reply.signaled || reply.exitCode !== 0)) {
166
+ result = { ...result, exitCode: exitNotStarted };
167
+ throw new ExecError(result, "cancellation", ctx.signal.reason);
168
+ }
169
+ if (reply.signaled)
170
+ throw new ExecError(result, "signal", new Error("process received a signal"));
171
+ if (result.exitCode !== 0)
172
+ throw new ExecError(result);
173
+ return result;
174
+ }
167
175
  const child = spawn(argv[0], argv.slice(1), {
168
176
  cwd,
169
- env: commandEnv(ctx, options),
177
+ env: windowsCommandEnv(ctx, options),
170
178
  detached: process.platform !== "win32",
171
179
  // safety: Only these three handles are inherited; protocol handles never enter a tool.
172
180
  stdio: [options.input === undefined ? "ignore" : "pipe", "pipe", "pipe"],
@@ -188,13 +196,28 @@ export async function runCommand(ctx, argv, options = {}) {
188
196
  emit("exec_end", { command, exit_code: result.exitCode, duration_ms: performance.now() - started, terminated });
189
197
  }
190
198
  }
199
+ function hostCommand(ctx, hostExec, argv, dir, options) {
200
+ const env = [];
201
+ for (const [name, value] of Object.entries(commandEnv(ctx, options)))
202
+ if (value !== undefined)
203
+ env.push(`${name}=${value}`);
204
+ return hostExec({
205
+ ...(ctx.stepId === undefined ? {} : { step: ctx.stepId }),
206
+ argv,
207
+ onOutput: (stream, data) => (stream === "stdout" ? options.stdout : options.stderr)?.(data),
208
+ dir,
209
+ env,
210
+ capture: options.capture === true || !!options.stdout || !!options.stderr,
211
+ ...(options.input === undefined ? {} : { stdin: options.input }),
212
+ }, ctx.signal);
213
+ }
191
214
  function collectCommand(ctx, child, options, emit) {
192
215
  return new Promise((resolveDone) => {
193
216
  let cause;
194
217
  let cancelled = false;
195
218
  const kill = () => {
196
219
  try {
197
- terminate(child, commandEnv(ctx, {}));
220
+ terminate(child, windowsCommandEnv(ctx, {}));
198
221
  }
199
222
  catch (error) {
200
223
  cause ??= error;
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../src/command.ts"],"names":[],"mappings":"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"}
package/dist/context.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { createCommand, registerCommandContext } from "./command.js";
2
2
  import { SDKError, failure } from "./errors.js";
3
3
  import { LogWriter } from "./log.js";
4
+ import { registerHelpers } from "./helpers/host.js";
4
5
  export function makeContext(options) {
5
6
  const { run, signal, jobId } = options;
6
7
  const log = new LogWriter(options.frames, options.stepId);
@@ -12,13 +13,11 @@ export function makeContext(options) {
12
13
  };
13
14
  const read = async (name, variable) => {
14
15
  const declaration = options.definition.secrets?.find((s) => s.name === name && Boolean(s.variable) === variable);
15
- if (!declaration)
16
- throw failure("forbidden", "value was not declared by this pipeline", { reason: "secret_undeclared" });
17
16
  try {
18
- return await services().secret(name, signal);
17
+ return await services().secret(name, signal, variable);
19
18
  }
20
19
  catch (error) {
21
- if (declaration.optional && error instanceof SDKError && error.code === "not_found")
20
+ if (declaration?.optional && error instanceof SDKError && error.code === "not_found")
22
21
  return undefined;
23
22
  throw error;
24
23
  }
@@ -38,12 +37,9 @@ export function makeContext(options) {
38
37
  output: (job) => services().output(typeof job === "string" ? job : job.id, signal),
39
38
  stepOutput: (step) => options.outputs.get(typeof step === "string" ? step : step.id),
40
39
  annotate: async (annotation) => {
41
- checkAnnotation(annotation);
42
40
  await services().annotate(annotation, signal, options.stepId);
43
41
  },
44
42
  summary: async (markdown) => {
45
- if (typeof markdown !== "string")
46
- throw failure("bad_request", "summary markdown must be a string");
47
43
  await services().summary(markdown, signal, options.stepId);
48
44
  },
49
45
  mask: (value) => services().mask(value, signal),
@@ -54,16 +50,8 @@ export function makeContext(options) {
54
50
  exec: (argv, opts) => createCommand(ctx, argv, opts),
55
51
  bash: (script, opts) => createCommand(ctx, ["bash", "-c", script], opts),
56
52
  };
57
- registerCommandContext(ctx, (event, attrs) => log.event(event, attrs), options.bodyEnv);
53
+ registerHelpers(ctx, options.services);
54
+ registerCommandContext(ctx, (event, attrs) => log.event(event, attrs), options.bodyEnv, options.hostExec);
58
55
  return ctx;
59
56
  }
60
- function checkAnnotation(annotation) {
61
- if (typeof annotation.message !== "string")
62
- throw failure("bad_request", "annotation message must be a string");
63
- if (annotation.level !== undefined && typeof annotation.level !== "string")
64
- throw failure("bad_request", "annotation level must be a string");
65
- for (const value of [annotation.line, annotation.endLine, annotation.column])
66
- if (value !== undefined && !Number.isSafeInteger(value))
67
- throw failure("bad_request", "annotation location must be an integer");
68
- }
69
57
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"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"}
@@ -1,266 +1,65 @@
1
- import { randomBytes } from "node:crypto";
2
- import * as fs from "node:fs/promises";
3
- import * as paths from "node:path";
4
- import { tmpdir } from "node:os";
5
- import { assertExecution } from "../scope.js";
6
- import { cleanupContext, runCommand, runInput } from "../command.js";
7
- import { isMissing, path } from "./files.js";
8
- import { git } from "./git.js";
1
+ import { helper } from "./host.js";
9
2
  export class DockerUnavailableError extends Error {
10
3
  }
11
4
  export class BuildxRequiredError extends Error {
12
5
  }
13
6
  export class PlatformUnsupportedError extends Error {
14
7
  }
15
- function unavailable(error) {
16
- if (isMissing(error))
17
- return true;
18
- return error instanceof Error && error.cause !== undefined && unavailable(error.cause);
19
- }
20
- export async function dockerCommand(ctx, ...args) {
21
- assertExecution();
22
- try {
23
- return await ctx.exec(["docker", ...args]).capture();
24
- }
25
- catch (cause) {
26
- if (unavailable(cause))
27
- throw new DockerUnavailableError("Docker binary is not available on PATH", { cause });
28
- throw cause;
29
- }
30
- }
31
- async function buildxPlatforms(ctx) {
8
+ async function call(ctx, op, args) {
32
9
  try {
33
- await dockerCommand(ctx, "buildx", "version");
34
- }
35
- catch (cause) {
36
- ctx.signal.throwIfAborted();
37
- if (cause instanceof DockerUnavailableError)
38
- throw cause;
39
- throw new BuildxRequiredError("Docker buildx is required", { cause });
40
- }
41
- const result = await dockerCommand(ctx, "buildx", "inspect");
42
- const found = result.stdout
43
- .split("\n")
44
- .filter((line) => line.trim().startsWith("Platforms:"))
45
- .flatMap((line) => line.slice(line.indexOf(":") + 1).split(","))
46
- .map((value) => value.trim().replace(/\*$/, ""))
47
- .filter(Boolean);
48
- return [...new Set(found)];
49
- }
50
- function advertised(wish, targets) {
51
- return targets.some((target) => target === wish || target.startsWith(wish + "/"));
52
- }
53
- function entries(values) {
54
- return Object.entries(values ?? {}).sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0));
55
- }
56
- function digest(output, tag) {
57
- const found = output
58
- .split("\n")
59
- .filter((line) => line.startsWith(`${tag}: digest: `))
60
- .map((line) => /^.+: digest: (sha256:[a-f0-9]{64}) size: \d+\s*$/.exec(line)?.[1])
61
- .filter(Boolean);
62
- const unique = new Set(found);
63
- return unique.size === 1 ? found[0] : undefined;
64
- }
65
- async function pushRefs(ctx, local, image, tags, registries) {
66
- const digests = {};
67
- const completed = [], errors = [];
68
- let first = local;
69
- let pushed = false;
70
- for (const registry of registries) {
71
- let success = true;
72
- for (const tag of tags) {
73
- ctx.signal.throwIfAborted();
74
- const remote = `${registry}/${image}:${tag}`;
75
- try {
76
- await dockerCommand(ctx, "tag", local, remote);
77
- const output = await dockerCommand(ctx, "push", remote);
78
- const value = digest(output.stdout + "\n" + output.stderr, tag);
79
- if (value)
80
- digests[remote] = value;
81
- if (!pushed) {
82
- first = remote;
83
- pushed = true;
84
- }
85
- }
86
- catch (error) {
87
- success = false;
88
- errors.push(error);
89
- }
90
- }
91
- if (success)
92
- completed.push(registry);
93
- }
94
- if (errors.length)
95
- throw new AggregateError(errors, "Docker image push failed");
96
- return { image: first, digests, registries: completed };
97
- }
98
- async function build(ctx, config, push) {
99
- assertExecution();
100
- if (!config.image || !config.tags.length || config.tags.some((tag) => !tag))
101
- throw new Error("Docker build requires an image and nonempty tags");
102
- const platforms = config.platforms ?? [], registries = config.registries ?? [];
103
- const multi = platforms.length > 0;
104
- if (multi) {
105
- const targets = await buildxPlatforms(ctx);
106
- const missing = platforms.filter((target) => !advertised(target, targets));
107
- if (targets.length && missing.length)
108
- throw new PlatformUnsupportedError(`Unsupported platforms: ${missing.join(", ")}; builder advertises ${targets.join(", ")}`);
109
- }
110
- const local = config.tags.map((tag) => `${config.image}:${tag}`);
111
- const remote = registries.flatMap((registry) => config.tags.map((tag) => `${registry}/${config.image}:${tag}`));
112
- const args = multi ? ["buildx", "build", "--platform", platforms.join(",")] : ["build"];
113
- if (multi && push && remote.length)
114
- args.push("--push");
115
- else if (platforms.length === 1)
116
- args.push("--load");
117
- args.push("-f", config.dockerfile || "Dockerfile");
118
- if (!(multi && push && remote.length))
119
- for (const ref of local)
120
- args.push("-t", ref);
121
- if (multi)
122
- for (const ref of remote)
123
- args.push("-t", ref);
124
- for (const [key, value] of entries(config.buildArgs))
125
- args.push("--build-arg", `${key}=${value}`);
126
- for (const [key, value] of entries(config.labels))
127
- args.push("--label", `${key}=${value}`);
128
- let metadata;
129
- try {
130
- if (multi && push && remote.length) {
131
- metadata = await fs.mkdtemp(paths.join(tmpdir(), "sparkwing-push-"));
132
- args.push("--metadata-file", paths.join(metadata, "metadata.json"));
133
- }
134
- args.push(config.context || ".");
135
- await dockerCommand(ctx, ...args);
136
- if (!push || !registries.length)
137
- return { image: local[0], digests: {}, registries: [] };
138
- if (!multi)
139
- return await pushRefs(ctx, local[0], config.image, config.tags, registries);
140
- const data = JSON.parse(await fs.readFile(paths.join(metadata, "metadata.json"), "utf8"));
141
- const value = typeof data === "object" && data !== null && "containerimage.digest" in data ? data["containerimage.digest"] : undefined;
142
- const digests = {};
143
- if (typeof value === "string" && /^sha256:[a-f0-9]{64}$/.test(value))
144
- for (const ref of remote)
145
- digests[ref] = value;
146
- return { image: remote[0], digests, registries: [...registries] };
147
- }
148
- finally {
149
- if (metadata)
150
- await fs.rm(metadata, { recursive: true, force: true });
151
- }
152
- }
153
- export async function removeContainer(ctx, name, registration) {
154
- await dockerCommand(cleanupContext(ctx), "rm", "-f", name);
155
- await registration.unregister();
156
- }
157
- async function run(ctx, options) {
158
- assertExecution();
159
- if (!options.image)
160
- throw new Error("Docker run requires an image");
161
- if (options.outputDir && !options.outputTo)
162
- throw new Error("Docker run outputTo is required for outputDir");
163
- const name = "sparkwing-run-" + randomBytes(6).toString("hex");
164
- const working = options.workDir || "/work";
165
- const args = ["create", "--name", name, "-w", working];
166
- if (options.user)
167
- args.push("--user", options.user);
168
- for (const [key, value] of entries(options.env))
169
- args.push("-e", `${key}=${value}`);
170
- for (const [volume, mount] of entries(options.volumes)) {
171
- if (!/^[a-zA-Z0-9][a-zA-Z0-9_.-]*$/.test(volume))
172
- throw new Error(`Docker volumes require a named volume: ${volume}`);
173
- args.push("-v", `${volume}:${mount}`);
174
- }
175
- args.push(options.image, ...(options.cmd ?? []));
176
- await dockerCommand(ctx, "pull", options.image);
177
- const registration = await ctx.cleanup({ argv: ["docker", "rm", "-f", name], description: `Docker run ${options.image}` });
178
- let failed = false;
179
- try {
180
- await dockerCommand(ctx, ...args);
181
- if (options.inputDir)
182
- await dockerCommand(ctx, "cp", path(options.inputDir) + "/.", `${name}:${working}`);
183
- if (options.stdout || options.stderr) {
184
- await runCommand(ctx, ["docker", "start", "-a", name], {
185
- ...(options.stdout ? { stdout: options.stdout } : {}),
186
- ...(options.stderr ? { stderr: options.stderr } : {}),
187
- });
188
- }
189
- else
190
- await ctx.exec(["docker", "start", "-a", name]).run();
191
- if (options.outputDir) {
192
- const destination = path(options.outputTo);
193
- await fs.mkdir(destination, { recursive: true });
194
- await dockerCommand(ctx, "cp", `${name}:${options.outputDir}/.`, destination);
195
- }
10
+ return await helper(ctx, "docker." + op, args);
196
11
  }
197
12
  catch (error) {
198
- failed = true;
13
+ const code = error.code;
14
+ const Type = code === "docker: binary not available on PATH"
15
+ ? DockerUnavailableError
16
+ : code === "docker: buildx plugin required for multi-platform builds"
17
+ ? BuildxRequiredError
18
+ : code === "docker: requested platform not supported by active buildx builder"
19
+ ? PlatformUnsupportedError
20
+ : undefined;
21
+ if (Type)
22
+ throw new Type(String(error), { cause: error });
199
23
  throw error;
200
24
  }
201
- finally {
202
- try {
203
- await removeContainer(ctx, name, registration);
204
- }
205
- catch (error) {
206
- if (!failed)
207
- throw error;
208
- ctx.log.warn("Docker container cleanup failed; host cleanup remains registered", { name, error: String(error) });
209
- }
210
- }
211
25
  }
212
26
  async function computeTagsIn(ctx, directory) {
213
- const commit = await git.shortCommit(ctx, directory);
214
- const branch = await git.currentBranch(ctx, directory);
215
- const dirty = await git.isDirty(ctx, directory);
216
- const content = await git.filesetHash(ctx, directory);
217
- const deploy = `commit-${commit}-files-${content}${dirty ? "-dirty" : ""}`;
218
- return Object.freeze({
219
- commit,
220
- branch,
221
- dirty,
222
- content,
223
- deployTag: () => deploy,
224
- prodTag: () => deploy + "-prod",
225
- all: () => [deploy, deploy + "-prod"],
226
- });
27
+ const data = await call(ctx, "ComputeTagsIn", [directory]);
28
+ const deploy = `commit-${data.commit}-files-${data.content}${data.dirty ? "-dirty" : ""}`;
29
+ return Object.freeze({ ...data, deployTag: () => deploy, prodTag: () => deploy + "-prod", all: () => [deploy, deploy + "-prod"] });
227
30
  }
228
31
  export const docker = {
229
32
  DockerUnavailableError,
230
33
  BuildxRequiredError,
231
34
  PlatformUnsupportedError,
232
- build: (ctx, config) => build(ctx, config, false),
233
- buildAndPush: (ctx, config) => build(ctx, config, true),
234
- async push(ctx, image, tags, registries) {
235
- assertExecution();
236
- if (!image || !tags.length || !registries.length)
237
- throw new Error("Docker push requires an image, tags and registries");
238
- const colon = image.lastIndexOf(":");
239
- const base = colon > image.lastIndexOf("/") ? image.slice(0, colon) : image;
240
- await pushRefs(ctx, image, base, tags, registries);
241
- },
242
- async login(ctx, registry, username, secret) {
243
- assertExecution();
244
- if (!registry || !username || !secret)
245
- throw new Error("Docker login requires registry, username and secret");
35
+ build: (ctx, config) => call(ctx, "Build", [config]),
36
+ buildAndPush: (ctx, config) => call(ctx, "BuildAndPush", [config]),
37
+ push: (ctx, image, tags, registries) => call(ctx, "Push", [image, tags, registries]),
38
+ login: (ctx, registry, username, secret) => call(ctx, "Login", [registry, username, secret]),
39
+ buildxPlatforms: (ctx) => call(ctx, "BuildxPlatforms", []),
40
+ filterBuildxPlatforms: (ctx, wish) => call(ctx, "FilterBuildxPlatforms", [wish]),
41
+ async run(ctx, options) {
42
+ const { stdout, stderr, ...opts } = options;
43
+ let error;
44
+ let out;
246
45
  try {
247
- await runInput(ctx, ["docker", "login", "--username", username, "--password-stdin", registry], secret);
46
+ out = await call(ctx, "Run", [{ ...opts, captureOutput: !!stdout || !!stderr }]);
248
47
  }
249
48
  catch (cause) {
250
- if (unavailable(cause))
251
- throw new DockerUnavailableError("Docker binary is not available on PATH", { cause });
252
- throw cause;
49
+ error = cause;
50
+ out = cause.result ?? { stdout: "", stderr: "" };
253
51
  }
52
+ if (stdout)
53
+ stdout(Buffer.from(out.stdout, "base64"));
54
+ else if (out.stdout)
55
+ ctx.log.info(Buffer.from(out.stdout, "base64").toString("utf8"));
56
+ if (stderr)
57
+ stderr(Buffer.from(out.stderr, "base64"));
58
+ else if (out.stderr)
59
+ ctx.log.info(Buffer.from(out.stderr, "base64").toString("utf8"));
60
+ if (error)
61
+ throw error;
254
62
  },
255
- buildxPlatforms,
256
- async filterBuildxPlatforms(ctx, wish) {
257
- assertExecution();
258
- if (!wish.length)
259
- return [];
260
- const targets = await buildxPlatforms(ctx);
261
- return wish.filter((platform) => advertised(platform, targets));
262
- },
263
- run,
264
63
  computeTags: (ctx) => computeTagsIn(ctx, ctx.run.git.workDir()),
265
64
  computeTagsIn,
266
65
  };
@@ -1 +1 @@
1
- {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/helpers/docker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/helpers/docker.ts"],"names":[],"mappings":"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"}