@alwaysmeticulous/cli 2.299.0 → 2.303.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-utils/detect-upload-mode.d.ts +12 -0
- package/dist/command-utils/detect-upload-mode.d.ts.map +1 -0
- package/dist/command-utils/detect-upload-mode.js +27 -0
- package/dist/command-utils/detect-upload-mode.js.map +1 -0
- package/dist/command-utils/detect-upload-mode.spec.d.ts +2 -0
- package/dist/command-utils/detect-upload-mode.spec.d.ts.map +1 -0
- package/dist/command-utils/detect-upload-mode.spec.js +30 -0
- package/dist/command-utils/detect-upload-mode.spec.js.map +1 -0
- package/dist/command-utils/parse-container-env.d.ts +9 -0
- package/dist/command-utils/parse-container-env.d.ts.map +1 -0
- package/dist/command-utils/parse-container-env.js +23 -0
- package/dist/command-utils/parse-container-env.js.map +1 -0
- package/dist/command-utils/parse-rewrites.d.ts +2 -2
- package/dist/command-utils/parse-rewrites.d.ts.map +1 -1
- package/dist/command-utils/parse-rewrites.js +11 -16
- package/dist/command-utils/parse-rewrites.js.map +1 -1
- package/dist/command-utils/sentry.utils.js +3 -4
- package/dist/command-utils/sentry.utils.js.map +1 -1
- package/dist/commands/agent/build-git-options.d.ts +69 -0
- package/dist/commands/agent/build-git-options.d.ts.map +1 -0
- package/dist/commands/agent/build-git-options.js +148 -0
- package/dist/commands/agent/build-git-options.js.map +1 -0
- package/dist/commands/agent/build-git-options.spec.d.ts +2 -0
- package/dist/commands/agent/build-git-options.spec.d.ts.map +1 -0
- package/dist/commands/agent/build-git-options.spec.js +226 -0
- package/dist/commands/agent/build-git-options.spec.js.map +1 -0
- package/dist/commands/agent/index.d.ts.map +1 -1
- package/dist/commands/agent/index.js +12 -3
- package/dist/commands/agent/index.js.map +1 -1
- package/dist/commands/agent/js-coverage-diff.command.d.ts +2 -0
- package/dist/commands/agent/js-coverage-diff.command.d.ts.map +1 -1
- package/dist/commands/agent/js-coverage-diff.command.js +16 -4
- package/dist/commands/agent/js-coverage-diff.command.js.map +1 -1
- package/dist/commands/agent/js-coverage.command.d.ts +13 -1
- package/dist/commands/agent/js-coverage.command.d.ts.map +1 -1
- package/dist/commands/agent/js-coverage.command.js +187 -38
- package/dist/commands/agent/js-coverage.command.js.map +1 -1
- package/dist/commands/agent/js-coverage.command.spec.d.ts +2 -0
- package/dist/commands/agent/js-coverage.command.spec.d.ts.map +1 -0
- package/dist/commands/agent/js-coverage.command.spec.js +89 -0
- package/dist/commands/agent/js-coverage.command.spec.js.map +1 -0
- package/dist/commands/agent/test-run-diffs.command.d.ts +1 -2
- package/dist/commands/agent/test-run-diffs.command.d.ts.map +1 -1
- package/dist/commands/agent/test-run-diffs.command.js +27 -34
- package/dist/commands/agent/test-run-diffs.command.js.map +1 -1
- package/dist/commands/agent/test-run-for-commit.command.d.ts +1 -0
- package/dist/commands/agent/test-run-for-commit.command.d.ts.map +1 -1
- package/dist/commands/agent/test-run-for-commit.command.js +40 -15
- package/dist/commands/agent/test-run-for-commit.command.js.map +1 -1
- package/dist/commands/agent/trigger-test-run.command.d.ts +16 -0
- package/dist/commands/agent/trigger-test-run.command.d.ts.map +1 -0
- package/dist/commands/agent/trigger-test-run.command.js +209 -0
- package/dist/commands/agent/trigger-test-run.command.js.map +1 -0
- package/dist/commands/agent/upload-build.command.d.ts +19 -0
- package/dist/commands/agent/upload-build.command.d.ts.map +1 -0
- package/dist/commands/agent/upload-build.command.js +134 -0
- package/dist/commands/agent/upload-build.command.js.map +1 -0
- package/dist/commands/auth/__tests__/login.command.spec.js +39 -2
- package/dist/commands/auth/__tests__/login.command.spec.js.map +1 -1
- package/dist/commands/auth/login.command.d.ts +1 -0
- package/dist/commands/auth/login.command.d.ts.map +1 -1
- package/dist/commands/auth/login.command.js +40 -10
- package/dist/commands/auth/login.command.js.map +1 -1
- package/dist/commands/auth/set-project.command.d.ts.map +1 -1
- package/dist/commands/auth/set-project.command.js +10 -4
- package/dist/commands/auth/set-project.command.js.map +1 -1
- package/dist/commands/ci/deprecated-trigger-options.d.ts +19 -0
- package/dist/commands/ci/deprecated-trigger-options.d.ts.map +1 -0
- package/dist/commands/ci/deprecated-trigger-options.js +37 -0
- package/dist/commands/ci/deprecated-trigger-options.js.map +1 -0
- package/dist/commands/ci/resolve-git-options.d.ts +0 -1
- package/dist/commands/ci/resolve-git-options.d.ts.map +1 -1
- package/dist/commands/ci/resolve-git-options.js +3 -4
- package/dist/commands/ci/resolve-git-options.js.map +1 -1
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.d.ts.map +1 -1
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js +3 -4
- package/dist/commands/ci/run-with-uploaded-asset-chunks.command.js.map +1 -1
- package/dist/commands/ci/trigger-test-run.core.d.ts +16 -0
- package/dist/commands/ci/trigger-test-run.core.d.ts.map +1 -0
- package/dist/commands/ci/trigger-test-run.core.js +194 -0
- package/dist/commands/ci/trigger-test-run.core.js.map +1 -0
- package/dist/commands/ci/trigger-test-run.types.d.ts +31 -0
- package/dist/commands/ci/trigger-test-run.types.d.ts.map +1 -0
- package/dist/commands/ci/trigger-test-run.types.js +6 -0
- package/dist/commands/ci/trigger-test-run.types.js.map +1 -0
- package/dist/commands/ci/upload-assets.command.d.ts +0 -1
- package/dist/commands/ci/upload-assets.command.d.ts.map +1 -1
- package/dist/commands/ci/upload-assets.command.js +16 -124
- package/dist/commands/ci/upload-assets.command.js.map +1 -1
- package/dist/commands/ci/upload-container.command.d.ts +0 -1
- package/dist/commands/ci/upload-container.command.d.ts.map +1 -1
- package/dist/commands/ci/upload-container.command.js +18 -131
- package/dist/commands/ci/upload-container.command.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +5 -3
- package/dist/main.js.map +1 -1
- package/dist/utils/__tests__/select-project.spec.js +47 -2
- package/dist/utils/__tests__/select-project.spec.js.map +1 -1
- package/dist/utils/cli-user-error.d.ts +3 -1
- package/dist/utils/cli-user-error.d.ts.map +1 -1
- package/dist/utils/cli-user-error.js +5 -14
- package/dist/utils/cli-user-error.js.map +1 -1
- package/dist/utils/resolve-test-run-from-commit.d.ts +31 -5
- package/dist/utils/resolve-test-run-from-commit.d.ts.map +1 -1
- package/dist/utils/resolve-test-run-from-commit.js +59 -19
- package/dist/utils/resolve-test-run-from-commit.js.map +1 -1
- package/dist/utils/select-project.d.ts +9 -3
- package/dist/utils/select-project.d.ts.map +1 -1
- package/dist/utils/select-project.js +30 -7
- package/dist/utils/select-project.js.map +1 -1
- package/package.json +12 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-run-diffs.command.js","sources":["../../../src/commands/agent/test-run-diffs.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AACA,qDAKkC;AAClC,
|
|
1
|
+
{"version":3,"file":"test-run-diffs.command.js","sources":["../../../src/commands/agent/test-run-diffs.command.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"3f2d4806-c07a-5b11-81a1-b22cc1229f10"}
|
|
@@ -2,6 +2,7 @@ import type { CommandModule } from "yargs";
|
|
|
2
2
|
interface Options {
|
|
3
3
|
apiToken?: string | null | undefined;
|
|
4
4
|
commitSha: string | undefined;
|
|
5
|
+
dontWaitForTestRunToComplete: boolean;
|
|
5
6
|
json: boolean;
|
|
6
7
|
}
|
|
7
8
|
export declare const testRunForCommitCommand: CommandModule<unknown, Options>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-run-for-commit.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/test-run-for-commit.command.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"test-run-for-commit.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/test-run-for-commit.command.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAU3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACrC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,4BAA4B,EAAE,OAAO,CAAC;IACtC,IAAI,EAAE,OAAO,CAAC;CACf;AA2ED,eAAO,MAAM,uBAAuB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAwBnE,CAAC"}
|
|
@@ -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]="106e24d1-f4bf-55ce-9a8d-d59b540fbb2e")}catch(e){}}();
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.testRunForCommitCommand = void 0;
|
|
@@ -9,15 +9,17 @@ const sentry_utils_1 = require("../../command-utils/sentry.utils");
|
|
|
9
9
|
const cli_user_error_1 = require("../../utils/cli-user-error");
|
|
10
10
|
const resolve_project_identifier_1 = require("../../utils/resolve-project-identifier");
|
|
11
11
|
const resolve_test_run_from_commit_1 = require("../../utils/resolve-test-run-from-commit");
|
|
12
|
-
const
|
|
13
|
-
const handler = async ({ apiToken, commitSha, json, }) => {
|
|
14
|
-
(0, common_1.initLogger)();
|
|
12
|
+
const handler = async ({ apiToken, commitSha, dontWaitForTestRunToComplete, json, }) => {
|
|
15
13
|
// Default to the current checkout's HEAD so the command can be run with no
|
|
16
14
|
// arguments to auto-infer the test run for the working tree.
|
|
17
15
|
const resolvedCommitSha = await (0, common_1.getCommitSha)(commitSha);
|
|
18
16
|
if (!resolvedCommitSha) {
|
|
19
17
|
throw new cli_user_error_1.CliUserError("Could not determine a commit SHA. Pass --commitSha or run inside a git repository.");
|
|
20
18
|
}
|
|
19
|
+
// The lookup is by commit, so warn when the local tree is dirty (the run is
|
|
20
|
+
// resolved for HEAD, not the uncommitted changes), matching trigger-test-run /
|
|
21
|
+
// test-run-diffs.
|
|
22
|
+
await (0, resolve_test_run_from_commit_1.logResolvedCommitSha)(commitSha, resolvedCommitSha);
|
|
21
23
|
const apiToken_ = await (0, client_1.resolveApiTokenWithOAuth)({
|
|
22
24
|
apiToken,
|
|
23
25
|
enableOAuthLogin: true,
|
|
@@ -25,24 +27,42 @@ const handler = async ({ apiToken, commitSha, json, }) => {
|
|
|
25
27
|
// Project-scoped tokens pin the project (resolves to `{}`); OAuth tokens use
|
|
26
28
|
// the project chosen via `meticulous auth set-project`.
|
|
27
29
|
const { projectId } = (0, resolve_project_identifier_1.resolveProjectIdentifier)(apiToken_);
|
|
28
|
-
const client = (0, client_1.
|
|
30
|
+
const client = await (0, client_1.createClientWithOAuth)({
|
|
31
|
+
apiToken,
|
|
32
|
+
enableOAuthLogin: true,
|
|
33
|
+
});
|
|
29
34
|
const result = await (0, client_1.getTestRunForCommit)(client, resolvedCommitSha, {
|
|
30
35
|
projectId,
|
|
31
36
|
});
|
|
32
|
-
if (
|
|
33
|
-
|
|
37
|
+
if (result.testRunId == null) {
|
|
38
|
+
if (json) {
|
|
39
|
+
console.log(JSON.stringify(result, null, 2));
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
(0, common_1.logNotice)(`No test run found for commit ${resolvedCommitSha}`);
|
|
34
43
|
return;
|
|
35
44
|
}
|
|
36
|
-
|
|
37
|
-
|
|
45
|
+
// Block until the run finishes (default) so the reported run is a finished
|
|
46
|
+
// verdict; with --dontWaitForTestRunToComplete, return the current (possibly
|
|
47
|
+
// in-progress) run immediately. throwOnFailure is false: this command just
|
|
48
|
+
// resolves an id, so a failed run's id is still reported.
|
|
49
|
+
let status = result.status;
|
|
50
|
+
if (!dontWaitForTestRunToComplete &&
|
|
51
|
+
status != null &&
|
|
52
|
+
(0, resolve_test_run_from_commit_1.isTestRunInProgress)(status)) {
|
|
53
|
+
status = await (0, resolve_test_run_from_commit_1.awaitTestRunCompletion)(client, result.testRunId, {
|
|
54
|
+
throwOnFailure: false,
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
if (json) {
|
|
58
|
+
console.log(JSON.stringify({ ...result, status }, null, 2));
|
|
38
59
|
return;
|
|
39
60
|
}
|
|
61
|
+
(0, common_1.logProgress)(`testRunId: ${result.testRunId}`);
|
|
40
62
|
console.log(result.testRunId);
|
|
41
|
-
if (
|
|
42
|
-
//
|
|
43
|
-
|
|
44
|
-
// js-coverage) each have their own --waitForTestRunToComplete to block on it.
|
|
45
|
-
log(`Test run is not complete (status: ${result.status}).`);
|
|
63
|
+
if (status != null && (0, resolve_test_run_from_commit_1.isTestRunInProgress)(status)) {
|
|
64
|
+
// Reached only with --dontWaitForTestRunToComplete on an unfinished run.
|
|
65
|
+
(0, common_1.logNotice)(`Test run ${result.testRunId} is not complete (status: ${status}).`);
|
|
46
66
|
}
|
|
47
67
|
};
|
|
48
68
|
exports.testRunForCommitCommand = {
|
|
@@ -54,6 +74,11 @@ exports.testRunForCommitCommand = {
|
|
|
54
74
|
string: true,
|
|
55
75
|
description: "Commit SHA to look up. Defaults to the current git HEAD when omitted.",
|
|
56
76
|
},
|
|
77
|
+
dontWaitForTestRunToComplete: {
|
|
78
|
+
boolean: true,
|
|
79
|
+
default: false,
|
|
80
|
+
description: "Return the latest run immediately instead of the default of blocking until it finishes; an unfinished run is then reported as not complete.",
|
|
81
|
+
},
|
|
57
82
|
json: {
|
|
58
83
|
boolean: true,
|
|
59
84
|
description: "Output the raw response as JSON",
|
|
@@ -63,4 +88,4 @@ exports.testRunForCommitCommand = {
|
|
|
63
88
|
handler: (0, sentry_utils_1.wrapHandler)(handler),
|
|
64
89
|
};
|
|
65
90
|
//# sourceMappingURL=test-run-for-commit.command.js.map
|
|
66
|
-
//# debugId=
|
|
91
|
+
//# debugId=106e24d1-f4bf-55ce-9a8d-d59b540fbb2e
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-run-for-commit.command.js","sources":["../../../src/commands/agent/test-run-for-commit.command.ts"],"sourceRoot":"","names":[],"mappings":";;;;;AAAA,qDAIkC;AAClC,
|
|
1
|
+
{"version":3,"file":"test-run-for-commit.command.js","sources":["../../../src/commands/agent/test-run-for-commit.command.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"106e24d1-f4bf-55ce-9a8d-d59b540fbb2e"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { CommandModule } from "yargs";
|
|
2
|
+
interface Options {
|
|
3
|
+
apiToken?: string | undefined;
|
|
4
|
+
deploymentId?: string | undefined;
|
|
5
|
+
commitSha?: string | undefined;
|
|
6
|
+
baseSha?: string | undefined;
|
|
7
|
+
gitDiffOutput?: string | undefined;
|
|
8
|
+
repoDirectory?: string | undefined;
|
|
9
|
+
sessionIds?: string | undefined;
|
|
10
|
+
dontWaitForTestRunToComplete: boolean;
|
|
11
|
+
json: boolean;
|
|
12
|
+
dryRun?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare const triggerTestRunCommand: CommandModule<unknown, Options>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=trigger-test-run.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger-test-run.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/trigger-test-run.command.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAe3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,4BAA4B,EAAE,OAAO,CAAC;IACtC,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAuLD,eAAO,MAAM,qBAAqB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CA8DjE,CAAC"}
|
|
@@ -0,0 +1,209 @@
|
|
|
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]="74160e7f-d757-59fa-91b7-79b4d35ef74c")}catch(e){}}();
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.triggerTestRunCommand = void 0;
|
|
6
|
+
const client_1 = require("@alwaysmeticulous/client");
|
|
7
|
+
const common_1 = require("@alwaysmeticulous/common");
|
|
8
|
+
const remote_replay_launcher_1 = require("@alwaysmeticulous/remote-replay-launcher");
|
|
9
|
+
const common_options_1 = require("../../command-utils/common-options");
|
|
10
|
+
const sentry_utils_1 = require("../../command-utils/sentry.utils");
|
|
11
|
+
const cli_user_error_1 = require("../../utils/cli-user-error");
|
|
12
|
+
const out_of_date_client_error_1 = require("../../utils/out-of-date-client-error");
|
|
13
|
+
const resolve_project_identifier_1 = require("../../utils/resolve-project-identifier");
|
|
14
|
+
const resolve_test_run_from_commit_1 = require("../../utils/resolve-test-run-from-commit");
|
|
15
|
+
const build_git_options_1 = require("./build-git-options");
|
|
16
|
+
const handler = async ({ apiToken, deploymentId, commitSha: commitSha_, baseSha: baseSha_, gitDiffOutput: gitDiffOutput_, repoDirectory, sessionIds: sessionIds_, dontWaitForTestRunToComplete, json, dryRun, }) => {
|
|
17
|
+
if (deploymentId && commitSha_) {
|
|
18
|
+
throw new cli_user_error_1.CliUserError("--deploymentId and --commitSha are mutually exclusive. Pass --deploymentId for a build from 'agent upload-build', " +
|
|
19
|
+
"or --commitSha to find an existing deployment already uploaded for that commit.");
|
|
20
|
+
}
|
|
21
|
+
// With neither given, fall back to the local repo's HEAD commit, on the
|
|
22
|
+
// assumption a deployment was already uploaded for it elsewhere (e.g. by CI).
|
|
23
|
+
let commitSha = commitSha_;
|
|
24
|
+
if (!deploymentId && !commitSha) {
|
|
25
|
+
commitSha = await (0, build_git_options_1.resolveHeadCommitShaForLookup)({ repoDirectory });
|
|
26
|
+
}
|
|
27
|
+
// Session IDs never contain commas (they are `<ISO timestamp>_<nanoid>` with
|
|
28
|
+
// optional `_p`/`_sl`/`_mut` suffixes), so a comma split is unambiguous.
|
|
29
|
+
const sessionIds = sessionIds_
|
|
30
|
+
?.split(",")
|
|
31
|
+
.map((id) => id.trim())
|
|
32
|
+
.filter((id) => id.length > 0);
|
|
33
|
+
// Reject an explicitly-provided-but-empty list (e.g. --sessionIds "" or
|
|
34
|
+
// --sessionIds ",,,") rather than silently falling back to the golden set:
|
|
35
|
+
// the caller asked to pin sessions but named none, which is a mistake.
|
|
36
|
+
if (sessionIds_ != null && (!sessionIds || sessionIds.length === 0)) {
|
|
37
|
+
throw new cli_user_error_1.CliUserError("--sessionIds was provided but contains no session IDs. Omit --sessionIds to use the project's auto-selected sessions.");
|
|
38
|
+
}
|
|
39
|
+
// Reject duplicates rather than silently de-duplicating: a repeated session ID
|
|
40
|
+
// is a caller mistake, and quietly dropping it would mask it.
|
|
41
|
+
if (sessionIds && sessionIds.length !== new Set(sessionIds).size) {
|
|
42
|
+
const duplicates = [
|
|
43
|
+
...new Set(sessionIds.filter((id, index) => sessionIds.indexOf(id) !== index)),
|
|
44
|
+
];
|
|
45
|
+
throw new cli_user_error_1.CliUserError(`--sessionIds contains duplicate session ID(s): ${duplicates.join(", ")}`);
|
|
46
|
+
}
|
|
47
|
+
const { baseSha, gitDiffOutput, head, headIsEphemeral } = await (0, build_git_options_1.resolveComparisonOptions)({
|
|
48
|
+
baseSha: baseSha_,
|
|
49
|
+
gitDiffOutput: gitDiffOutput_,
|
|
50
|
+
repoDirectory,
|
|
51
|
+
});
|
|
52
|
+
// A git diff must be uploaded to a specific deployment before the trigger
|
|
53
|
+
// call, so --commitSha (resolved to a deployment server-side, at trigger
|
|
54
|
+
// time) can't be combined with one — whether passed explicitly via
|
|
55
|
+
// --gitDiffOutput or inferred from --repoDirectory / the local repo.
|
|
56
|
+
if (gitDiffOutput && !deploymentId) {
|
|
57
|
+
throw new cli_user_error_1.CliUserError("A git diff requires an explicit --deploymentId (from 'agent upload-build'); it cannot be combined with --commitSha. " +
|
|
58
|
+
"Pass --baseSha instead of --repoDirectory (or without any repo-inference flags) to avoid inferring a diff.");
|
|
59
|
+
}
|
|
60
|
+
// A test run is only useful with a base to compare against, and the backend
|
|
61
|
+
// refuses to create a baseless run, so require a base up front.
|
|
62
|
+
if (!baseSha) {
|
|
63
|
+
throw new cli_user_error_1.CliUserError("A base is required: pass --baseSha, or --repoDirectory to infer it from the merge-base with the origin default branch.");
|
|
64
|
+
}
|
|
65
|
+
// When the head is the base itself and there's no diff (e.g. running on the
|
|
66
|
+
// default branch with no new commits), there is nothing to test — report it
|
|
67
|
+
// clearly instead of letting the backend reject with a 422. `head` is only
|
|
68
|
+
// known here when inferred from a local repo (--repoDirectory); `commitSha`
|
|
69
|
+
// is an explicit alternative source of the head commit that lets us catch
|
|
70
|
+
// this early too, without a network round trip to resolve the deployment
|
|
71
|
+
// first (gitDiffOutput is already guaranteed absent when commitSha is used,
|
|
72
|
+
// per the check above).
|
|
73
|
+
const effectiveHead = head ?? commitSha;
|
|
74
|
+
if (effectiveHead && baseSha === effectiveHead && !gitDiffOutput) {
|
|
75
|
+
(0, common_1.logNotice)("Base SHA equals head SHA and there are no changes to test — nothing to do.");
|
|
76
|
+
// Keep stdout machine-readable: emit the empty result so `--json` callers
|
|
77
|
+
// that JSON.parse(stdout) don't crash on an empty short-circuit.
|
|
78
|
+
if (json) {
|
|
79
|
+
console.log(JSON.stringify({ testRunId: null, status: null }, null, 2));
|
|
80
|
+
}
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
const deploymentDescriptor = deploymentId
|
|
84
|
+
? `deployment ${deploymentId}`
|
|
85
|
+
: `the deployment for commit ${commitSha}`;
|
|
86
|
+
if (dryRun) {
|
|
87
|
+
(0, common_1.logNotice)(`Dry run: would trigger a test run for ${deploymentDescriptor} (base: ${baseSha})` +
|
|
88
|
+
(sessionIds && sessionIds.length > 0
|
|
89
|
+
? ` for ${sessionIds.length} explicitly-specified session(s)`
|
|
90
|
+
: ""));
|
|
91
|
+
if (json) {
|
|
92
|
+
console.log(JSON.stringify({ testRunId: null, status: null }, null, 2));
|
|
93
|
+
}
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
const apiToken_ = await (0, client_1.resolveApiTokenWithOAuth)({
|
|
97
|
+
apiToken,
|
|
98
|
+
enableOAuthLogin: true,
|
|
99
|
+
});
|
|
100
|
+
const projectIdentifier = (0, resolve_project_identifier_1.resolveProjectIdentifier)(apiToken_);
|
|
101
|
+
(0, common_1.logProgress)(`Triggering test run for ${deploymentDescriptor}...`);
|
|
102
|
+
let testRunId;
|
|
103
|
+
try {
|
|
104
|
+
const { testRun, headCommitSha } = await (0, remote_replay_launcher_1.triggerTestRun)({
|
|
105
|
+
apiToken: apiToken_,
|
|
106
|
+
...(deploymentId ? { deploymentId } : { commitSha }),
|
|
107
|
+
baseSha,
|
|
108
|
+
...(gitDiffOutput ? { gitDiffOutput } : {}),
|
|
109
|
+
...(sessionIds && sessionIds.length > 0 ? { sessionIds } : {}),
|
|
110
|
+
...projectIdentifier,
|
|
111
|
+
});
|
|
112
|
+
testRunId = testRun?.id ?? null;
|
|
113
|
+
// The diff was computed against `head`, but the run executes the
|
|
114
|
+
// deployment's commit. If they differ (e.g. the working tree changed
|
|
115
|
+
// between 'upload-build' and 'trigger-test-run'), the diff may not match
|
|
116
|
+
// the build that actually ran. Skipped for dirty trees: `head` is then an
|
|
117
|
+
// ephemeral stash SHA that differs between invocations for identical
|
|
118
|
+
// content, so the comparison would be a false positive.
|
|
119
|
+
if (!headIsEphemeral && head && headCommitSha && head !== headCommitSha) {
|
|
120
|
+
(0, common_1.logNotice)(`Warning: git diff was computed against ${head}, but the deployment runs ${headCommitSha}. ` +
|
|
121
|
+
`The diff may not match the build under test — re-run 'agent upload-build' for the current tree if this is unexpected.`);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
if ((0, out_of_date_client_error_1.isOutOfDateClientError)(error)) {
|
|
126
|
+
throw new out_of_date_client_error_1.OutOfDateCLIError();
|
|
127
|
+
}
|
|
128
|
+
throw error;
|
|
129
|
+
}
|
|
130
|
+
if (testRunId) {
|
|
131
|
+
(0, common_1.logProgress)(`testRunId: ${testRunId}`);
|
|
132
|
+
}
|
|
133
|
+
let status = null;
|
|
134
|
+
if (!dontWaitForTestRunToComplete && testRunId) {
|
|
135
|
+
// Use an OAuth-refreshing client: the wait can poll for minutes, longer than
|
|
136
|
+
// a short-lived OAuth access token lives, so a baked-in token would expire
|
|
137
|
+
// mid-poll (surfacing as a 404 on the test-run lookup). awaitTestRunCompletion
|
|
138
|
+
// prints the single "Waiting for test run X to complete..." line.
|
|
139
|
+
const client = await (0, client_1.createClientWithOAuth)({
|
|
140
|
+
apiToken,
|
|
141
|
+
enableOAuthLogin: true,
|
|
142
|
+
});
|
|
143
|
+
status = await (0, resolve_test_run_from_commit_1.awaitTestRunCompletion)(client, testRunId);
|
|
144
|
+
(0, common_1.logProgress)(`Status: ${status} (${status === "Failure" ? "has" : "no"} diffs)`);
|
|
145
|
+
}
|
|
146
|
+
if (json) {
|
|
147
|
+
console.log(JSON.stringify({ testRunId, status }, null, 2));
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
if (testRunId) {
|
|
151
|
+
console.log(testRunId);
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
exports.triggerTestRunCommand = {
|
|
155
|
+
command: "trigger-test-run",
|
|
156
|
+
describe: "Trigger a test run against a deployment created by 'agent upload-build'",
|
|
157
|
+
builder: {
|
|
158
|
+
apiToken: common_options_1.OPTIONS.apiToken,
|
|
159
|
+
deploymentId: {
|
|
160
|
+
string: true,
|
|
161
|
+
description: "The deployment to test, as returned by 'agent upload-build'. Mutually exclusive with --commitSha. " +
|
|
162
|
+
"When both are omitted, the local repo's HEAD commit is used to look up an existing deployment (requires a clean working tree).",
|
|
163
|
+
},
|
|
164
|
+
commitSha: {
|
|
165
|
+
string: true,
|
|
166
|
+
description: "Alternative to --deploymentId: finds the most recent deployment already uploaded for this commit in the project " +
|
|
167
|
+
"(e.g. by an earlier CI run). Useful for re-running against a commit that has already gone through Meticulous, " +
|
|
168
|
+
"e.g. to test the coverage impact of --sessionIds. Cannot be combined with a git diff (--gitDiffOutput, or inferred via --repoDirectory). " +
|
|
169
|
+
"When both this and --deploymentId are omitted, defaults to the local repo's HEAD commit (requires a clean working tree).",
|
|
170
|
+
},
|
|
171
|
+
baseSha: {
|
|
172
|
+
string: true,
|
|
173
|
+
description: "The base commit SHA to compare against. Cannot be combined with --repoDirectory. " +
|
|
174
|
+
"If omitted (and no --repoDirectory), it is inferred from the local repo (the current directory).",
|
|
175
|
+
},
|
|
176
|
+
gitDiffOutput: {
|
|
177
|
+
string: true,
|
|
178
|
+
description: "Raw git diff output between the base and the deployment's commit. Requires --baseSha. Cannot be combined with --repoDirectory.",
|
|
179
|
+
},
|
|
180
|
+
repoDirectory: {
|
|
181
|
+
string: true,
|
|
182
|
+
description: "Path to a git repository. Infers --baseSha (merge-base with the origin default branch) and --gitDiffOutput (base..head). Cannot be combined with --baseSha or --gitDiffOutput. Defaults to the current directory when no comparison inputs are given.",
|
|
183
|
+
},
|
|
184
|
+
sessionIds: {
|
|
185
|
+
string: true,
|
|
186
|
+
description: "Comma-separated list of session IDs to replay (for both base and head), instead of the project's auto-selected sessions. " +
|
|
187
|
+
"When omitted, the project's auto-selected ('golden set') sessions are used.",
|
|
188
|
+
},
|
|
189
|
+
dontWaitForTestRunToComplete: {
|
|
190
|
+
boolean: true,
|
|
191
|
+
default: false,
|
|
192
|
+
description: "Return as soon as the run is triggered, instead of the default of blocking until it finishes. " +
|
|
193
|
+
"The base test run is set up by the backend in parallel with the head, so there is no separate base-wait step.",
|
|
194
|
+
},
|
|
195
|
+
json: {
|
|
196
|
+
boolean: true,
|
|
197
|
+
default: false,
|
|
198
|
+
description: "Output the result ({ testRunId, status }) as JSON.",
|
|
199
|
+
},
|
|
200
|
+
dryRun: {
|
|
201
|
+
boolean: true,
|
|
202
|
+
default: false,
|
|
203
|
+
description: "Print what would be triggered, without triggering a test run.",
|
|
204
|
+
},
|
|
205
|
+
},
|
|
206
|
+
handler: (0, sentry_utils_1.wrapHandler)(handler),
|
|
207
|
+
};
|
|
208
|
+
//# sourceMappingURL=trigger-test-run.command.js.map
|
|
209
|
+
//# debugId=74160e7f-d757-59fa-91b7-79b4d35ef74c
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trigger-test-run.command.js","sources":["../../../src/commands/agent/trigger-test-run.command.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"74160e7f-d757-59fa-91b7-79b4d35ef74c"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { type ContainerEnvVariable } from "@alwaysmeticulous/client";
|
|
2
|
+
import type { CommandModule } from "yargs";
|
|
3
|
+
interface Options {
|
|
4
|
+
apiToken?: string | undefined;
|
|
5
|
+
commitSha?: string | undefined;
|
|
6
|
+
repoDirectory?: string | undefined;
|
|
7
|
+
appDirectory?: string | undefined;
|
|
8
|
+
appZip?: string | undefined;
|
|
9
|
+
rewrites?: string;
|
|
10
|
+
localImageTag?: string | undefined;
|
|
11
|
+
containerPort?: number | undefined;
|
|
12
|
+
containerEnv?: ContainerEnvVariable[] | undefined;
|
|
13
|
+
containerHealthCheckEndpoint?: string | undefined;
|
|
14
|
+
json: boolean;
|
|
15
|
+
dryRun?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare const uploadBuildCommand: CommandModule<unknown, Options>;
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=upload-build.command.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload-build.command.d.ts","sourceRoot":"","sources":["../../../src/commands/agent/upload-build.command.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,oBAAoB,EAE1B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAa3C,UAAU,OAAO;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,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,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AA6FD,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC,OAAO,EAAE,OAAO,CAmE9D,CAAC"}
|
|
@@ -0,0 +1,134 @@
|
|
|
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]="2e962d36-4820-51df-8d81-814d3d68ae45")}catch(e){}}();
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.uploadBuildCommand = void 0;
|
|
6
|
+
const client_1 = require("@alwaysmeticulous/client");
|
|
7
|
+
const common_1 = require("@alwaysmeticulous/common");
|
|
8
|
+
const remote_replay_launcher_1 = require("@alwaysmeticulous/remote-replay-launcher");
|
|
9
|
+
const common_options_1 = require("../../command-utils/common-options");
|
|
10
|
+
const parse_container_env_1 = require("../../command-utils/parse-container-env");
|
|
11
|
+
const parse_rewrites_1 = require("../../command-utils/parse-rewrites");
|
|
12
|
+
const sentry_utils_1 = require("../../command-utils/sentry.utils");
|
|
13
|
+
const out_of_date_client_error_1 = require("../../utils/out-of-date-client-error");
|
|
14
|
+
const resolve_project_identifier_1 = require("../../utils/resolve-project-identifier");
|
|
15
|
+
const build_git_options_1 = require("./build-git-options");
|
|
16
|
+
const detect_upload_mode_1 = require("../../command-utils/detect-upload-mode");
|
|
17
|
+
const handler = async ({ apiToken, commitSha: commitSha_, repoDirectory, appDirectory, appZip, rewrites, localImageTag, containerPort, containerEnv, containerHealthCheckEndpoint, json, dryRun, }) => {
|
|
18
|
+
const mode = (0, detect_upload_mode_1.detectUploadMode)({ localImageTag, appDirectory, appZip });
|
|
19
|
+
const { commitSha, source: commitShaSource } = await (0, build_git_options_1.resolveBuildCommitSha)({
|
|
20
|
+
commitSha: commitSha_,
|
|
21
|
+
repoDirectory,
|
|
22
|
+
});
|
|
23
|
+
if (dryRun) {
|
|
24
|
+
const what = mode === "container"
|
|
25
|
+
? `container image "${localImageTag}"`
|
|
26
|
+
: `assets from ${appDirectory ?? appZip}`;
|
|
27
|
+
(0, common_1.logNotice)(`Dry run: would upload ${what} and register a deployment for commit ${commitSha}`);
|
|
28
|
+
// Keep stdout machine-readable: emit the result shape (no deployment was
|
|
29
|
+
// registered) so `--json` callers that JSON.parse(stdout) don't crash on an
|
|
30
|
+
// empty short-circuit, mirroring `trigger-test-run`'s dry-run output.
|
|
31
|
+
if (json) {
|
|
32
|
+
console.log(JSON.stringify({ deploymentId: null, commitSha, commitShaSource }, null, 2));
|
|
33
|
+
}
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
const apiToken_ = await (0, client_1.resolveApiTokenWithOAuth)({
|
|
37
|
+
apiToken,
|
|
38
|
+
enableOAuthLogin: true,
|
|
39
|
+
});
|
|
40
|
+
const projectIdentifier = (0, resolve_project_identifier_1.resolveProjectIdentifier)(apiToken_);
|
|
41
|
+
let result;
|
|
42
|
+
try {
|
|
43
|
+
result = await (0, remote_replay_launcher_1.uploadBuild)({
|
|
44
|
+
apiToken: apiToken_,
|
|
45
|
+
commitSha,
|
|
46
|
+
appDirectory,
|
|
47
|
+
appZip,
|
|
48
|
+
rewrites: (0, parse_rewrites_1.parseRewrites)(rewrites),
|
|
49
|
+
localImageTag,
|
|
50
|
+
containerPort,
|
|
51
|
+
containerEnv,
|
|
52
|
+
containerHealthCheckEndpoint,
|
|
53
|
+
...projectIdentifier,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
if ((0, out_of_date_client_error_1.isOutOfDateClientError)(error)) {
|
|
58
|
+
throw new out_of_date_client_error_1.OutOfDateCLIError();
|
|
59
|
+
}
|
|
60
|
+
throw error;
|
|
61
|
+
}
|
|
62
|
+
if (json) {
|
|
63
|
+
// The endpoint returns only the deploymentId; commitSha (and how it was
|
|
64
|
+
// resolved) is echoed from here for convenience.
|
|
65
|
+
console.log(JSON.stringify({ deploymentId: result.deploymentId, commitSha, commitShaSource }, null, 2));
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
// The bare deploymentId is always printed (stdout) so it can be captured or
|
|
69
|
+
// piped. The labelled deploymentId goes through the logger, so it appears with
|
|
70
|
+
// --verbose (the default for `ci`) and is suppressed otherwise (the default
|
|
71
|
+
// for `agent`), leaving just the bare deploymentId. The commitSha line is
|
|
72
|
+
// logged by resolveBuildCommitSha, where its provenance is known.
|
|
73
|
+
(0, common_1.logProgress)(`deploymentId: ${result.deploymentId}`);
|
|
74
|
+
console.log(result.deploymentId);
|
|
75
|
+
};
|
|
76
|
+
exports.uploadBuildCommand = {
|
|
77
|
+
command: "upload-build",
|
|
78
|
+
describe: "Upload a build (static assets or a Docker container) and register a reusable deployment, without triggering a test run",
|
|
79
|
+
builder: {
|
|
80
|
+
apiToken: common_options_1.OPTIONS.apiToken,
|
|
81
|
+
commitSha: {
|
|
82
|
+
...common_options_1.OPTIONS.commitSha,
|
|
83
|
+
description: "The commit the build is of. Defaults to the current git HEAD (or an ephemeral commit when the tree is dirty). Cannot be combined with --repoDirectory.",
|
|
84
|
+
},
|
|
85
|
+
repoDirectory: {
|
|
86
|
+
string: true,
|
|
87
|
+
description: "Path to a git repository, used to infer --commitSha from HEAD (or an ephemeral commit when dirty). Defaults to the current directory when --commitSha is not given. Cannot be combined with --commitSha.",
|
|
88
|
+
},
|
|
89
|
+
appDirectory: {
|
|
90
|
+
string: true,
|
|
91
|
+
description: "The directory containing the application's static assets (asset upload mode).",
|
|
92
|
+
},
|
|
93
|
+
appZip: {
|
|
94
|
+
string: true,
|
|
95
|
+
description: "The zip file containing the application's static assets (asset upload mode).",
|
|
96
|
+
},
|
|
97
|
+
rewrites: {
|
|
98
|
+
string: true,
|
|
99
|
+
default: "[]",
|
|
100
|
+
description: "URL rewrite rules (asset upload mode). A valid JSON array as described at https://github.com/vercel/serve-handler?tab=readme-ov-file#rewrites-array." +
|
|
101
|
+
' If no rules are passed, we default to \'{ source: "**", destination: "/index.html" }\'.',
|
|
102
|
+
},
|
|
103
|
+
localImageTag: {
|
|
104
|
+
string: true,
|
|
105
|
+
description: "The local Docker image tag to upload, e.g. 'myapp:latest' (container upload mode).",
|
|
106
|
+
},
|
|
107
|
+
containerPort: {
|
|
108
|
+
number: true,
|
|
109
|
+
description: "The port to expose the container on (container upload mode).",
|
|
110
|
+
},
|
|
111
|
+
containerEnv: {
|
|
112
|
+
array: true,
|
|
113
|
+
coerce: parse_container_env_1.parseContainerEnv,
|
|
114
|
+
description: "Environment variables to set in the container, as name=value (container upload mode).",
|
|
115
|
+
},
|
|
116
|
+
containerHealthCheckEndpoint: {
|
|
117
|
+
string: true,
|
|
118
|
+
description: "The endpoint path to use for health checks on the container, e.g. '/health' (container upload mode).",
|
|
119
|
+
},
|
|
120
|
+
json: {
|
|
121
|
+
boolean: true,
|
|
122
|
+
default: false,
|
|
123
|
+
description: "Output the result ({ deploymentId, commitSha }) as JSON.",
|
|
124
|
+
},
|
|
125
|
+
dryRun: {
|
|
126
|
+
boolean: true,
|
|
127
|
+
default: false,
|
|
128
|
+
description: "Print what would be uploaded and registered, without uploading anything.",
|
|
129
|
+
},
|
|
130
|
+
},
|
|
131
|
+
handler: (0, sentry_utils_1.wrapHandler)(handler),
|
|
132
|
+
};
|
|
133
|
+
//# sourceMappingURL=upload-build.command.js.map
|
|
134
|
+
//# debugId=2e962d36-4820-51df-8d81-814d3d68ae45
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload-build.command.js","sources":["../../../src/commands/agent/upload-build.command.ts"],"sourceRoot":"","names":[],"mappings":"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","debugId":"2e962d36-4820-51df-8d81-814d3d68ae45"}
|