@nrwl/nx-cloud 14.0.3-beta.1 → 14.0.3-beta.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/bin/nx-cloud.d.ts +2 -0
- package/bin/nx-cloud.js +43 -0
- package/bin/nx-cloud.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.js +5 -0
- package/index.js.map +1 -0
- package/lib/core/api/run-group.api.d.ts +7 -0
- package/lib/core/api/run-group.api.js +65 -0
- package/lib/core/api/run-group.api.js.map +1 -0
- package/lib/core/commands/clean-up-agents.d.ts +1 -0
- package/lib/core/commands/clean-up-agents.js +34 -0
- package/lib/core/commands/clean-up-agents.js.map +1 -0
- package/lib/core/commands/record-output.d.ts +16 -0
- package/lib/core/commands/record-output.js +203 -0
- package/lib/core/commands/record-output.js.map +1 -0
- package/lib/core/commands/start-ci-run.d.ts +1 -0
- package/lib/core/commands/start-ci-run.js +38 -0
- package/lib/core/commands/start-ci-run.js.map +1 -0
- package/lib/core/commands/stop-all-agents.d.ts +1 -0
- package/lib/core/commands/stop-all-agents.js +37 -0
- package/lib/core/commands/stop-all-agents.js.map +1 -0
- package/lib/core/error/print-run-group-error.d.ts +1 -0
- package/lib/core/error/print-run-group-error.js +16 -0
- package/lib/core/error/print-run-group-error.js.map +1 -0
- package/lib/core/file-storage/e2e-encryption.d.ts +9 -0
- package/lib/core/file-storage/e2e-encryption.js +46 -0
- package/lib/core/file-storage/e2e-encryption.js.map +1 -0
- package/lib/core/file-storage/file-storage.d.ts +13 -0
- package/lib/core/file-storage/file-storage.js +174 -0
- package/lib/core/file-storage/file-storage.js.map +1 -0
- package/lib/core/models/cache-urls.model.d.ts +6 -0
- package/lib/core/models/cache-urls.model.js +3 -0
- package/lib/core/models/cache-urls.model.js.map +1 -0
- package/lib/core/models/cloud-task-runner-options.d.ts +20 -0
- package/lib/core/models/cloud-task-runner-options.js +3 -0
- package/lib/core/models/cloud-task-runner-options.js.map +1 -0
- package/lib/core/models/distributed-agent/grouped-tasks.model.d.ts +6 -0
- package/lib/core/models/distributed-agent/grouped-tasks.model.js +3 -0
- package/lib/core/models/distributed-agent/grouped-tasks.model.js.map +1 -0
- package/lib/core/models/distributed-agent/index.d.ts +3 -0
- package/lib/core/models/distributed-agent/index.js +20 -0
- package/lib/core/models/distributed-agent/index.js.map +1 -0
- package/lib/core/models/distributed-agent/task-to-execute.model.d.ts +7 -0
- package/lib/core/models/distributed-agent/task-to-execute.model.js +3 -0
- package/lib/core/models/distributed-agent/task-to-execute.model.js.map +1 -0
- package/lib/core/models/distributed-agent/tasks-api-response.model.d.ts +9 -0
- package/lib/core/models/distributed-agent/tasks-api-response.model.js +3 -0
- package/lib/core/models/distributed-agent/tasks-api-response.model.js.map +1 -0
- package/lib/core/models/machine-info.model.d.ts +6 -0
- package/lib/core/models/machine-info.model.js +3 -0
- package/lib/core/models/machine-info.model.js.map +1 -0
- package/lib/core/models/run-context.model.d.ts +42 -0
- package/lib/core/models/run-context.model.js +3 -0
- package/lib/core/models/run-context.model.js.map +1 -0
- package/lib/core/models/run-data.model.d.ts +11 -0
- package/lib/core/models/run-data.model.js +3 -0
- package/lib/core/models/run-data.model.js.map +1 -0
- package/lib/core/models/task-execution.model.d.ts +13 -0
- package/lib/core/models/task-execution.model.js +3 -0
- package/lib/core/models/task-execution.model.js.map +1 -0
- package/lib/core/runners/cloud-enabled/cloud-enabled-life-cycle.d.ts +25 -0
- package/lib/core/runners/cloud-enabled/cloud-enabled-life-cycle.js +138 -0
- package/lib/core/runners/cloud-enabled/cloud-enabled-life-cycle.js.map +1 -0
- package/lib/core/runners/cloud-enabled/cloud-enabled.runner.d.ts +4 -0
- package/lib/core/runners/cloud-enabled/cloud-enabled.runner.js +167 -0
- package/lib/core/runners/cloud-enabled/cloud-enabled.runner.js.map +1 -0
- package/lib/core/runners/cloud-enabled/cloud-remote-cache.d.ts +16 -0
- package/lib/core/runners/cloud-enabled/cloud-remote-cache.js +113 -0
- package/lib/core/runners/cloud-enabled/cloud-remote-cache.js.map +1 -0
- package/lib/core/runners/cloud-enabled/cloud-run.api.d.ts +17 -0
- package/lib/core/runners/cloud-enabled/cloud-run.api.js +158 -0
- package/lib/core/runners/cloud-enabled/cloud-run.api.js.map +1 -0
- package/lib/core/runners/distributed-agent/distributed-agent.api.d.ts +13 -0
- package/lib/core/runners/distributed-agent/distributed-agent.api.js +79 -0
- package/lib/core/runners/distributed-agent/distributed-agent.api.js.map +1 -0
- package/lib/core/runners/distributed-agent/distributed-agent.impl.d.ts +1 -0
- package/lib/core/runners/distributed-agent/distributed-agent.impl.js +239 -0
- package/lib/core/runners/distributed-agent/distributed-agent.impl.js.map +1 -0
- package/lib/core/runners/distributed-execution/distributed-execution.api.d.ts +10 -0
- package/lib/core/runners/distributed-execution/distributed-execution.api.js +130 -0
- package/lib/core/runners/distributed-execution/distributed-execution.api.js.map +1 -0
- package/lib/core/runners/distributed-execution/distributed-execution.runner.d.ts +12 -0
- package/lib/core/runners/distributed-execution/distributed-execution.runner.js +306 -0
- package/lib/core/runners/distributed-execution/distributed-execution.runner.js.map +1 -0
- package/lib/core/terminal-output/end-of-run-message.d.ts +8 -0
- package/lib/core/terminal-output/end-of-run-message.js +37 -0
- package/lib/core/terminal-output/end-of-run-message.js.map +1 -0
- package/lib/core/terminal-output/message-reporter.d.ts +11 -0
- package/lib/core/terminal-output/message-reporter.js +71 -0
- package/lib/core/terminal-output/message-reporter.js.map +1 -0
- package/lib/core/terminal-output/output-obfuscator.d.ts +6 -0
- package/lib/core/terminal-output/output-obfuscator.js +48 -0
- package/lib/core/terminal-output/output-obfuscator.js.map +1 -0
- package/lib/generators/init/init.d.ts +2 -0
- package/lib/generators/init/init.js +126 -0
- package/lib/generators/init/init.js.map +1 -0
- package/lib/nx-cloud-tasks-runner.d.ts +2 -0
- package/lib/nx-cloud-tasks-runner.js +102 -0
- package/lib/nx-cloud-tasks-runner.js.map +1 -0
- package/lib/utilities/axios.d.ts +9 -0
- package/lib/utilities/axios.js +73 -0
- package/lib/utilities/axios.js.map +1 -0
- package/lib/utilities/create-no-new-messages-timeout.d.ts +1 -0
- package/lib/utilities/create-no-new-messages-timeout.js +25 -0
- package/lib/utilities/create-no-new-messages-timeout.js.map +1 -0
- package/lib/utilities/environment.d.ts +24 -0
- package/lib/utilities/environment.js +156 -0
- package/lib/utilities/environment.js.map +1 -0
- package/lib/utilities/metric-logger.d.ts +22 -0
- package/lib/utilities/metric-logger.js +70 -0
- package/lib/utilities/metric-logger.js.map +1 -0
- package/lib/utilities/nx-imports.d.ts +0 -0
- package/lib/utilities/nx-imports.js +39 -0
- package/lib/utilities/nx-imports.js.map +1 -0
- package/lib/utilities/print-message.d.ts +1 -0
- package/lib/utilities/print-message.js +35 -0
- package/lib/utilities/print-message.js.map +1 -0
- package/lib/utilities/waiter.d.ts +6 -0
- package/lib/utilities/waiter.js +36 -0
- package/lib/utilities/waiter.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/generators/init/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const from_1 = require("rxjs/internal/observable/from");
|
|
13
|
+
const switchMap_1 = require("rxjs/internal/operators/switchMap");
|
|
14
|
+
const environment_1 = require("./utilities/environment");
|
|
15
|
+
const axios_1 = require("./utilities/axios");
|
|
16
|
+
const cloud_enabled_runner_1 = require("./core/runners/cloud-enabled/cloud-enabled.runner");
|
|
17
|
+
const { tasksRunnerV2, output } = require('./utilities/nx-imports');
|
|
18
|
+
const nxCloudTasksRunner = (tasks, options, context) => {
|
|
19
|
+
if (!environment_1.ACCESS_TOKEN && !options.accessToken) {
|
|
20
|
+
return tasksRunnerV2(tasks, options, context);
|
|
21
|
+
}
|
|
22
|
+
if (environment_1.NX_INVOKED_BY_RUNNER) {
|
|
23
|
+
// if (anyCacheableTargets()) {
|
|
24
|
+
if (true) {
|
|
25
|
+
return (0, cloud_enabled_runner_1.cloudEnabledTasksRunner)(tasks, options, context, true);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
return tasksRunnerV2(tasks, options, context);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
if (environment_1.AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION) {
|
|
32
|
+
verifyAllOperationsAreCacheableOnAgent(tasks, options);
|
|
33
|
+
}
|
|
34
|
+
// distributed execution main job
|
|
35
|
+
if (process.env.NX_CLOUD_DISTRIBUTED_EXECUTION === 'true' &&
|
|
36
|
+
!environment_1.AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION) {
|
|
37
|
+
verifyAllOperationsAreCacheableOnMainJob(tasks, options);
|
|
38
|
+
return (0, from_1.from)(verifyNxCloudWorkspaceEnabled(options)).pipe((0, switchMap_1.switchMap)((res) => {
|
|
39
|
+
if (res.data.enabled) {
|
|
40
|
+
return require('./core/runners/distributed-execution/distributed-execution.runner').nxCloudDistributedTasksRunner(tasks, options, context);
|
|
41
|
+
}
|
|
42
|
+
output.warn({
|
|
43
|
+
title: 'Nx Cloud: Workspace Disabled',
|
|
44
|
+
bodyLines: [
|
|
45
|
+
'This run and following runs will not use distributed task execution until',
|
|
46
|
+
'the outstanding balance is paid or additional coupons are added for this',
|
|
47
|
+
'workspace. If you believe you are receiving this message in error, please',
|
|
48
|
+
'contact support at cloud-support@nrwl.io.',
|
|
49
|
+
'',
|
|
50
|
+
'Execution will now continue using this machine only.',
|
|
51
|
+
],
|
|
52
|
+
});
|
|
53
|
+
// This disables using Cloud for all inner nx invocations, so it won't create an extra run.
|
|
54
|
+
process.env.NX_INVOKED_BY_RUNNER = 'true';
|
|
55
|
+
return (0, cloud_enabled_runner_1.cloudEnabledTasksRunner)(tasks, options, context);
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
// This disables using Cloud for all inner nx invocations, so it won't create an extra run.
|
|
59
|
+
process.env.NX_INVOKED_BY_RUNNER = 'true';
|
|
60
|
+
return (0, cloud_enabled_runner_1.cloudEnabledTasksRunner)(tasks, options, context);
|
|
61
|
+
};
|
|
62
|
+
function verifyNxCloudWorkspaceEnabled(options) {
|
|
63
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
const axiosInstance = (0, axios_1.createApiAxiosInstance)(options);
|
|
65
|
+
return yield (0, axios_1.axiosMultipleTries)(() => axiosInstance.get('/nx-cloud/executions/workspace-status'));
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
function verifyAllOperationsAreCacheableOnMainJob(tasks, options) {
|
|
69
|
+
const cacheableTargets = options.cacheableOperations || [];
|
|
70
|
+
tasks.forEach((task) => {
|
|
71
|
+
if (cacheableTargets.indexOf(task.target.target) === -1) {
|
|
72
|
+
output.error({
|
|
73
|
+
title: `Distributed task execution only works for cacheable targets`,
|
|
74
|
+
bodyLines: [
|
|
75
|
+
`Target '${task.target.project}:${task.target.target}' cannot be executed.`,
|
|
76
|
+
`To be able to replay the output of the target, distributed task execution only supports cacheable targets.`,
|
|
77
|
+
`You can verify that '${task.target.target}' is part of the list of cacheable targets in the 'nx.json' file.`,
|
|
78
|
+
`You can invoke this command without distribution by doing "NX_CLOUD_DISTRIBUTED_EXECUTION=false nx ...".`,
|
|
79
|
+
],
|
|
80
|
+
});
|
|
81
|
+
process.exit(1);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
function verifyAllOperationsAreCacheableOnAgent(tasks, options) {
|
|
86
|
+
const cacheableTargets = options.cacheableOperations || [];
|
|
87
|
+
tasks.forEach((task) => {
|
|
88
|
+
if (cacheableTargets.indexOf(task.target.target) === -1) {
|
|
89
|
+
output.error({
|
|
90
|
+
title: `Distributed task execution only works for cacheable targets`,
|
|
91
|
+
bodyLines: [
|
|
92
|
+
`Target ${task.target.project}:${task.target.target} cannot be executed.`,
|
|
93
|
+
`To be able to replay the output of the target, distributed task execution only supports cacheable targets.`,
|
|
94
|
+
`You can still invoke "nx ${task.target.target} ${task.target.project}" from within a cacheable target when using "@nrwl/workspace:run-commands".`,
|
|
95
|
+
],
|
|
96
|
+
});
|
|
97
|
+
process.exit(environment_1.DISTRIBUTED_TASK_EXECUTION_INTERNAL_ERROR_STATUS_CODE);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
exports.default = nxCloudTasksRunner;
|
|
102
|
+
//# sourceMappingURL=nx-cloud-tasks-runner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nx-cloud-tasks-runner.js","sourceRoot":"","sources":["../../../../../libs/nx-packages/nx-cloud/lib/nx-cloud-tasks-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CloudTaskRunnerOptions } from '../core/models/cloud-task-runner-options';
|
|
2
|
+
export declare class AxiosException {
|
|
3
|
+
readonly type: 'timeout' | 'failure';
|
|
4
|
+
readonly message: string;
|
|
5
|
+
readonly axiosException: any;
|
|
6
|
+
constructor(type: 'timeout' | 'failure', message: string, axiosException: any);
|
|
7
|
+
}
|
|
8
|
+
export declare function createApiAxiosInstance(options: CloudTaskRunnerOptions): any;
|
|
9
|
+
export declare function axiosMultipleTries(axiosCallCreator: () => Promise<any>, attemptsLeft?: number): any;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.axiosMultipleTries = exports.createApiAxiosInstance = exports.AxiosException = void 0;
|
|
13
|
+
const environment_1 = require("./environment");
|
|
14
|
+
const waiter_1 = require("./waiter");
|
|
15
|
+
const { output } = require('./nx-imports');
|
|
16
|
+
const axios = require('axios');
|
|
17
|
+
class AxiosException {
|
|
18
|
+
constructor(type, message, axiosException) {
|
|
19
|
+
this.type = type;
|
|
20
|
+
this.message = message;
|
|
21
|
+
this.axiosException = axiosException;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.AxiosException = AxiosException;
|
|
25
|
+
function createApiAxiosInstance(options) {
|
|
26
|
+
const baseUrl = options.url || 'https://api.nrwl.io';
|
|
27
|
+
const authToken = environment_1.ACCESS_TOKEN ? environment_1.ACCESS_TOKEN : options.accessToken;
|
|
28
|
+
if (!authToken) {
|
|
29
|
+
throw new Error(`Unable to authenticate: ${authToken}`);
|
|
30
|
+
}
|
|
31
|
+
return axios.create({
|
|
32
|
+
baseURL: baseUrl,
|
|
33
|
+
timeout: environment_1.NX_CLOUD_NO_TIMEOUTS ? environment_1.UNLIMITED_TIMEOUT : 10000,
|
|
34
|
+
headers: { authorization: authToken },
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
exports.createApiAxiosInstance = createApiAxiosInstance;
|
|
38
|
+
function axiosMultipleTries(axiosCallCreator, attemptsLeft = environment_1.NUMBER_OF_AXIOS_RETRIES) {
|
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
try {
|
|
41
|
+
return yield axiosCallCreator();
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
const code = e.code || (e.response && e.response.status);
|
|
45
|
+
// Do not retry if we receive an unauthorized or forbidden response
|
|
46
|
+
if (code === 401 || code === 403) {
|
|
47
|
+
attemptsLeft = 0;
|
|
48
|
+
}
|
|
49
|
+
if (attemptsLeft === 0) {
|
|
50
|
+
let message = e.response
|
|
51
|
+
? e.response.data.message
|
|
52
|
+
? e.response.data.message
|
|
53
|
+
: e.response.data
|
|
54
|
+
: e.message;
|
|
55
|
+
if (typeof message !== 'string') {
|
|
56
|
+
message = e.message;
|
|
57
|
+
}
|
|
58
|
+
throw new AxiosException('failure', `Error when connecting to Nx Cloud. Code: ${code}. Error: ${message}.`, e);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
if (environment_1.VERBOSE_LOGGING) {
|
|
62
|
+
output.note({
|
|
63
|
+
title: `Received ${code}. Retrying in under 10 seconds.`,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
yield (0, waiter_1.wait)((environment_1.NUMBER_OF_AXIOS_RETRIES + 1 - attemptsLeft) * 10000 * Math.random());
|
|
67
|
+
return axiosMultipleTries(axiosCallCreator, attemptsLeft - 1);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
exports.axiosMultipleTries = axiosMultipleTries;
|
|
73
|
+
//# sourceMappingURL=axios.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"axios.js","sourceRoot":"","sources":["../../../../../../libs/nx-packages/nx-cloud/lib/utilities/axios.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAMuB;AACvB,qCAAgC;AAGhC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE3C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAE/B,MAAa,cAAc;IACzB,YACkB,IAA2B,EAC3B,OAAe,EACf,cAAmB;QAFnB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,YAAO,GAAP,OAAO,CAAQ;QACf,mBAAc,GAAd,cAAc,CAAK;IAClC,CAAC;CACL;AAND,wCAMC;AAED,SAAgB,sBAAsB,CAAC,OAA+B;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,IAAI,qBAAqB,CAAC;IACrD,MAAM,SAAS,GAAG,0BAAY,CAAC,CAAC,CAAC,0BAAY,CAAC,CAAC,CAAC,OAAO,CAAC,WAAY,CAAC;IAErE,IAAI,CAAC,SAAS,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,2BAA2B,SAAS,EAAE,CAAC,CAAC;KACzD;IAED,OAAO,KAAK,CAAC,MAAM,CAAC;QAClB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,kCAAoB,CAAC,CAAC,CAAC,+BAAiB,CAAC,CAAC,CAAC,KAAK;QACzD,OAAO,EAAE,EAAE,aAAa,EAAE,SAAS,EAAE;KACtC,CAAC,CAAC;AACL,CAAC;AAbD,wDAaC;AAED,SAAsB,kBAAkB,CACtC,gBAAoC,EACpC,YAAY,GAAG,qCAAuB;;QAEtC,IAAI;YACF,OAAO,MAAM,gBAAgB,EAAE,CAAC;SACjC;QAAC,OAAO,CAAM,EAAE;YACf,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAEzD,mEAAmE;YACnE,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,EAAE;gBAChC,YAAY,GAAG,CAAC,CAAC;aAClB;YAED,IAAI,YAAY,KAAK,CAAC,EAAE;gBACtB,IAAI,OAAO,GAAG,CAAC,CAAC,QAAQ;oBACtB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO;wBACvB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO;wBACzB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI;oBACnB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBACd,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;oBAC/B,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;iBACrB;gBACD,MAAM,IAAI,cAAc,CACtB,SAAS,EACT,4CAA4C,IAAI,YAAY,OAAO,GAAG,EACtE,CAAC,CACF,CAAC;aACH;iBAAM;gBACL,IAAI,6BAAe,EAAE;oBACnB,MAAM,CAAC,IAAI,CAAC;wBACV,KAAK,EAAE,YAAY,IAAI,iCAAiC;qBACzD,CAAC,CAAC;iBACJ;gBACD,MAAM,IAAA,aAAI,EACR,CAAC,qCAAuB,GAAG,CAAC,GAAG,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,CACrE,CAAC;gBACF,OAAO,kBAAkB,CAAC,gBAAgB,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;aAC/D;SACF;IACH,CAAC;CAAA;AAxCD,gDAwCC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function createNoNewMessagesTimeout(): (newValue: any) => void;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createNoNewMessagesTimeout = void 0;
|
|
4
|
+
const environment_1 = require("./environment");
|
|
5
|
+
const { output } = require('./nx-imports');
|
|
6
|
+
function createNoNewMessagesTimeout() {
|
|
7
|
+
let value = new Object();
|
|
8
|
+
let valueIsSetAt;
|
|
9
|
+
return (newValue) => {
|
|
10
|
+
if (value !== newValue) {
|
|
11
|
+
value = newValue;
|
|
12
|
+
valueIsSetAt = new Date();
|
|
13
|
+
}
|
|
14
|
+
else {
|
|
15
|
+
if (new Date().getTime() - valueIsSetAt.getTime() > environment_1.NO_MESSAGES_TIMEOUT) {
|
|
16
|
+
output.error({
|
|
17
|
+
title: 'No new messages received in 60 minutes',
|
|
18
|
+
});
|
|
19
|
+
process.exit(1);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
exports.createNoNewMessagesTimeout = createNoNewMessagesTimeout;
|
|
25
|
+
//# sourceMappingURL=create-no-new-messages-timeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create-no-new-messages-timeout.js","sourceRoot":"","sources":["../../../../../../libs/nx-packages/nx-cloud/lib/utilities/create-no-new-messages-timeout.ts"],"names":[],"mappings":";;;AAAA,+CAAoD;AACpD,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE3C,SAAgB,0BAA0B;IACxC,IAAI,KAAK,GAAG,IAAI,MAAM,EAAE,CAAC;IACzB,IAAI,YAAY,CAAC;IACjB,OAAO,CAAC,QAAQ,EAAE,EAAE;QAClB,IAAI,KAAK,KAAK,QAAQ,EAAE;YACtB,KAAK,GAAG,QAAQ,CAAC;YACjB,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;SAC3B;aAAM;YACL,IAAI,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC,OAAO,EAAE,GAAG,iCAAmB,EAAE;gBACvE,MAAM,CAAC,KAAK,CAAC;oBACX,KAAK,EAAE,wCAAwC;iBAChD,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;IACH,CAAC,CAAC;AACJ,CAAC;AAhBD,gEAgBC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { CloudTaskRunnerOptions } from '../core/models/cloud-task-runner-options';
|
|
2
|
+
import { MachineInfo } from '../core/models/machine-info.model';
|
|
3
|
+
export declare const UNLIMITED_TIMEOUT = 9999999;
|
|
4
|
+
export declare const NO_MESSAGES_TIMEOUT = 3600000;
|
|
5
|
+
export declare const UNLIMITED_FILE_SIZE: number;
|
|
6
|
+
export declare const DEFAULT_FILE_SIZE_LIMIT: number;
|
|
7
|
+
export declare const DISTRIBUTED_TASK_EXECUTION_INTERNAL_ERROR_STATUS_CODE = 166;
|
|
8
|
+
export declare const NX_INVOKED_BY_RUNNER: boolean;
|
|
9
|
+
export declare const NX_CLOUD_DISTRIBUTED_EXECUTION_ID: string | undefined;
|
|
10
|
+
export declare const AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION: boolean;
|
|
11
|
+
export declare const NX_CLOUD_DISTRIBUTED_EXECUTION: boolean;
|
|
12
|
+
export declare const NUMBER_OF_AXIOS_RETRIES: number;
|
|
13
|
+
export declare const NX_CLOUD_DISTRIBUTED_EXECUTION_AGENT_COUNT: number | null;
|
|
14
|
+
export declare const NX_CLOUD_DISTRIBUTED_EXECUTION_STOP_AGENTS_ON_FAILURE: boolean;
|
|
15
|
+
export declare const NX_CLOUD_FORCE_METRICS: boolean;
|
|
16
|
+
export declare let ACCESS_TOKEN: any;
|
|
17
|
+
export declare let ENCRYPTION_KEY: any;
|
|
18
|
+
export declare let VERBOSE_LOGGING: any;
|
|
19
|
+
export declare let NX_CLOUD_NO_TIMEOUTS: any;
|
|
20
|
+
export declare function extractGitSha(): string | undefined;
|
|
21
|
+
export declare function getRunGroup(): string | undefined;
|
|
22
|
+
export declare function getBranch(): string | null;
|
|
23
|
+
export declare function getMachineInfo(options: CloudTaskRunnerOptions): MachineInfo;
|
|
24
|
+
export declare function parseCommand(): string;
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseCommand = exports.getMachineInfo = exports.getBranch = exports.getRunGroup = exports.extractGitSha = exports.NX_CLOUD_NO_TIMEOUTS = exports.VERBOSE_LOGGING = exports.ENCRYPTION_KEY = exports.ACCESS_TOKEN = exports.NX_CLOUD_FORCE_METRICS = exports.NX_CLOUD_DISTRIBUTED_EXECUTION_STOP_AGENTS_ON_FAILURE = exports.NX_CLOUD_DISTRIBUTED_EXECUTION_AGENT_COUNT = exports.NUMBER_OF_AXIOS_RETRIES = exports.NX_CLOUD_DISTRIBUTED_EXECUTION = exports.AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION = exports.NX_CLOUD_DISTRIBUTED_EXECUTION_ID = exports.NX_INVOKED_BY_RUNNER = exports.DISTRIBUTED_TASK_EXECUTION_INTERNAL_ERROR_STATUS_CODE = exports.DEFAULT_FILE_SIZE_LIMIT = exports.UNLIMITED_FILE_SIZE = exports.NO_MESSAGES_TIMEOUT = exports.UNLIMITED_TIMEOUT = void 0;
|
|
4
|
+
const node_machine_id_1 = require("node-machine-id");
|
|
5
|
+
const child_process_1 = require("child_process");
|
|
6
|
+
const fs_1 = require("fs");
|
|
7
|
+
const path_1 = require("path");
|
|
8
|
+
const dotenv = require("dotenv");
|
|
9
|
+
const { appRootPath } = require('./nx-imports');
|
|
10
|
+
exports.UNLIMITED_TIMEOUT = 9999999;
|
|
11
|
+
exports.NO_MESSAGES_TIMEOUT = 3600000; // 60 minutes
|
|
12
|
+
exports.UNLIMITED_FILE_SIZE = 1000 * 1000 * 10000;
|
|
13
|
+
exports.DEFAULT_FILE_SIZE_LIMIT = 1000 * 1000 * 300;
|
|
14
|
+
exports.DISTRIBUTED_TASK_EXECUTION_INTERNAL_ERROR_STATUS_CODE = 166;
|
|
15
|
+
exports.NX_INVOKED_BY_RUNNER = process.env.NX_INVOKED_BY_RUNNER === 'true' ||
|
|
16
|
+
process.env.NX_CLOUD === 'false';
|
|
17
|
+
exports.NX_CLOUD_DISTRIBUTED_EXECUTION_ID = process.env.NX_CLOUD_DISTRIBUTED_EXECUTION_ID;
|
|
18
|
+
exports.AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION = !!exports.NX_CLOUD_DISTRIBUTED_EXECUTION_ID;
|
|
19
|
+
exports.NX_CLOUD_DISTRIBUTED_EXECUTION = process.env.NX_CLOUD_DISTRIBUTED_EXECUTION === 'true';
|
|
20
|
+
exports.NUMBER_OF_AXIOS_RETRIES = exports.NX_CLOUD_DISTRIBUTED_EXECUTION ? 10 : 3;
|
|
21
|
+
exports.NX_CLOUD_DISTRIBUTED_EXECUTION_AGENT_COUNT = process.env
|
|
22
|
+
.NX_CLOUD_DISTRIBUTED_EXECUTION_AGENT_COUNT
|
|
23
|
+
? Number(process.env.NX_CLOUD_DISTRIBUTED_EXECUTION_AGENT_COUNT)
|
|
24
|
+
: null;
|
|
25
|
+
exports.NX_CLOUD_DISTRIBUTED_EXECUTION_STOP_AGENTS_ON_FAILURE = process.env.NX_CLOUD_DISTRIBUTED_EXECUTION_STOP_AGENTS_ON_FAILURE != 'false';
|
|
26
|
+
exports.NX_CLOUD_FORCE_METRICS = process.env.NX_CLOUD_FORCE_METRICS === 'true';
|
|
27
|
+
loadEnvVars();
|
|
28
|
+
function extractGitSha() {
|
|
29
|
+
try {
|
|
30
|
+
return (0, child_process_1.execSync)(`git rev-parse HEAD`).toString().trim();
|
|
31
|
+
}
|
|
32
|
+
catch (e) {
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
exports.extractGitSha = extractGitSha;
|
|
37
|
+
function parseEnv() {
|
|
38
|
+
try {
|
|
39
|
+
const envContents = (0, fs_1.readFileSync)((0, path_1.join)(appRootPath, 'nx-cloud.env'));
|
|
40
|
+
return dotenv.parse(envContents);
|
|
41
|
+
}
|
|
42
|
+
catch (e) {
|
|
43
|
+
return {};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
function loadEnvVars() {
|
|
47
|
+
const parsed = parseEnv();
|
|
48
|
+
exports.ACCESS_TOKEN =
|
|
49
|
+
process.env.NX_CLOUD_AUTH_TOKEN ||
|
|
50
|
+
process.env.NX_CLOUD_ACCESS_TOKEN ||
|
|
51
|
+
parsed.NX_CLOUD_AUTH_TOKEN ||
|
|
52
|
+
parsed.NX_CLOUD_ACCESS_TOKEN;
|
|
53
|
+
exports.ENCRYPTION_KEY =
|
|
54
|
+
process.env.NX_CLOUD_ENCRYPTION_KEY || parsed.NX_CLOUD_ENCRYPTION_KEY;
|
|
55
|
+
exports.VERBOSE_LOGGING =
|
|
56
|
+
process.env.NX_VERBOSE_LOGGING === 'true' ||
|
|
57
|
+
parsed.NX_VERBOSE_LOGGING === 'true';
|
|
58
|
+
exports.NX_CLOUD_NO_TIMEOUTS =
|
|
59
|
+
process.env.NX_CLOUD_NO_TIMEOUTS === 'true' ||
|
|
60
|
+
parsed.NX_CLOUD_NO_TIMEOUTS === 'true';
|
|
61
|
+
}
|
|
62
|
+
function getRunGroup() {
|
|
63
|
+
if (process.env.NX_RUN_GROUP !== undefined) {
|
|
64
|
+
return process.env.NX_RUN_GROUP;
|
|
65
|
+
}
|
|
66
|
+
if (process.env.CIRCLECI !== undefined) {
|
|
67
|
+
return process.env.CIRCLE_WORKFLOW_ID;
|
|
68
|
+
}
|
|
69
|
+
if (process.env.TRAVIS_BUILD_ID !== undefined) {
|
|
70
|
+
return process.env.TRAVIS_BUILD_ID;
|
|
71
|
+
}
|
|
72
|
+
if (process.env.GITHUB_ACTIONS && process.env.GITHUB_RUN_ID) {
|
|
73
|
+
return `${process.env.GITHUB_RUN_ID}-${process.env.GITHUB_RUN_ATTEMPT}`;
|
|
74
|
+
}
|
|
75
|
+
if (process.env.BUILD_BUILDID) {
|
|
76
|
+
return process.env.BUILD_BUILDID;
|
|
77
|
+
}
|
|
78
|
+
if (process.env.BITBUCKET_BUILD_NUMBER !== undefined) {
|
|
79
|
+
return process.env.BITBUCKET_BUILD_NUMBER;
|
|
80
|
+
}
|
|
81
|
+
if (process.env.VERCEL_GIT_COMMIT_REF !== undefined) {
|
|
82
|
+
return process.env.VERCEL_GIT_COMMIT_REF;
|
|
83
|
+
}
|
|
84
|
+
return extractGitSha();
|
|
85
|
+
}
|
|
86
|
+
exports.getRunGroup = getRunGroup;
|
|
87
|
+
function getBranch() {
|
|
88
|
+
var _a;
|
|
89
|
+
if (process.env.NX_BRANCH !== undefined) {
|
|
90
|
+
return process.env.NX_BRANCH;
|
|
91
|
+
}
|
|
92
|
+
if (process.env.CIRCLECI !== undefined) {
|
|
93
|
+
if (process.env.CIRCLE_PR_NUMBER !== undefined) {
|
|
94
|
+
return process.env.CIRCLE_PR_NUMBER;
|
|
95
|
+
}
|
|
96
|
+
else if (process.env.CIRCLE_PULL_REQUEST !== undefined) {
|
|
97
|
+
const p = process.env.CIRCLE_PULL_REQUEST.split('/');
|
|
98
|
+
return p[p.length - 1];
|
|
99
|
+
}
|
|
100
|
+
else if (process.env.CIRCLE_BRANCH !== undefined) {
|
|
101
|
+
return process.env.CIRCLE_BRANCH;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
if (process.env.TRAVIS_PULL_REQUEST !== undefined) {
|
|
105
|
+
return process.env.TRAVIS_PULL_REQUEST;
|
|
106
|
+
}
|
|
107
|
+
// refs/pull/78/merge
|
|
108
|
+
if (process.env.GITHUB_ACTIONS) {
|
|
109
|
+
if (process.env.GITHUB_REF) {
|
|
110
|
+
const ref = process.env.GITHUB_REF.match(/refs\/pull\/(\d+)\/merge/);
|
|
111
|
+
if (ref) {
|
|
112
|
+
return ref[1];
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
return (_a = process.env.GITHUB_HEAD_REF) !== null && _a !== void 0 ? _a : '';
|
|
116
|
+
}
|
|
117
|
+
// For gitlab merge requests.
|
|
118
|
+
// See: https://docs.gitlab.com/ee/ci/variables/predefined_variables.html
|
|
119
|
+
if (process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_NAME !== undefined) {
|
|
120
|
+
return process.env.CI_MERGE_REQUEST_SOURCE_BRANCH_NAME;
|
|
121
|
+
}
|
|
122
|
+
if (process.env.BITBUCKET_BRANCH !== undefined) {
|
|
123
|
+
return process.env.BITBUCKET_BRANCH;
|
|
124
|
+
}
|
|
125
|
+
if (process.env.VERCEL_GIT_COMMIT_SHA !== undefined) {
|
|
126
|
+
return process.env.VERCEL_GIT_COMMIT_SHA;
|
|
127
|
+
}
|
|
128
|
+
return null;
|
|
129
|
+
}
|
|
130
|
+
exports.getBranch = getBranch;
|
|
131
|
+
function getMachineInfo(options) {
|
|
132
|
+
const os = require('os');
|
|
133
|
+
let machineId = '';
|
|
134
|
+
// TODO: vsavkin remove it
|
|
135
|
+
if (options.canTrackAnalytics) {
|
|
136
|
+
try {
|
|
137
|
+
machineId = (0, node_machine_id_1.machineIdSync)();
|
|
138
|
+
}
|
|
139
|
+
catch (_a) { }
|
|
140
|
+
}
|
|
141
|
+
return {
|
|
142
|
+
machineId,
|
|
143
|
+
platform: os.platform(),
|
|
144
|
+
version: os.version ? os.version() : '',
|
|
145
|
+
cpuCores: os.cpus().length,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
exports.getMachineInfo = getMachineInfo;
|
|
149
|
+
function parseCommand() {
|
|
150
|
+
var _a;
|
|
151
|
+
const env = (_a = process.env.NX_CLOUD_ENV_NAME) !== null && _a !== void 0 ? _a : undefined;
|
|
152
|
+
const res = `nx ${process.argv.slice(2).join(' ')}`;
|
|
153
|
+
return env ? `${env} ${res}` : res;
|
|
154
|
+
}
|
|
155
|
+
exports.parseCommand = parseCommand;
|
|
156
|
+
//# sourceMappingURL=environment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"environment.js","sourceRoot":"","sources":["../../../../../../libs/nx-packages/nx-cloud/lib/utilities/environment.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { CloudTaskRunnerOptions } from '../core/models/cloud-task-runner-options';
|
|
2
|
+
export interface NxCloudPerfEntry {
|
|
3
|
+
durationMs?: number;
|
|
4
|
+
entryType: string;
|
|
5
|
+
success: boolean;
|
|
6
|
+
statusCode: number;
|
|
7
|
+
payloadSize: number;
|
|
8
|
+
}
|
|
9
|
+
export interface MetricRecorder {
|
|
10
|
+
recordMetric: (metadata: Partial<NxCloudPerfEntry>) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare const createMetricRecorder: (entryType: string) => MetricRecorder;
|
|
13
|
+
/**
|
|
14
|
+
* Handles creating metadata for metrics that only need an NxCloudPerfEntry
|
|
15
|
+
* @param resp response from nx-api
|
|
16
|
+
*/
|
|
17
|
+
export declare const mapRespToPerfEntry: (resp: any) => Partial<NxCloudPerfEntry>;
|
|
18
|
+
/**
|
|
19
|
+
* Constant to represent metrics when something goes wrong on the runner side
|
|
20
|
+
*/
|
|
21
|
+
export declare const RUNNER_FAILURE_PERF_ENTRY: Partial<NxCloudPerfEntry>;
|
|
22
|
+
export declare const submitRunMetrics: (options: CloudTaskRunnerOptions) => any;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.submitRunMetrics = exports.RUNNER_FAILURE_PERF_ENTRY = exports.mapRespToPerfEntry = exports.createMetricRecorder = void 0;
|
|
4
|
+
const perf_hooks_1 = require("perf_hooks");
|
|
5
|
+
const axios_1 = require("./axios");
|
|
6
|
+
const environment_1 = require("./environment");
|
|
7
|
+
const print_message_1 = require("./print-message");
|
|
8
|
+
const performanceEntries = [];
|
|
9
|
+
const createMetricRecorder = (entryType) => {
|
|
10
|
+
const startTime = perf_hooks_1.performance.now();
|
|
11
|
+
const recorder = {
|
|
12
|
+
recordMetric: (metadata) => {
|
|
13
|
+
const endTime = perf_hooks_1.performance.now();
|
|
14
|
+
metadata.durationMs = endTime - startTime;
|
|
15
|
+
metadata.entryType = entryType;
|
|
16
|
+
performanceEntries.push(metadata);
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
return recorder;
|
|
20
|
+
};
|
|
21
|
+
exports.createMetricRecorder = createMetricRecorder;
|
|
22
|
+
/**
|
|
23
|
+
* Handles creating metadata for metrics that only need an NxCloudPerfEntry
|
|
24
|
+
* @param resp response from nx-api
|
|
25
|
+
*/
|
|
26
|
+
const mapRespToPerfEntry = (resp) => {
|
|
27
|
+
var _a, _b, _c;
|
|
28
|
+
return ({
|
|
29
|
+
success: (_b = (_a = resp === null || resp === void 0 ? void 0 : resp.status) === null || _a === void 0 ? void 0 : _a.toString().startsWith('2')) !== null && _b !== void 0 ? _b : false,
|
|
30
|
+
statusCode: (_c = resp === null || resp === void 0 ? void 0 : resp.status) !== null && _c !== void 0 ? _c : -1,
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
exports.mapRespToPerfEntry = mapRespToPerfEntry;
|
|
34
|
+
/**
|
|
35
|
+
* Constant to represent metrics when something goes wrong on the runner side
|
|
36
|
+
*/
|
|
37
|
+
exports.RUNNER_FAILURE_PERF_ENTRY = {
|
|
38
|
+
success: false,
|
|
39
|
+
statusCode: -1,
|
|
40
|
+
};
|
|
41
|
+
const CI_SAMPLE_RATE = 1; // Record metrics for all CI runs
|
|
42
|
+
const NON_CI_SAMPLE_RATE = 0.04; // Record metrics for 1/25 non-CI runs
|
|
43
|
+
const submitRunMetrics = (options) => {
|
|
44
|
+
let sampleRate;
|
|
45
|
+
if ((0, environment_1.getBranch)()) {
|
|
46
|
+
sampleRate = CI_SAMPLE_RATE;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
sampleRate = NON_CI_SAMPLE_RATE;
|
|
50
|
+
}
|
|
51
|
+
try {
|
|
52
|
+
if (environment_1.NX_CLOUD_FORCE_METRICS || Math.random() < sampleRate) {
|
|
53
|
+
if (environment_1.VERBOSE_LOGGING) {
|
|
54
|
+
(0, print_message_1.printMessage)('Submitting runner metrics for this run.');
|
|
55
|
+
}
|
|
56
|
+
const axiosInstance = (0, axios_1.createApiAxiosInstance)(options);
|
|
57
|
+
return axiosInstance
|
|
58
|
+
.post('/nx-cloud/save-metrics', {
|
|
59
|
+
entries: performanceEntries,
|
|
60
|
+
})
|
|
61
|
+
.catch((e) => { });
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
return Promise.resolve();
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
catch (e) { }
|
|
68
|
+
};
|
|
69
|
+
exports.submitRunMetrics = submitRunMetrics;
|
|
70
|
+
//# sourceMappingURL=metric-logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metric-logger.js","sourceRoot":"","sources":["../../../../../../libs/nx-packages/nx-cloud/lib/utilities/metric-logger.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AACzC,mCAAqE;AACrE,+CAIuB;AAEvB,mDAA+C;AAU/C,MAAM,kBAAkB,GAAuB,EAAE,CAAC;AAM3C,MAAM,oBAAoB,GAAG,CAAC,SAAiB,EAAkB,EAAE;IACxE,MAAM,SAAS,GAAG,wBAAW,CAAC,GAAG,EAAE,CAAC;IAEpC,MAAM,QAAQ,GAAmB;QAC/B,YAAY,EAAE,CAAC,QAAQ,EAAE,EAAE;YACzB,MAAM,OAAO,GAAG,wBAAW,CAAC,GAAG,EAAE,CAAC;YAClC,QAAQ,CAAC,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;YAC1C,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;YAE/B,kBAAkB,CAAC,IAAI,CAAC,QAA4B,CAAC,CAAC;QACxD,CAAC;KACF,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAdW,QAAA,oBAAoB,wBAc/B;AAEF;;;GAGG;AACI,MAAM,kBAAkB,GAAG,CAAC,IAAS,EAA6B,EAAE;;IAAC,OAAA,CAAC;QAC3E,OAAO,EAAE,MAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,0CAAE,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,mCAAI,KAAK;QAC1D,UAAU,EAAE,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,mCAAI,CAAC,CAAC;KAC/B,CAAC,CAAA;CAAA,CAAC;AAHU,QAAA,kBAAkB,sBAG5B;AAEH;;GAEG;AACU,QAAA,yBAAyB,GAA8B;IAClE,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,CAAC,CAAC;CACf,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,iCAAiC;AAC3D,MAAM,kBAAkB,GAAG,IAAI,CAAC,CAAC,sCAAsC;AAEhE,MAAM,gBAAgB,GAAG,CAAC,OAA+B,EAAE,EAAE;IAClE,IAAI,UAAU,CAAC;IACf,IAAI,IAAA,uBAAS,GAAE,EAAE;QACf,UAAU,GAAG,cAAc,CAAC;KAC7B;SAAM;QACL,UAAU,GAAG,kBAAkB,CAAC;KACjC;IAED,IAAI;QACF,IAAI,oCAAsB,IAAI,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,EAAE;YACxD,IAAI,6BAAe,EAAE;gBACnB,IAAA,4BAAY,EAAC,yCAAyC,CAAC,CAAC;aACzD;YAED,MAAM,aAAa,GAAG,IAAA,8BAAsB,EAAC,OAAO,CAAC,CAAC;YAEtD,OAAO,aAAa;iBACjB,IAAI,CAAC,wBAAwB,EAAE;gBAC9B,OAAO,EAAE,kBAAkB;aAC5B,CAAC;iBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,GAAE,CAAC,CAAC,CAAC;SACrB;aAAM;YACL,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;SAC1B;KACF;IAAC,OAAO,CAAC,EAAE,GAAE;AAChB,CAAC,CAAC;AAzBW,QAAA,gBAAgB,oBAyB3B"}
|
|
File without changes
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
try {
|
|
3
|
+
const { output } = require('nx/src/utils/output');
|
|
4
|
+
const { appRootPath } = require('nx/src/utils/app-root');
|
|
5
|
+
const { unparse, getDependencyConfigs, getOutputs, } = require('nx/src/tasks-runner/utils');
|
|
6
|
+
const { Cache } = require('nx/src/tasks-runner/cache');
|
|
7
|
+
const { tasksRunnerV2 } = require('nx/src/tasks-runner/tasks-runner-v2');
|
|
8
|
+
const { CompositeLifeCycle } = require('nx/src/tasks-runner/life-cycle');
|
|
9
|
+
exports.output = output;
|
|
10
|
+
exports.appRootPath = appRootPath;
|
|
11
|
+
exports.unparse = unparse;
|
|
12
|
+
exports.tasksRunnerV2 = tasksRunnerV2;
|
|
13
|
+
exports.CompositeLifeCycle = CompositeLifeCycle;
|
|
14
|
+
exports.getDependencyConfigs = getDependencyConfigs;
|
|
15
|
+
exports.getOutputs = getOutputs;
|
|
16
|
+
exports.Cache = Cache;
|
|
17
|
+
}
|
|
18
|
+
catch (_a) {
|
|
19
|
+
const { output } = require('@nrwl/workspace/src/utilities/output');
|
|
20
|
+
const { appRootPath } = require('@nrwl/tao/src/utils/app-root');
|
|
21
|
+
const { unparse, getDependencyConfigs, getOutputs, } = require('@nrwl/workspace/src/tasks-runner/utils');
|
|
22
|
+
const { tasksRunnerV2, } = require('@nrwl/workspace/src/tasks-runner/tasks-runner-v2');
|
|
23
|
+
let CompositeLifeCycle;
|
|
24
|
+
try {
|
|
25
|
+
CompositeLifeCycle =
|
|
26
|
+
require('@nrwl/workspace/src/tasks-runner/life-cycle').CompositeLifeCycle;
|
|
27
|
+
}
|
|
28
|
+
catch (e) { }
|
|
29
|
+
const { Cache } = require('@nrwl/workspace/src/tasks-runner/cache');
|
|
30
|
+
exports.output = output;
|
|
31
|
+
exports.appRootPath = appRootPath;
|
|
32
|
+
exports.unparse = unparse;
|
|
33
|
+
exports.tasksRunnerV2 = tasksRunnerV2;
|
|
34
|
+
exports.CompositeLifeCycle = CompositeLifeCycle;
|
|
35
|
+
exports.getDependencyConfigs = getDependencyConfigs;
|
|
36
|
+
exports.getOutputs = getOutputs;
|
|
37
|
+
exports.Cache = Cache;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=nx-imports.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nx-imports.js","sourceRoot":"","sources":["../../../../../../libs/nx-packages/nx-cloud/lib/utilities/nx-imports.ts"],"names":[],"mappings":";AAAA,IAAI;IACF,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAClD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACzD,MAAM,EACJ,OAAO,EACP,oBAAoB,EACpB,UAAU,GACX,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACzC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACvD,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,qCAAqC,CAAC,CAAC;IACzE,MAAM,EAAE,kBAAkB,EAAE,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAC;IAEzE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;IAClC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACtC,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAChD,OAAO,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IACpD,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAChC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;CACvB;AAAC,WAAM;IACN,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAAC;IACnE,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC;IAChE,MAAM,EACJ,OAAO,EACP,oBAAoB,EACpB,UAAU,GACX,GAAG,OAAO,CAAC,wCAAwC,CAAC,CAAC;IACtD,MAAM,EACJ,aAAa,GACd,GAAG,OAAO,CAAC,kDAAkD,CAAC,CAAC;IAEhE,IAAI,kBAAkB,CAAC;IACvB,IAAI;QACF,kBAAkB;YAChB,OAAO,CAAC,6CAA6C,CAAC,CAAC,kBAAkB,CAAC;KAC7E;IAAC,OAAO,CAAC,EAAE,GAAE;IACd,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,wCAAwC,CAAC,CAAC;IAEpE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IACxB,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;IAClC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACtC,OAAO,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAChD,OAAO,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;IACpD,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC;IAChC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;CACvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function printMessage(message: string): void;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.printMessage = void 0;
|
|
4
|
+
const { output } = require('./nx-imports');
|
|
5
|
+
function printMessage(message) {
|
|
6
|
+
// the new format uses a different offset, so we need to make sure it works with both
|
|
7
|
+
let offset = ' ';
|
|
8
|
+
try {
|
|
9
|
+
require('nx/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle');
|
|
10
|
+
offset = ' ';
|
|
11
|
+
}
|
|
12
|
+
catch (e) { }
|
|
13
|
+
let formattedMessage;
|
|
14
|
+
// TODO(Altan): Remove after Nx 15-ish
|
|
15
|
+
// output.dim causes incompatibility with older versions of Nx, so fall back
|
|
16
|
+
// to old method if function is undefined
|
|
17
|
+
if (typeof output.dim === 'function') {
|
|
18
|
+
formattedMessage = output.dim(message);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
try {
|
|
22
|
+
// Old (pre 13.4/13.5) method
|
|
23
|
+
formattedMessage = output.colors.gray(message);
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
// Ultra fallback, we should never hit this
|
|
27
|
+
formattedMessage = message;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
process.stdout.write(`${offset}${formattedMessage}`);
|
|
31
|
+
output.addNewline();
|
|
32
|
+
output.addNewline();
|
|
33
|
+
}
|
|
34
|
+
exports.printMessage = printMessage;
|
|
35
|
+
//# sourceMappingURL=print-message.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"print-message.js","sourceRoot":"","sources":["../../../../../../libs/nx-packages/nx-cloud/lib/utilities/print-message.ts"],"names":[],"mappings":";;;AAAA,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE3C,SAAgB,YAAY,CAAC,OAAe;IAC1C,qFAAqF;IACrF,IAAI,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI;QACF,OAAO,CAAC,6EAA6E,CAAC,CAAC;QACvF,MAAM,GAAG,KAAK,CAAC;KAChB;IAAC,OAAO,CAAC,EAAE,GAAE;IACd,IAAI,gBAAwB,CAAC;IAC7B,sCAAsC;IACtC,4EAA4E;IAC5E,yCAAyC;IACzC,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,UAAU,EAAE;QACpC,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KACxC;SAAM;QACL,IAAI;YACF,6BAA6B;YAC7B,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAChD;QAAC,OAAO,CAAC,EAAE;YACV,2CAA2C;YAC3C,gBAAgB,GAAG,OAAO,CAAC;SAC5B;KACF;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,GAAG,gBAAgB,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,UAAU,EAAE,CAAC;IACpB,MAAM,CAAC,UAAU,EAAE,CAAC;AACtB,CAAC;AA1BD,oCA0BC"}
|