@alwaysmeticulous/remote-replay-launcher 2.331.0 → 2.331.2
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/__tests__/container-upload-utils.spec.js +64 -6
- package/dist/__tests__/container-upload-utils.spec.js.map +1 -1
- package/dist/__tests__/docker-utils.spec.d.ts +2 -0
- package/dist/__tests__/docker-utils.spec.d.ts.map +1 -0
- package/dist/__tests__/docker-utils.spec.js +87 -0
- package/dist/__tests__/docker-utils.spec.js.map +1 -0
- package/dist/docker-utils.d.ts.map +1 -1
- package/dist/docker-utils.js +84 -9
- package/dist/docker-utils.js.map +1 -1
- package/dist/upload-container.d.ts.map +1 -1
- package/dist/upload-container.js +19 -6
- package/dist/upload-container.js.map +1 -1
- package/package.json +4 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ed8985bd-74ac-51af-95d8-176daa147f9a")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -9,6 +9,10 @@ const client_1 = require("@alwaysmeticulous/client");
|
|
|
9
9
|
const dockerode_1 = __importDefault(require("dockerode"));
|
|
10
10
|
const vitest_1 = require("vitest");
|
|
11
11
|
const upload_container_1 = require("../upload-container");
|
|
12
|
+
const PUSH_DIGEST = `sha256:${"a".repeat(64)}`;
|
|
13
|
+
const SUCCESSFUL_PUSH_OUTPUT = [
|
|
14
|
+
{ status: `upload-123: digest: ${PUSH_DIGEST} size: 1234` },
|
|
15
|
+
];
|
|
12
16
|
// Mock the dependencies
|
|
13
17
|
vitest_1.vi.mock("@alwaysmeticulous/client", () => ({
|
|
14
18
|
createClient: vitest_1.vi.fn(),
|
|
@@ -16,8 +20,10 @@ vitest_1.vi.mock("@alwaysmeticulous/client", () => ({
|
|
|
16
20
|
completeContainerUpload: vitest_1.vi.fn(),
|
|
17
21
|
getApiToken: vitest_1.vi.fn((token) => token || "mocked-token"),
|
|
18
22
|
}));
|
|
19
|
-
vitest_1.vi.mock("@alwaysmeticulous/common", () => ({
|
|
23
|
+
vitest_1.vi.mock("@alwaysmeticulous/common", async (importOriginal) => ({
|
|
24
|
+
...(await importOriginal()),
|
|
20
25
|
initLogger: () => ({
|
|
26
|
+
debug: vitest_1.vi.fn(),
|
|
21
27
|
info: vitest_1.vi.fn(),
|
|
22
28
|
warn: vitest_1.vi.fn(),
|
|
23
29
|
error: vitest_1.vi.fn(),
|
|
@@ -58,7 +64,7 @@ vitest_1.vi.mock("dockerode");
|
|
|
58
64
|
modem: {
|
|
59
65
|
followProgress: vitest_1.vi.fn((stream, onFinished) => {
|
|
60
66
|
// Call onFinished to complete the push
|
|
61
|
-
onFinished(null,
|
|
67
|
+
onFinished(null, SUCCESSFUL_PUSH_OUTPUT);
|
|
62
68
|
}),
|
|
63
69
|
},
|
|
64
70
|
};
|
|
@@ -241,8 +247,14 @@ vitest_1.vi.mock("dockerode");
|
|
|
241
247
|
vitest_1.vi.useRealTimers();
|
|
242
248
|
});
|
|
243
249
|
(0, vitest_1.it)("should handle progress events during push", async () => {
|
|
244
|
-
mockDockerClient.modem.followProgress.mockImplementation((stream, onFinished) => {
|
|
245
|
-
|
|
250
|
+
mockDockerClient.modem.followProgress.mockImplementation((stream, onFinished, onProgress) => {
|
|
251
|
+
const progressEvent = {
|
|
252
|
+
id: "layer-1",
|
|
253
|
+
status: "Pushing",
|
|
254
|
+
progress: "50%",
|
|
255
|
+
};
|
|
256
|
+
onProgress(progressEvent);
|
|
257
|
+
onFinished(null, [progressEvent, ...SUCCESSFUL_PUSH_OUTPUT]);
|
|
246
258
|
});
|
|
247
259
|
await (0, upload_container_1.uploadContainer)({
|
|
248
260
|
apiToken: "test-token",
|
|
@@ -253,6 +265,52 @@ vitest_1.vi.mock("dockerode");
|
|
|
253
265
|
// Verify that progress was tracked (through modem.followProgress)
|
|
254
266
|
(0, vitest_1.expect)(mockDockerClient.modem.followProgress).toHaveBeenCalled();
|
|
255
267
|
});
|
|
268
|
+
(0, vitest_1.it)("retries when Docker reports an error in a successful progress stream", async () => {
|
|
269
|
+
vitest_1.vi.useFakeTimers();
|
|
270
|
+
mockDockerClient.modem.followProgress
|
|
271
|
+
.mockImplementationOnce((stream, onFinished) => {
|
|
272
|
+
onFinished(null, [
|
|
273
|
+
{
|
|
274
|
+
errorDetail: {
|
|
275
|
+
message: "blob unknown to registry",
|
|
276
|
+
},
|
|
277
|
+
error: "blob unknown to registry",
|
|
278
|
+
},
|
|
279
|
+
]);
|
|
280
|
+
})
|
|
281
|
+
.mockImplementationOnce((stream, onFinished) => {
|
|
282
|
+
onFinished(null, SUCCESSFUL_PUSH_OUTPUT);
|
|
283
|
+
});
|
|
284
|
+
const resultPromise = (0, upload_container_1.uploadContainer)({
|
|
285
|
+
apiToken: "test-token",
|
|
286
|
+
localImageTag: "myapp:latest",
|
|
287
|
+
commitSha: "abc123def456",
|
|
288
|
+
waitForBase: false,
|
|
289
|
+
});
|
|
290
|
+
await vitest_1.vi.runAllTimersAsync();
|
|
291
|
+
await (0, vitest_1.expect)(resultPromise).resolves.toMatchObject({
|
|
292
|
+
uploadId: "upload-123",
|
|
293
|
+
});
|
|
294
|
+
(0, vitest_1.expect)(mockImage.push).toHaveBeenCalledTimes(2);
|
|
295
|
+
vitest_1.vi.useRealTimers();
|
|
296
|
+
});
|
|
297
|
+
(0, vitest_1.it)("does not report success without a published manifest digest", async () => {
|
|
298
|
+
vitest_1.vi.useFakeTimers();
|
|
299
|
+
mockDockerClient.modem.followProgress.mockImplementation((stream, onFinished) => {
|
|
300
|
+
onFinished(null, [{ status: "Pushed", id: "layer-1" }]);
|
|
301
|
+
});
|
|
302
|
+
const resultPromise = (0, upload_container_1.uploadContainer)({
|
|
303
|
+
apiToken: "test-token",
|
|
304
|
+
localImageTag: "myapp:latest",
|
|
305
|
+
commitSha: "abc123def456",
|
|
306
|
+
waitForBase: false,
|
|
307
|
+
});
|
|
308
|
+
const rejection = (0, vitest_1.expect)(resultPromise).rejects.toThrow("before the registry confirmed a manifest digest");
|
|
309
|
+
await vitest_1.vi.runAllTimersAsync();
|
|
310
|
+
await rejection;
|
|
311
|
+
(0, vitest_1.expect)(mockImage.push).toHaveBeenCalledTimes(3);
|
|
312
|
+
vitest_1.vi.useRealTimers();
|
|
313
|
+
});
|
|
256
314
|
});
|
|
257
315
|
//# sourceMappingURL=container-upload-utils.spec.js.map
|
|
258
|
-
//# debugId=
|
|
316
|
+
//# debugId=ed8985bd-74ac-51af-95d8-176daa147f9a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"container-upload-utils.spec.js","sources":["../../src/__tests__/container-upload-utils.spec.ts"],"sourceRoot":"","names":[],"mappings":";;;;;;;AAAA,qDAIkC;
|
|
1
|
+
{"version":3,"file":"container-upload-utils.spec.js","sources":["../../src/__tests__/container-upload-utils.spec.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"ed8985bd-74ac-51af-95d8-176daa147f9a"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-utils.spec.d.ts","sourceRoot":"","sources":["../../src/__tests__/docker-utils.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="56b220af-01e1-5f6d-83ff-d7338a54df89")}catch(e){}}();
|
|
3
|
+
|
|
4
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
6
|
+
};
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
const dockerode_1 = __importDefault(require("dockerode"));
|
|
9
|
+
const node_stream_1 = require("node:stream");
|
|
10
|
+
const vitest_1 = require("vitest");
|
|
11
|
+
const docker_utils_1 = require("../docker-utils");
|
|
12
|
+
const DIGEST = `sha256:${"a".repeat(64)}`;
|
|
13
|
+
const IMAGE_REFERENCE = "registry.example.com/project/app:upload-1";
|
|
14
|
+
const AUTH_CONFIG = {
|
|
15
|
+
username: "robot",
|
|
16
|
+
password: "secret",
|
|
17
|
+
serveraddress: "registry.example.com",
|
|
18
|
+
};
|
|
19
|
+
vitest_1.vi.mock("@alwaysmeticulous/common", async (importOriginal) => ({
|
|
20
|
+
...(await importOriginal()),
|
|
21
|
+
initLogger: () => ({
|
|
22
|
+
debug: vitest_1.vi.fn(),
|
|
23
|
+
info: vitest_1.vi.fn(),
|
|
24
|
+
warn: vitest_1.vi.fn(),
|
|
25
|
+
error: vitest_1.vi.fn(),
|
|
26
|
+
}),
|
|
27
|
+
}));
|
|
28
|
+
(0, vitest_1.describe)("pushImage", () => {
|
|
29
|
+
(0, vitest_1.afterEach)(() => {
|
|
30
|
+
vitest_1.vi.useRealTimers();
|
|
31
|
+
vitest_1.vi.restoreAllMocks();
|
|
32
|
+
});
|
|
33
|
+
(0, vitest_1.it)("accepts an aux manifest digest from a real Docker progress stream", async () => {
|
|
34
|
+
const { docker, push } = buildDockerWithPushAttempts([
|
|
35
|
+
[{ status: "Pushed", aux: { Digest: DIGEST } }],
|
|
36
|
+
]);
|
|
37
|
+
await (0, vitest_1.expect)((0, docker_utils_1.pushImage)(docker, IMAGE_REFERENCE, AUTH_CONFIG)).resolves.toBeUndefined();
|
|
38
|
+
(0, vitest_1.expect)(push).toHaveBeenCalledOnce();
|
|
39
|
+
});
|
|
40
|
+
(0, vitest_1.it)("retries an in-stream daemon error even when the stream ends cleanly", async () => {
|
|
41
|
+
vitest_1.vi.useFakeTimers();
|
|
42
|
+
const { docker, push } = buildDockerWithPushAttempts([
|
|
43
|
+
[
|
|
44
|
+
{
|
|
45
|
+
error: "blob unknown to registry",
|
|
46
|
+
errorDetail: { message: "blob unknown to registry" },
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
[{ status: `upload-1: digest: ${DIGEST} size: 1234` }],
|
|
50
|
+
]);
|
|
51
|
+
const result = (0, docker_utils_1.pushImage)(docker, IMAGE_REFERENCE, AUTH_CONFIG);
|
|
52
|
+
await vitest_1.vi.runAllTimersAsync();
|
|
53
|
+
await (0, vitest_1.expect)(result).resolves.toBeUndefined();
|
|
54
|
+
(0, vitest_1.expect)(push).toHaveBeenCalledTimes(2);
|
|
55
|
+
});
|
|
56
|
+
(0, vitest_1.it)("rejects a clean stream that never publishes a manifest", async () => {
|
|
57
|
+
vitest_1.vi.useFakeTimers();
|
|
58
|
+
const { docker, push } = buildDockerWithPushAttempts([
|
|
59
|
+
[{ id: "layer-1", status: "Pushed" }],
|
|
60
|
+
[{ id: "layer-1", status: "Pushed" }],
|
|
61
|
+
[{ id: "layer-1", status: "Pushed" }],
|
|
62
|
+
]);
|
|
63
|
+
const result = (0, docker_utils_1.pushImage)(docker, IMAGE_REFERENCE, AUTH_CONFIG);
|
|
64
|
+
const rejection = (0, vitest_1.expect)(result).rejects.toThrow("before the registry confirmed a manifest digest");
|
|
65
|
+
await vitest_1.vi.runAllTimersAsync();
|
|
66
|
+
await rejection;
|
|
67
|
+
(0, vitest_1.expect)(push).toHaveBeenCalledTimes(3);
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
const buildDockerWithPushAttempts = (attempts) => {
|
|
71
|
+
const docker = new dockerode_1.default();
|
|
72
|
+
const remainingAttempts = [...attempts];
|
|
73
|
+
const push = vitest_1.vi.fn((_options, callback) => {
|
|
74
|
+
const events = remainingAttempts.shift();
|
|
75
|
+
if (!events) {
|
|
76
|
+
callback(new Error("Unexpected extra push attempt"), node_stream_1.Readable.from([]));
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
callback(null, node_stream_1.Readable.from(events.map((event) => `${JSON.stringify(event)}\n`)));
|
|
80
|
+
});
|
|
81
|
+
vitest_1.vi.spyOn(docker, "getImage").mockReturnValue({
|
|
82
|
+
push,
|
|
83
|
+
});
|
|
84
|
+
return { docker, push };
|
|
85
|
+
};
|
|
86
|
+
//# sourceMappingURL=docker-utils.spec.js.map
|
|
87
|
+
//# debugId=56b220af-01e1-5f6d-83ff-d7338a54df89
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docker-utils.spec.js","sources":["../../src/__tests__/docker-utils.spec.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"56b220af-01e1-5f6d-83ff-d7338a54df89"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-utils.d.ts","sourceRoot":"","sources":["../src/docker-utils.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"docker-utils.d.ts","sourceRoot":"","sources":["../src/docker-utils.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,WAAW,CAAC;AAyB/B,eAAO,MAAM,eAAe,QAAO,MAElC,CAAC;AAEF,eAAO,MAAM,sBAAsB,WAAkB,MAAM,KAAG,OAAO,CAAC,IAAI,CAgBzE,CAAC;AAEF,eAAO,MAAM,YAAY,WACf,MAAM,YACJ,MAAM,KAEf,OAAO,CAAC,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAaxC,CAAC;AAEF,eAAO,MAAM,QAAQ,WACX,MAAM,eACD,MAAM,eACN,MAAM,KAClB,OAAO,CAAC,IAAI,CAcd,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB,WACxB,MAAM,YACJ,MAAM,eACH,MAAM,KAClB,OAAO,CAAC,MAAM,CAAC,cAAc,CA4B/B,CAAC;AAEF,eAAO,MAAM,SAAS,WACZ,MAAM,kBACE,MAAM,cACV,MAAM,CAAC,UAAU,KAC5B,OAAO,CAAC,IAAI,CAWd,CAAC"}
|
package/dist/docker-utils.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e02b6eb9-4326-5f49-a864-e13054f442f7")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
@@ -8,6 +8,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
8
8
|
exports.pushImage = exports.getTarStreamFromImage = exports.tagImage = exports.getImageInfo = exports.verifyDockerConnection = exports.getDockerClient = void 0;
|
|
9
9
|
const common_1 = require("@alwaysmeticulous/common");
|
|
10
10
|
const dockerode_1 = __importDefault(require("dockerode"));
|
|
11
|
+
class IncompleteDockerPushError extends Error {
|
|
12
|
+
}
|
|
13
|
+
const DOCKER_PUSH_RETRY_OPTIONS = {
|
|
14
|
+
maxRetries: 2,
|
|
15
|
+
retryDelay: 1_000,
|
|
16
|
+
maxRetryDelay: 2_000,
|
|
17
|
+
shouldRetry: (error) => error instanceof IncompleteDockerPushError,
|
|
18
|
+
};
|
|
11
19
|
const getDockerClient = () => {
|
|
12
20
|
return new dockerode_1.default();
|
|
13
21
|
};
|
|
@@ -97,32 +105,99 @@ const getTarStreamFromImage = async (docker, imageTag, pathInImage) => {
|
|
|
97
105
|
};
|
|
98
106
|
exports.getTarStreamFromImage = getTarStreamFromImage;
|
|
99
107
|
const pushImage = async (docker, imageReference, authconfig) => {
|
|
108
|
+
const logger = (0, common_1.initLogger)();
|
|
109
|
+
logger.info(`Starting Docker push for ${imageReference}`);
|
|
110
|
+
await (0, common_1.executeWithRetry)(() => pushImageOnce(docker, imageReference, authconfig), {
|
|
111
|
+
...DOCKER_PUSH_RETRY_OPTIONS,
|
|
112
|
+
logger,
|
|
113
|
+
});
|
|
114
|
+
};
|
|
115
|
+
exports.pushImage = pushImage;
|
|
116
|
+
const pushImageOnce = async (docker, imageReference, authconfig) => {
|
|
100
117
|
const logger = (0, common_1.initLogger)();
|
|
101
118
|
return new Promise((resolve, reject) => {
|
|
102
119
|
const image = docker.getImage(imageReference);
|
|
103
120
|
image.push({ authconfig }, (err, stream) => {
|
|
104
121
|
if (err) {
|
|
122
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
105
123
|
logger.error(`Failed to push image ${imageReference}`);
|
|
106
|
-
logger.error(`Error: ${
|
|
107
|
-
reject(new Error(`Failed to push Docker image: ${
|
|
124
|
+
logger.error(`Error: ${message}`);
|
|
125
|
+
reject(new Error(`Failed to push Docker image: ${message}`));
|
|
108
126
|
return;
|
|
109
127
|
}
|
|
110
128
|
if (!stream) {
|
|
111
129
|
reject(new Error("No stream returned from Docker push"));
|
|
112
130
|
return;
|
|
113
131
|
}
|
|
114
|
-
docker.modem.followProgress(stream, (err) => {
|
|
132
|
+
docker.modem.followProgress(stream, (err, output) => {
|
|
115
133
|
if (err) {
|
|
116
|
-
logger.error(`
|
|
117
|
-
reject(
|
|
134
|
+
logger.error(`Docker push stream failed for ${imageReference}: ${err.message}`);
|
|
135
|
+
reject(new IncompleteDockerPushError(`Docker push stream failed: ${err.message}`, { cause: err }));
|
|
118
136
|
return;
|
|
119
137
|
}
|
|
120
|
-
|
|
138
|
+
const daemonError = getDockerPushError(output);
|
|
139
|
+
if (daemonError) {
|
|
140
|
+
logger.error(`Docker daemon reported an incomplete push for ${imageReference}: ${daemonError}`);
|
|
141
|
+
reject(new IncompleteDockerPushError(`Docker daemon reported an incomplete push: ${daemonError}`));
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
const digest = getPushedDigest(output);
|
|
145
|
+
if (!digest) {
|
|
146
|
+
const lastStatus = getLastDockerPushStatus(output);
|
|
147
|
+
logger.error(`Docker push stream ended without publishing a manifest for ${imageReference}. Last status: ${lastStatus}`);
|
|
148
|
+
reject(new IncompleteDockerPushError(`Docker push ended before the registry confirmed a manifest digest. Last status: ${lastStatus}`));
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
logger.info(`Successfully pushed image ${imageReference} with digest ${digest}`);
|
|
121
152
|
resolve();
|
|
153
|
+
}, (event) => {
|
|
154
|
+
logger.debug(formatDockerPushProgress(event));
|
|
122
155
|
});
|
|
123
156
|
});
|
|
124
157
|
});
|
|
125
158
|
};
|
|
126
|
-
|
|
159
|
+
const getDockerPushError = (output) => {
|
|
160
|
+
for (const event of output) {
|
|
161
|
+
const message = event.errorDetail?.message ?? event.error;
|
|
162
|
+
if (message) {
|
|
163
|
+
return message;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return null;
|
|
167
|
+
};
|
|
168
|
+
const getPushedDigest = (output) => {
|
|
169
|
+
for (let index = output.length - 1; index >= 0; index -= 1) {
|
|
170
|
+
const event = output[index];
|
|
171
|
+
if (!event) {
|
|
172
|
+
continue;
|
|
173
|
+
}
|
|
174
|
+
if (event.aux?.Digest) {
|
|
175
|
+
return event.aux.Digest;
|
|
176
|
+
}
|
|
177
|
+
const digest = event.status?.match(/\bdigest:\s*(sha256:[a-f0-9]{64})\b/i);
|
|
178
|
+
if (digest?.[1]) {
|
|
179
|
+
return digest[1];
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
return null;
|
|
183
|
+
};
|
|
184
|
+
const getLastDockerPushStatus = (output) => {
|
|
185
|
+
for (let index = output.length - 1; index >= 0; index -= 1) {
|
|
186
|
+
const status = output[index]?.status;
|
|
187
|
+
if (status) {
|
|
188
|
+
return status;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
return "no progress events received";
|
|
192
|
+
};
|
|
193
|
+
const formatDockerPushProgress = (event) => {
|
|
194
|
+
const layer = event.id ? ` [${event.id}]` : "";
|
|
195
|
+
const progress = event.progress ? ` ${event.progress}` : "";
|
|
196
|
+
const status = event.errorDetail?.message ??
|
|
197
|
+
event.error ??
|
|
198
|
+
event.status ??
|
|
199
|
+
"unknown Docker push event";
|
|
200
|
+
return `Docker push${layer}: ${status}${progress}`;
|
|
201
|
+
};
|
|
127
202
|
//# sourceMappingURL=docker-utils.js.map
|
|
128
|
-
//# debugId=
|
|
203
|
+
//# debugId=e02b6eb9-4326-5f49-a864-e13054f442f7
|
package/dist/docker-utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-utils.js","sources":["../src/docker-utils.ts"],"sourceRoot":"","names":[],"mappings":";;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"docker-utils.js","sources":["../src/docker-utils.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"e02b6eb9-4326-5f49-a864-e13054f442f7"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-container.d.ts","sourceRoot":"","sources":["../src/upload-container.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEL,YAAY,EAGb,MAAM,0BAA0B,CAAC;AAmBlC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,YAAY,CAAC,EAAE,oBAAoB,EAAE,GAAG,SAAS,CAAC;IAClD,4BAA4B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,uDAI5B;IACD,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,KAAG,OAAO,CAAC,wBAAwB,CAsDnC,CAAC;AAEF,eAAO,MAAM,eAAe,mLAYzB,sBAAsB,KAAG,OAAO,CAAC,qBAAqB,
|
|
1
|
+
{"version":3,"file":"upload-container.d.ts","sourceRoot":"","sources":["../src/upload-container.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAEL,YAAY,EAGb,MAAM,0BAA0B,CAAC;AAmBlC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEtD,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAC/D,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,YAAY,CAAC,EAAE,oBAAoB,EAAE,GAAG,SAAS,CAAC;IAClD,4BAA4B,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;CACtD;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,uDAI5B;IACD,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC,KAAG,OAAO,CAAC,wBAAwB,CAsDnC,CAAC;AAEF,eAAO,MAAM,eAAe,mLAYzB,sBAAsB,KAAG,OAAO,CAAC,qBAAqB,CA0JxD,CAAC"}
|
package/dist/upload-container.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="
|
|
2
|
+
!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="8486a62a-c896-5742-9bfd-907e520447ea")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
5
|
if (k2 === undefined) k2 = k;
|
|
@@ -93,7 +93,7 @@ const uploadContainer = async ({ apiToken: apiToken_, localImageTag, commitSha,
|
|
|
93
93
|
localImageTag,
|
|
94
94
|
projectId,
|
|
95
95
|
});
|
|
96
|
-
(0, common_1.logProgress)(
|
|
96
|
+
(0, common_1.logProgress)(`Completing container upload ${uploadId} for commit ${commitSha} and triggering test run...`);
|
|
97
97
|
if (gitDiffOutput) {
|
|
98
98
|
await (0, asset_upload_utils_1.uploadGitDiffToS3)({
|
|
99
99
|
client,
|
|
@@ -151,7 +151,20 @@ const uploadContainer = async ({ apiToken: apiToken_, localImageTag, commitSha,
|
|
|
151
151
|
...(companionAssetsInfo ? { companionAssetsInfo } : {}),
|
|
152
152
|
...projectIdentifier,
|
|
153
153
|
};
|
|
154
|
-
const
|
|
154
|
+
const completeUpload = async (args) => {
|
|
155
|
+
try {
|
|
156
|
+
return await (0, client_1.completeContainerUpload)(args);
|
|
157
|
+
}
|
|
158
|
+
catch (error) {
|
|
159
|
+
const logger = (0, common_1.initLogger)();
|
|
160
|
+
logger.error(`Failed to complete container upload ${uploadId} for image ${imageReference} and commit ${commitSha}`);
|
|
161
|
+
if (error instanceof Error) {
|
|
162
|
+
logger.error(error.message);
|
|
163
|
+
}
|
|
164
|
+
throw error;
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
const completeResult = await completeUpload(completeContainerArgs);
|
|
155
168
|
const pollResult = await (0, poll_for_base_test_run_1.pollWhileBaseNotFound)({
|
|
156
169
|
initialResult: {
|
|
157
170
|
testRun: completeResult.testRun ?? null,
|
|
@@ -159,13 +172,13 @@ const uploadContainer = async ({ apiToken: apiToken_, localImageTag, commitSha,
|
|
|
159
172
|
extraBasePollTimeoutMs: completeResult.extraBasePollTimeoutMs,
|
|
160
173
|
message: completeResult.message,
|
|
161
174
|
},
|
|
162
|
-
retryFn: () => (
|
|
175
|
+
retryFn: () => completeUpload({
|
|
163
176
|
...completeContainerArgs,
|
|
164
177
|
mustHaveBase: true,
|
|
165
178
|
}),
|
|
166
179
|
fallbackFn: () => {
|
|
167
180
|
(0, common_1.logProgress)("No base test run found. Creating the test run without a base; no sessions will be executed.");
|
|
168
|
-
return (
|
|
181
|
+
return completeUpload({
|
|
169
182
|
...completeContainerArgs,
|
|
170
183
|
mustHaveBase: false,
|
|
171
184
|
});
|
|
@@ -199,4 +212,4 @@ const uploadContainer = async ({ apiToken: apiToken_, localImageTag, commitSha,
|
|
|
199
212
|
};
|
|
200
213
|
exports.uploadContainer = uploadContainer;
|
|
201
214
|
//# sourceMappingURL=upload-container.js.map
|
|
202
|
-
//# debugId=
|
|
215
|
+
//# debugId=8486a62a-c896-5742-9bfd-907e520447ea
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-container.js","sources":["../src/upload-container.ts"],"sourceRoot":"","names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"upload-container.js","sources":["../src/upload-container.ts"],"sourceRoot":"","names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,qDAKkC;AAClC,qDAAmE;AACnE,qDAAuC;AAEvC,6DAK8B;AAC9B,iDAOwB;AACxB,qEAAiE;AA4BjE;;;;;;GAMG;AACI,MAAM,kBAAkB,GAAG,KAAK,EAAE,EACvC,QAAQ,EAAE,SAAS,EACnB,aAAa,EACb,SAAS,GAKV,EAAqC,EAAE;IACtC,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,SAAS,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE1C,MAAM,iBAAiB,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzD,MAAM,MAAM,GAAG,IAAA,8BAAe,GAAE,CAAC;IAEjC,IAAA,oBAAW,EAAC,gCAAgC,CAAC,CAAC;IAC9C,MAAM,IAAA,qCAAsB,EAAC,MAAM,CAAC,CAAC;IACrC,IAAA,oBAAW,EAAC,4BAA4B,CAAC,CAAC;IAE1C,IAAA,oBAAW,EAAC,iCAAiC,aAAa,EAAE,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,MAAM,IAAA,2BAAY,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC5D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,iBAAiB,aAAa,oDAAoD,CACnF,CAAC;IACJ,CAAC;IACD,IAAA,oBAAW,EAAC,uBAAuB,aAAa,EAAE,CAAC,CAAC;IAEpD,IAAA,oBAAW,EAAC,iCAAiC,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,MAAM,IAAA,wBAAe,EAAC;QACzC,MAAM;QACN,GAAG,iBAAiB;KACrB,CAAC,CAAC;IAEH,MAAM,EACJ,QAAQ,EACR,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,kBAAkB,GACnB,GAAG,YAAY,CAAC;IAEjB,IAAA,oBAAW,EAAC,aAAa,WAAW,EAAE,CAAC,CAAC;IACxC,IAAA,oBAAW,EAAC,cAAc,QAAQ,EAAE,CAAC,CAAC;IACtC,IAAA,oBAAW,EAAC,oBAAoB,cAAc,EAAE,CAAC,CAAC;IAElD,IAAA,oBAAW,EAAC,+BAA+B,CAAC,CAAC;IAC7C,MAAM,IAAA,uBAAQ,EAAC,MAAM,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IAEtD,IAAA,oBAAW,EAAC,8BAA8B,cAAc,EAAE,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAsB;QACpC,QAAQ,EAAE,gBAAgB;QAC1B,QAAQ,EAAE,kBAAkB;QAC5B,aAAa,EAAE,WAAW;KAC3B,CAAC;IAEF,0EAA0E;IAC1E,kBAAkB;IAClB,MAAM,IAAA,wBAAS,EAAC,MAAM,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;IAEpD,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;AAC9C,CAAC,CAAC;AA9DW,QAAA,kBAAkB,sBA8D7B;AAEK,MAAM,eAAe,GAAG,KAAK,EAAE,EACpC,QAAQ,EAAE,SAAS,EACnB,aAAa,EACb,SAAS,EACT,OAAO,EACP,aAAa,EACb,WAAW,GAAG,KAAK,EACnB,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,eAAe,EACf,SAAS,GACc,EAAkC,EAAE;IAC3D,MAAM,iBAAiB,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEzD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,0BAAkB,EAAC;QACpE,QAAQ,EAAE,SAAS;QACnB,aAAa;QACb,SAAS;KACV,CAAC,CAAC;IAEH,IAAA,oBAAW,EACT,+BAA+B,QAAQ,eAAe,SAAS,6BAA6B,CAC7F,CAAC;IAEF,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,IAAA,sCAAiB,EAAC;YACtB,MAAM;YACN,QAAQ;YACR,aAAa;YACb,GAAG,iBAAiB;SACrB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,mBAAmB,GAAoC,SAAS,CAAC;IACrE,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,eAAe,CAAC;QAC5D,IAAA,oBAAW,EACT,mCAAmC,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAClE,CAAC;QACF,MAAM,IAAI,GAAG;YACX,QAAQ,EAAE,SAAS;YACnB,SAAS;YACT,WAAW,EAAE,KAAK;YAClB,QAAQ,EAAE,EAAE;YACZ,gBAAgB,EAAE,KAAK;YACvB,GAAG,iBAAiB;SACrB,CAAC;QACF,MAAM,MAAM,GAAG,MAAM;YACnB,CAAC,CAAC,MAAM,IAAA,iCAAY,EAAC;gBACjB,GAAG,IAAI;gBACP,YAAY,EAAE,MAAM;gBACpB,iBAAiB,EAAE,KAAK;aACzB,CAAC;YACJ,CAAC,CAAC,GAAG;gBACH,CAAC,CAAC,MAAM,IAAA,wCAAmB,EAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;gBACtD,CAAC,CAAC,WAAW;oBACX,CAAC,CAAC,MAAM,IAAA,8CAAyB,EAAC;wBAC9B,GAAG,IAAI;wBACP,SAAS,EAAE,MAAM,IAAA,oCAAqB,EACpC,IAAA,8BAAe,GAAE,EACjB,aAAa,EACb,WAAW,CACZ;qBACF,CAAC;oBACJ,CAAC,CAAC,SAAS,CAAC;QAClB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;QACJ,CAAC;QACD,mBAAmB,GAAG;YACpB,kBAAkB,EAAE,MAAM,CAAC,QAAQ;YACnC,KAAK;YACL,WAAW,EAAE,MAAM,CAAC,WAAW;SAChC,CAAC;QACF,IAAA,oBAAW,EAAC,sCAAsC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,qBAAqB,GAAG;QAC5B,MAAM;QACN,QAAQ;QACR,SAAS;QACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/B,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,YAAY,EAAE,WAAW;QACzB,aAAa;QACb,YAAY;QACZ,4BAA4B;QAC5B,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,iBAAiB;KACrB,CAAC;IAEF,MAAM,cAAc,GAAG,KAAK,EAC1B,IAAkC,EACU,EAAE;QAC9C,IAAI,CAAC;YACH,OAAO,MAAM,IAAA,gCAAuB,EAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;YAC5B,MAAM,CAAC,KAAK,CACV,uCAAuC,QAAQ,cAAc,cAAc,eAAe,SAAS,EAAE,CACtG,CAAC;YACF,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9B,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,qBAAqB,CAAC,CAAC;IAEnE,MAAM,UAAU,GAAG,MAAM,IAAA,8CAAqB,EAAC;QAC7C,aAAa,EAAE;YACb,OAAO,EAAE,cAAc,CAAC,OAAO,IAAI,IAAI;YACvC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK;YAC/D,sBAAsB,EAAE,cAAc,CAAC,sBAAsB;YAC7D,OAAO,EAAE,cAAc,CAAC,OAAO;SAChC;QACD,OAAO,EAAE,GAAG,EAAE,CACZ,cAAc,CAAC;YACb,GAAG,qBAAqB;YACxB,YAAY,EAAE,IAAI;SACnB,CAAC;QACJ,UAAU,EAAE,GAAG,EAAE;YACf,IAAA,oBAAW,EACT,6FAA6F,CAC9F,CAAC;YACF,OAAO,cAAc,CAAC;gBACpB,GAAG,qBAAqB;gBACxB,YAAY,EAAE,KAAK;aACpB,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,IAAI,IAAI,CAAC;IAC3C,MAAM,YAAY,GAAG,UAAU,CAAC,YAAY,CAAC;IAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;IAEnC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,gBAAgB,GAAG,kBAAkB,CACzC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,CAClC,CAAC;QACF,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,sCAAsC,gBAAgB,IAAI,WAAW,cAAc,OAAO,CAAC,EAAE,EAAE,CAAC;QACnH,IAAA,oBAAW,EAAC,uBAAuB,UAAU,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,2CAA2C,EAAE;QACjE,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,QAAQ;YACR,SAAS;YACT,SAAS,EAAE,OAAO,EAAE,EAAE;YACtB,YAAY;YACZ,cAAc;SACf;KACF,CAAC,CAAC;IAEH,IAAA,oBAAW,EAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;IAElE,OAAO;QACL,QAAQ;QACR,OAAO;QACP,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChC,CAAC;AACJ,CAAC,CAAC;AAtKW,QAAA,eAAe,mBAsK1B","debugId":"8486a62a-c896-5742-9bfd-907e520447ea"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alwaysmeticulous/remote-replay-launcher",
|
|
3
|
-
"version": "2.331.
|
|
3
|
+
"version": "2.331.2",
|
|
4
4
|
"description": "Executes a remote replay on Meticulous' infrastructure",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
"p-limit": "^3.1.0",
|
|
17
17
|
"systeminformation": "^5.33.1",
|
|
18
18
|
"tar": "^7.5.22",
|
|
19
|
-
"@alwaysmeticulous/
|
|
19
|
+
"@alwaysmeticulous/api": "2.327.0",
|
|
20
|
+
"@alwaysmeticulous/client": "2.331.2",
|
|
20
21
|
"@alwaysmeticulous/common": "2.326.0",
|
|
21
|
-
"@alwaysmeticulous/tunnels-client": "2.326.0"
|
|
22
|
-
"@alwaysmeticulous/api": "2.327.0"
|
|
22
|
+
"@alwaysmeticulous/tunnels-client": "2.326.0"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@types/dockerode": "^4.0.1",
|