@nrwl/nx-cloud 14.0.1-beta.3 → 14.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/core/api/run-group.api.js +1 -65
- package/lib/core/runners/cloud-enabled/cloud-enabled-life-cycle.js +1 -138
- package/lib/core/runners/cloud-enabled/cloud-enabled.runner.d.ts +1 -1
- package/lib/core/runners/cloud-enabled/cloud-enabled.runner.js +1 -170
- package/lib/core/runners/cloud-enabled/cloud-enabled.runner.js.map +1 -1
- package/lib/core/runners/cloud-enabled/cloud-remote-cache.js +1 -113
- package/lib/core/runners/cloud-enabled/cloud-run.api.js +1 -158
- package/lib/core/runners/distributed-agent/distributed-agent.api.js +1 -79
- package/lib/core/runners/distributed-agent/distributed-agent.impl.js +1 -239
- package/lib/core/runners/distributed-execution/distributed-execution.api.js +1 -130
- package/lib/core/runners/distributed-execution/distributed-execution.runner.js +1 -306
- package/lib/generators/init/init.js +5 -12
- package/lib/generators/init/init.js.map +1 -1
- package/lib/nx-cloud-tasks-runner.js +1 -1
- package/lib/nx-cloud-tasks-runner.js.map +1 -1
- package/package.json +3 -2
|
@@ -1,65 +1 @@
|
|
|
1
|
-
|
|
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.RunGroupApi = void 0;
|
|
13
|
-
const axios_1 = require("../../utilities/axios");
|
|
14
|
-
const metric_logger_1 = require("../../utilities/metric-logger");
|
|
15
|
-
const { output } = require('../../utilities/nx-imports');
|
|
16
|
-
class RunGroupApi {
|
|
17
|
-
constructor(options) {
|
|
18
|
-
this.apiAxiosInstance = (0, axios_1.createApiAxiosInstance)(options);
|
|
19
|
-
}
|
|
20
|
-
createRunGroup(branch, runGroup) {
|
|
21
|
-
var _a;
|
|
22
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
const recorder = (0, metric_logger_1.createMetricRecorder)('createRunGroup');
|
|
24
|
-
try {
|
|
25
|
-
const resp = yield (0, axios_1.axiosMultipleTries)(() => this.apiAxiosInstance.post('/nx-cloud/executions/create-run-group', {
|
|
26
|
-
branch: branch,
|
|
27
|
-
runGroup: runGroup,
|
|
28
|
-
}));
|
|
29
|
-
recorder.recordMetric((0, metric_logger_1.mapRespToPerfEntry)(resp));
|
|
30
|
-
}
|
|
31
|
-
catch (e) {
|
|
32
|
-
recorder.recordMetric(((_a = e === null || e === void 0 ? void 0 : e.axiosException) === null || _a === void 0 ? void 0 : _a.response)
|
|
33
|
-
? (0, metric_logger_1.mapRespToPerfEntry)(e.axiosException.response)
|
|
34
|
-
: metric_logger_1.RUNNER_FAILURE_PERF_ENTRY);
|
|
35
|
-
output.error({
|
|
36
|
-
title: e.message,
|
|
37
|
-
});
|
|
38
|
-
process.exit(1);
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
|
-
}
|
|
42
|
-
completeRunGroup(runGroup) {
|
|
43
|
-
var _a;
|
|
44
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
const recorder = (0, metric_logger_1.createMetricRecorder)('createRunGroup');
|
|
46
|
-
try {
|
|
47
|
-
const resp = yield (0, axios_1.axiosMultipleTries)(() => this.apiAxiosInstance.post('/nx-cloud/executions/complete-run-group', {
|
|
48
|
-
runGroup: runGroup,
|
|
49
|
-
}));
|
|
50
|
-
recorder.recordMetric((0, metric_logger_1.mapRespToPerfEntry)(resp));
|
|
51
|
-
}
|
|
52
|
-
catch (e) {
|
|
53
|
-
recorder.recordMetric(((_a = e === null || e === void 0 ? void 0 : e.axiosException) === null || _a === void 0 ? void 0 : _a.response)
|
|
54
|
-
? (0, metric_logger_1.mapRespToPerfEntry)(e.axiosException.response)
|
|
55
|
-
: metric_logger_1.RUNNER_FAILURE_PERF_ENTRY);
|
|
56
|
-
output.error({
|
|
57
|
-
title: e.message,
|
|
58
|
-
});
|
|
59
|
-
process.exit(1);
|
|
60
|
-
}
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
exports.RunGroupApi = RunGroupApi;
|
|
65
|
-
//# sourceMappingURL=run-group.api.js.map
|
|
1
|
+
const a0_0x3f0f=['__esModule','throw','RUNNER_FAILURE_PERF_ENTRY','error','exit','createRunGroup','RunGroupApi','__awaiter','axiosMultipleTries','done','axiosException','mapRespToPerfEntry','createApiAxiosInstance','message','apply','../../utilities/axios','/nx-cloud/executions/complete-run-group','defineProperty','/nx-cloud/executions/create-run-group','response','post','then','createMetricRecorder','recordMetric','apiAxiosInstance','next','value','../../utilities/metric-logger','completeRunGroup'];(function(_0x165cb5,_0x3f0f42){const _0x2d189b=function(_0x3c3ef0){while(--_0x3c3ef0){_0x165cb5['push'](_0x165cb5['shift']());}};_0x2d189b(++_0x3f0f42);}(a0_0x3f0f,0xc1));const a0_0x2d18=function(_0x165cb5,_0x3f0f42){_0x165cb5=_0x165cb5-0x0;let _0x2d189b=a0_0x3f0f[_0x165cb5];return _0x2d189b;};'use strict';var __awaiter=this&&this[a0_0x2d18('0x11')]||function(_0x56018e,_0x17ac9d,_0x912c65,_0x34c994){function _0x5aeffd(_0x322b2d){return _0x322b2d instanceof _0x912c65?_0x322b2d:new _0x912c65(function(_0x255961){_0x255961(_0x322b2d);});}return new(_0x912c65||(_0x912c65=Promise))(function(_0x521695,_0x36f53d){function _0xaa3770(_0x258902){try{_0x5777d6(_0x34c994[a0_0x2d18('0x6')](_0x258902));}catch(_0x1bac06){_0x36f53d(_0x1bac06);}}function _0x33c13d(_0xee6508){try{_0x5777d6(_0x34c994[a0_0x2d18('0xb')](_0xee6508));}catch(_0x16576d){_0x36f53d(_0x16576d);}}function _0x5777d6(_0x53a3be){_0x53a3be[a0_0x2d18('0x13')]?_0x521695(_0x53a3be[a0_0x2d18('0x7')]):_0x5aeffd(_0x53a3be['value'])[a0_0x2d18('0x2')](_0xaa3770,_0x33c13d);}_0x5777d6((_0x34c994=_0x34c994[a0_0x2d18('0x18')](_0x56018e,_0x17ac9d||[]))[a0_0x2d18('0x6')]());});};Object[a0_0x2d18('0x1b')](exports,a0_0x2d18('0xa'),{'value':!![]});exports['RunGroupApi']=void 0x0;const axios_1=require(a0_0x2d18('0x19'));const metric_logger_1=require(a0_0x2d18('0x8'));const {output}=require('../../utilities/nx-imports');class RunGroupApi{constructor(_0x4cf25d){this['apiAxiosInstance']=(0x0,axios_1[a0_0x2d18('0x16')])(_0x4cf25d);}[a0_0x2d18('0xf')](_0x502f76,_0x54a1a7){var _0x665789;return __awaiter(this,void 0x0,void 0x0,function*(){const _0x253c23=(0x0,metric_logger_1[a0_0x2d18('0x3')])(a0_0x2d18('0xf'));try{const _0x1f7ab6=yield(0x0,axios_1[a0_0x2d18('0x12')])(()=>this[a0_0x2d18('0x5')]['post'](a0_0x2d18('0x1c'),{'branch':_0x502f76,'runGroup':_0x54a1a7}));_0x253c23[a0_0x2d18('0x4')]((0x0,metric_logger_1[a0_0x2d18('0x15')])(_0x1f7ab6));}catch(_0x349ae4){_0x253c23[a0_0x2d18('0x4')](((_0x665789=_0x349ae4===null||_0x349ae4===void 0x0?void 0x0:_0x349ae4['axiosException'])===null||_0x665789===void 0x0?void 0x0:_0x665789['response'])?(0x0,metric_logger_1[a0_0x2d18('0x15')])(_0x349ae4[a0_0x2d18('0x14')][a0_0x2d18('0x0')]):metric_logger_1[a0_0x2d18('0xc')]);output[a0_0x2d18('0xd')]({'title':_0x349ae4[a0_0x2d18('0x17')]});process[a0_0x2d18('0xe')](0x1);}});}[a0_0x2d18('0x9')](_0x4c4a1a){var _0x540bb0;return __awaiter(this,void 0x0,void 0x0,function*(){const _0xcfb5b5=(0x0,metric_logger_1[a0_0x2d18('0x3')])(a0_0x2d18('0xf'));try{const _0x3f4ece=yield(0x0,axios_1[a0_0x2d18('0x12')])(()=>this['apiAxiosInstance'][a0_0x2d18('0x1')](a0_0x2d18('0x1a'),{'runGroup':_0x4c4a1a}));_0xcfb5b5[a0_0x2d18('0x4')]((0x0,metric_logger_1['mapRespToPerfEntry'])(_0x3f4ece));}catch(_0x3a3b82){_0xcfb5b5[a0_0x2d18('0x4')](((_0x540bb0=_0x3a3b82===null||_0x3a3b82===void 0x0?void 0x0:_0x3a3b82[a0_0x2d18('0x14')])===null||_0x540bb0===void 0x0?void 0x0:_0x540bb0[a0_0x2d18('0x0')])?(0x0,metric_logger_1['mapRespToPerfEntry'])(_0x3a3b82[a0_0x2d18('0x14')][a0_0x2d18('0x0')]):metric_logger_1[a0_0x2d18('0xc')]);output[a0_0x2d18('0xd')]({'title':_0x3a3b82[a0_0x2d18('0x17')]});process[a0_0x2d18('0xe')](0x1);}});}}exports[a0_0x2d18('0x10')]=RunGroupApi;
|
|
@@ -1,138 +1 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CloudEnabledLifeCycle = void 0;
|
|
4
|
-
const path = require("path");
|
|
5
|
-
const path_1 = require("path");
|
|
6
|
-
const fs_1 = require("fs");
|
|
7
|
-
const { appRootPath, unparse } = require('../../../utilities/nx-imports');
|
|
8
|
-
class CloudEnabledLifeCycle {
|
|
9
|
-
constructor(runContext, cacheDirectory, skipNxCache, collectTerminalOutput, cacheableOperations, outputObfuscator, tasks) {
|
|
10
|
-
this.runContext = runContext;
|
|
11
|
-
this.cacheDirectory = cacheDirectory;
|
|
12
|
-
this.skipNxCache = skipNxCache;
|
|
13
|
-
this.collectTerminalOutput = collectTerminalOutput;
|
|
14
|
-
this.cacheableOperations = cacheableOperations;
|
|
15
|
-
this.outputObfuscator = outputObfuscator;
|
|
16
|
-
this.tasks = tasks;
|
|
17
|
-
}
|
|
18
|
-
scheduleTask(task) {
|
|
19
|
-
this.runContext.scheduledTasks.push(task);
|
|
20
|
-
}
|
|
21
|
-
startTask(task) {
|
|
22
|
-
const overrides = Object.assign({}, (task.overrides || {}));
|
|
23
|
-
if (task.target.configuration) {
|
|
24
|
-
overrides['configuration'] = task.target.configuration;
|
|
25
|
-
}
|
|
26
|
-
this.tasks.push({
|
|
27
|
-
taskId: task.id,
|
|
28
|
-
startTime: new Date().toISOString(),
|
|
29
|
-
target: task.target.target,
|
|
30
|
-
projectName: task.target.project,
|
|
31
|
-
hash: task.hash,
|
|
32
|
-
hashDetails: this.cleanUpHashDetails(task.hashDetails),
|
|
33
|
-
params: unparse(overrides).join(' '),
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
// Used for older version for Nx. Remove in Dec 2022
|
|
37
|
-
endTask(task, code) {
|
|
38
|
-
let cacheStatus;
|
|
39
|
-
if (this.runContext.statuses[task.hash]) {
|
|
40
|
-
cacheStatus = this.runContext.statuses[task.hash];
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
if (this.cacheableOperations.indexOf(task.target.target) > -1 &&
|
|
44
|
-
!this.skipNxCache) {
|
|
45
|
-
cacheStatus = 'local-cache-hit';
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
cacheStatus = 'cache-miss';
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
this.updateStartedTask(task, code, cacheStatus);
|
|
52
|
-
}
|
|
53
|
-
endTasks(tasks) {
|
|
54
|
-
for (let t of tasks) {
|
|
55
|
-
const status = t.status === 'remote-cache'
|
|
56
|
-
? 'remote-cache-hit'
|
|
57
|
-
: t.status === 'local-cache' ||
|
|
58
|
-
t.status === 'local-cache-kept-existing'
|
|
59
|
-
? 'local-cache-hit'
|
|
60
|
-
: 'cache-miss';
|
|
61
|
-
this.updateStartedTask(t.task, t.code, status);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
endCommand() { }
|
|
65
|
-
updateStartedTask(task, code, cacheStatus) {
|
|
66
|
-
const startedTask = this.tasks.find((t) => t.taskId === task.id);
|
|
67
|
-
if (!startedTask) {
|
|
68
|
-
throw new Error(`Cannot find task ${task.id}`);
|
|
69
|
-
}
|
|
70
|
-
startedTask.endTime = new Date().toISOString();
|
|
71
|
-
startedTask.status = code;
|
|
72
|
-
startedTask.params = this.outputObfuscator.obfuscate(startedTask.params);
|
|
73
|
-
startedTask.cacheStatus = cacheStatus;
|
|
74
|
-
if (this.collectTerminalOutput) {
|
|
75
|
-
startedTask.terminalOutput = this.getTerminalOutput(task.hash, startedTask.cacheStatus, code);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
getTerminalOutput(hash, cacheStatus, code) {
|
|
79
|
-
let dir;
|
|
80
|
-
if (this.cacheDirectory) {
|
|
81
|
-
if (this.cacheDirectory.startsWith('./')) {
|
|
82
|
-
dir = (0, path_1.join)(appRootPath, this.cacheDirectory);
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
dir = this.cacheDirectory;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
dir = (0, path_1.join)(appRootPath, 'node_modules', '.cache', 'nx');
|
|
90
|
-
}
|
|
91
|
-
try {
|
|
92
|
-
const taskOutput = this.readTerminalOutputFile(dir, hash);
|
|
93
|
-
const taskOutputSanitized = this.outputObfuscator.obfuscate(taskOutput);
|
|
94
|
-
const maxCharacters = cacheStatus === 'cache-miss'
|
|
95
|
-
? code === 0
|
|
96
|
-
? CloudEnabledLifeCycle.MAX_CHARACTERS_SUCCESSFUL_TASK
|
|
97
|
-
: CloudEnabledLifeCycle.MAX_CHARACTERS_FAILED_TASK
|
|
98
|
-
: CloudEnabledLifeCycle.MAX_CHARACTERS_CACHED_TASK;
|
|
99
|
-
return taskOutputSanitized.length > maxCharacters
|
|
100
|
-
? `TRUNCATED\n\n${taskOutputSanitized.slice(taskOutputSanitized.length - maxCharacters)}`
|
|
101
|
-
: taskOutputSanitized;
|
|
102
|
-
}
|
|
103
|
-
catch (e) {
|
|
104
|
-
return '';
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
cleanUpHashDetails(hashDetails) {
|
|
108
|
-
const nodes = {};
|
|
109
|
-
Object.keys(hashDetails.nodes)
|
|
110
|
-
.filter((k) => !k.startsWith('npm:'))
|
|
111
|
-
.forEach((k) => {
|
|
112
|
-
nodes[k] = hashDetails.nodes[k];
|
|
113
|
-
});
|
|
114
|
-
return {
|
|
115
|
-
nodes,
|
|
116
|
-
runtime: hashDetails.runtime,
|
|
117
|
-
implicitDeps: hashDetails.implicitDeps,
|
|
118
|
-
};
|
|
119
|
-
}
|
|
120
|
-
readTerminalOutputFile(dir, hash) {
|
|
121
|
-
try {
|
|
122
|
-
return (0, fs_1.readFileSync)(path.join(dir, 'terminalOutputs', hash)).toString();
|
|
123
|
-
}
|
|
124
|
-
catch (_a) {
|
|
125
|
-
try {
|
|
126
|
-
return (0, fs_1.readFileSync)(path.join(dir, hash, 'terminalOutput')).toString();
|
|
127
|
-
}
|
|
128
|
-
catch (_b) {
|
|
129
|
-
return '';
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
exports.CloudEnabledLifeCycle = CloudEnabledLifeCycle;
|
|
135
|
-
CloudEnabledLifeCycle.MAX_CHARACTERS_FAILED_TASK = 200000;
|
|
136
|
-
CloudEnabledLifeCycle.MAX_CHARACTERS_SUCCESSFUL_TASK = 20000;
|
|
137
|
-
CloudEnabledLifeCycle.MAX_CHARACTERS_CACHED_TASK = 20000;
|
|
138
|
-
//# sourceMappingURL=cloud-enabled-life-cycle.js.map
|
|
1
|
+
const a0_0x17fe=['startTask','configuration','scheduleTask','runContext','taskId','obfuscate','path','.cache','nodes','node_modules','params','cacheDirectory','CloudEnabledLifeCycle','terminalOutput','cacheStatus','forEach','endTime','indexOf','readFileSync','skipNxCache','startsWith','defineProperty','local-cache-kept-existing','MAX_CHARACTERS_SUCCESSFUL_TASK','length','scheduledTasks','task','updateStartedTask','find','runtime','toISOString','push','hash','join','cache-miss','endTask','cacheableOperations','toString','code','MAX_CHARACTERS_FAILED_TASK','target','keys','hashDetails','outputObfuscator','filter','getTerminalOutput','endCommand','endTasks','project','statuses','status','remote-cache-hit','__esModule'];(function(_0x2fcbc9,_0x17fe39){const _0x39eb9a=function(_0x39b302){while(--_0x39b302){_0x2fcbc9['push'](_0x2fcbc9['shift']());}};_0x39eb9a(++_0x17fe39);}(a0_0x17fe,0x12c));const a0_0x39eb=function(_0x2fcbc9,_0x17fe39){_0x2fcbc9=_0x2fcbc9-0x0;let _0x39eb9a=a0_0x17fe[_0x2fcbc9];return _0x39eb9a;};'use strict';Object[a0_0x39eb('0x27')](exports,a0_0x39eb('0x11'),{'value':!![]});exports['CloudEnabledLifeCycle']=void 0x0;const path=require('path');const path_1=require(a0_0x39eb('0x18'));const fs_1=require('fs');const {appRootPath,unparse}=require('../../../utilities/nx-imports');class CloudEnabledLifeCycle{constructor(_0x626fa6,_0x2b9765,_0x4c36c7,_0x475b4a,_0x202c9e,_0x2e2d16,_0xe158d6){this[a0_0x39eb('0x15')]=_0x626fa6;this[a0_0x39eb('0x1d')]=_0x2b9765;this[a0_0x39eb('0x25')]=_0x4c36c7;this['collectTerminalOutput']=_0x475b4a;this['cacheableOperations']=_0x202c9e;this[a0_0x39eb('0x8')]=_0x2e2d16;this['tasks']=_0xe158d6;}[a0_0x39eb('0x14')](_0x260a02){this[a0_0x39eb('0x15')][a0_0x39eb('0x2b')][a0_0x39eb('0x31')](_0x260a02);}[a0_0x39eb('0x12')](_0x44e301){const _0x517c62=Object['assign']({},_0x44e301['overrides']||{});if(_0x44e301[a0_0x39eb('0x5')][a0_0x39eb('0x13')]){_0x517c62[a0_0x39eb('0x13')]=_0x44e301[a0_0x39eb('0x5')][a0_0x39eb('0x13')];}this['tasks'][a0_0x39eb('0x31')]({'taskId':_0x44e301['id'],'startTime':new Date()['toISOString'](),'target':_0x44e301[a0_0x39eb('0x5')]['target'],'projectName':_0x44e301[a0_0x39eb('0x5')][a0_0x39eb('0xd')],'hash':_0x44e301['hash'],'hashDetails':this['cleanUpHashDetails'](_0x44e301[a0_0x39eb('0x7')]),'params':unparse(_0x517c62)['join']('\x20')});}[a0_0x39eb('0x0')](_0x38232a,_0x161d0c){let _0x13b1e7;if(this[a0_0x39eb('0x15')]['statuses'][_0x38232a[a0_0x39eb('0x32')]]){_0x13b1e7=this[a0_0x39eb('0x15')][a0_0x39eb('0xe')][_0x38232a[a0_0x39eb('0x32')]];}else{if(this[a0_0x39eb('0x1')][a0_0x39eb('0x23')](_0x38232a[a0_0x39eb('0x5')][a0_0x39eb('0x5')])>-0x1&&!this[a0_0x39eb('0x25')]){_0x13b1e7='local-cache-hit';}else{_0x13b1e7='cache-miss';}}this[a0_0x39eb('0x2d')](_0x38232a,_0x161d0c,_0x13b1e7);}[a0_0x39eb('0xc')](_0x59afd0){for(let _0x350243 of _0x59afd0){const _0x297ed2=_0x350243[a0_0x39eb('0xf')]==='remote-cache'?a0_0x39eb('0x10'):_0x350243[a0_0x39eb('0xf')]==='local-cache'||_0x350243[a0_0x39eb('0xf')]===a0_0x39eb('0x28')?'local-cache-hit':'cache-miss';this['updateStartedTask'](_0x350243[a0_0x39eb('0x2c')],_0x350243[a0_0x39eb('0x3')],_0x297ed2);}}[a0_0x39eb('0xb')](){}[a0_0x39eb('0x2d')](_0x592d64,_0x564787,_0x3c84b3){const _0xa708c5=this['tasks'][a0_0x39eb('0x2e')](_0x31e4d7=>_0x31e4d7[a0_0x39eb('0x16')]===_0x592d64['id']);if(!_0xa708c5){throw new Error('Cannot\x20find\x20task\x20'+_0x592d64['id']);}_0xa708c5[a0_0x39eb('0x22')]=new Date()[a0_0x39eb('0x30')]();_0xa708c5[a0_0x39eb('0xf')]=_0x564787;_0xa708c5['params']=this[a0_0x39eb('0x8')]['obfuscate'](_0xa708c5[a0_0x39eb('0x1c')]);_0xa708c5[a0_0x39eb('0x20')]=_0x3c84b3;if(this['collectTerminalOutput']){_0xa708c5['terminalOutput']=this['getTerminalOutput'](_0x592d64['hash'],_0xa708c5[a0_0x39eb('0x20')],_0x564787);}}[a0_0x39eb('0xa')](_0x2f70b9,_0x4ae085,_0x25a6f0){let _0x2a66d6;if(this[a0_0x39eb('0x1d')]){if(this['cacheDirectory']['startsWith']('./')){_0x2a66d6=(0x0,path_1[a0_0x39eb('0x33')])(appRootPath,this[a0_0x39eb('0x1d')]);}else{_0x2a66d6=this[a0_0x39eb('0x1d')];}}else{_0x2a66d6=(0x0,path_1[a0_0x39eb('0x33')])(appRootPath,a0_0x39eb('0x1b'),a0_0x39eb('0x19'),'nx');}try{const _0x1521b8=this['readTerminalOutputFile'](_0x2a66d6,_0x2f70b9);const _0x7b277f=this['outputObfuscator'][a0_0x39eb('0x17')](_0x1521b8);const _0x23a03c=_0x4ae085===a0_0x39eb('0x34')?_0x25a6f0===0x0?CloudEnabledLifeCycle[a0_0x39eb('0x29')]:CloudEnabledLifeCycle[a0_0x39eb('0x4')]:CloudEnabledLifeCycle['MAX_CHARACTERS_CACHED_TASK'];return _0x7b277f[a0_0x39eb('0x2a')]>_0x23a03c?'TRUNCATED\x0a\x0a'+_0x7b277f['slice'](_0x7b277f[a0_0x39eb('0x2a')]-_0x23a03c):_0x7b277f;}catch(_0x1f9391){return'';}}['cleanUpHashDetails'](_0x3c757f){const _0x44ac79={};Object[a0_0x39eb('0x6')](_0x3c757f[a0_0x39eb('0x1a')])[a0_0x39eb('0x9')](_0x1a3900=>!_0x1a3900[a0_0x39eb('0x26')]('npm:'))[a0_0x39eb('0x21')](_0x5747a1=>{_0x44ac79[_0x5747a1]=_0x3c757f[a0_0x39eb('0x1a')][_0x5747a1];});return{'nodes':_0x44ac79,'runtime':_0x3c757f[a0_0x39eb('0x2f')],'implicitDeps':_0x3c757f['implicitDeps']};}['readTerminalOutputFile'](_0x5de601,_0x524f7b){try{return(0x0,fs_1[a0_0x39eb('0x24')])(path[a0_0x39eb('0x33')](_0x5de601,'terminalOutputs',_0x524f7b))[a0_0x39eb('0x2')]();}catch(_0x45b73f){try{return(0x0,fs_1[a0_0x39eb('0x24')])(path['join'](_0x5de601,_0x524f7b,a0_0x39eb('0x1f')))[a0_0x39eb('0x2')]();}catch(_0x255eaa){return'';}}}}exports[a0_0x39eb('0x1e')]=CloudEnabledLifeCycle;CloudEnabledLifeCycle[a0_0x39eb('0x4')]=0x30d40;CloudEnabledLifeCycle['MAX_CHARACTERS_SUCCESSFUL_TASK']=0x4e20;CloudEnabledLifeCycle['MAX_CHARACTERS_CACHED_TASK']=0x4e20;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { CloudTaskRunnerOptions } from '../../models/cloud-task-runner-options';
|
|
2
2
|
import type { Observable } from 'rxjs';
|
|
3
3
|
import { Task } from '../../models/run-context.model';
|
|
4
|
-
export declare function cloudEnabledTasksRunner(tasks: Task[], options: CloudTaskRunnerOptions, context: any
|
|
4
|
+
export declare function cloudEnabledTasksRunner(tasks: Task[], options: CloudTaskRunnerOptions, context: any): Observable<any>;
|
|
@@ -1,170 +1 @@
|
|
|
1
|
-
|
|
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.cloudEnabledTasksRunner = void 0;
|
|
13
|
-
const Subject_1 = require("rxjs/internal/Subject");
|
|
14
|
-
const message_reporter_1 = require("../../terminal-output/message-reporter");
|
|
15
|
-
const end_of_run_message_1 = require("../../terminal-output/end-of-run-message");
|
|
16
|
-
const output_obfuscator_1 = require("../../terminal-output/output-obfuscator");
|
|
17
|
-
const cloud_enabled_life_cycle_1 = require("./cloud-enabled-life-cycle");
|
|
18
|
-
const file_storage_1 = require("../../file-storage/file-storage");
|
|
19
|
-
const e2e_encryption_1 = require("../../file-storage/e2e-encryption");
|
|
20
|
-
const environment_1 = require("../../../utilities/environment");
|
|
21
|
-
const cloud_remote_cache_1 = require("./cloud-remote-cache");
|
|
22
|
-
const cloud_run_api_1 = require("./cloud-run.api");
|
|
23
|
-
const fs_1 = require("fs");
|
|
24
|
-
const path = require("path");
|
|
25
|
-
const metric_logger_1 = require("../../../utilities/metric-logger");
|
|
26
|
-
const { tasksRunnerV2, output } = require('../../../utilities/nx-imports');
|
|
27
|
-
function createApi(errors, options, runContext) {
|
|
28
|
-
const machineInfo = (0, environment_1.getMachineInfo)(options);
|
|
29
|
-
return new cloud_run_api_1.CloudRunApi(errors, runContext, options, machineInfo);
|
|
30
|
-
}
|
|
31
|
-
function storeTaskHashes(taskExecutions, directory, distributedExecutionId) {
|
|
32
|
-
const hashes = JSON.stringify(taskExecutions.map((t) => ({
|
|
33
|
-
taskId: t.taskId,
|
|
34
|
-
hash: t.hash
|
|
35
|
-
})));
|
|
36
|
-
if (environment_1.VERBOSE_LOGGING) {
|
|
37
|
-
output.note({
|
|
38
|
-
title: `Executed tasks with hashes: ${hashes}`
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
(0, fs_1.writeFileSync)(path.join(directory, `tasks-hashes-${distributedExecutionId}`), hashes);
|
|
42
|
-
}
|
|
43
|
-
function onComplete(lifeCycle, options, remoteCache, api, outputObfuscator, runStartTime, messages, endOfRunMessage, taskExecutions, versionOfNxBefore133, innerRun) {
|
|
44
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
-
const runEndTime = new Date().toISOString();
|
|
46
|
-
if (environment_1.AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION) {
|
|
47
|
-
storeTaskHashes(taskExecutions, options.cacheDirectory || './node_modules/.cache/nx', environment_1.NX_CLOUD_DISTRIBUTED_EXECUTION_ID);
|
|
48
|
-
}
|
|
49
|
-
const branch = (0, environment_1.getBranch)();
|
|
50
|
-
const run = {
|
|
51
|
-
command: outputObfuscator.obfuscate((0, environment_1.parseCommand)()),
|
|
52
|
-
startTime: runStartTime,
|
|
53
|
-
endTime: runEndTime,
|
|
54
|
-
distributedExecutionId: environment_1.NX_CLOUD_DISTRIBUTED_EXECUTION_ID,
|
|
55
|
-
branch: branch,
|
|
56
|
-
scan: true,
|
|
57
|
-
runGroup: (0, environment_1.getRunGroup)(),
|
|
58
|
-
// only set sha if branch is set because we invoke a separate process,
|
|
59
|
-
// which adds a few millis
|
|
60
|
-
sha: branch ? (0, environment_1.extractGitSha)() : undefined
|
|
61
|
-
};
|
|
62
|
-
if (innerRun) {
|
|
63
|
-
run.inner = true;
|
|
64
|
-
}
|
|
65
|
-
const endRequest = yield Promise.all([
|
|
66
|
-
remoteCache.waitForStoreRequestsToComplete(),
|
|
67
|
-
api.endRun(run, taskExecutions)
|
|
68
|
-
]);
|
|
69
|
-
// this workaround is required because prior to Nx 13.3 we printed
|
|
70
|
-
// the end message after the runner completes, so we need to wait for the
|
|
71
|
-
// message to appear in the right place
|
|
72
|
-
if (versionOfNxBefore133) {
|
|
73
|
-
setTimeout(() => {
|
|
74
|
-
messages.printMessages();
|
|
75
|
-
if (!messages.anyErrors) {
|
|
76
|
-
endOfRunMessage.printCacheHitsMessage();
|
|
77
|
-
}
|
|
78
|
-
}, 0);
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
messages.printMessages();
|
|
82
|
-
if (!messages.anyErrors) {
|
|
83
|
-
endOfRunMessage.printCacheHitsMessage();
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
if (environment_1.AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION) {
|
|
87
|
-
if (!endRequest[0]) {
|
|
88
|
-
output.error({
|
|
89
|
-
title: `Agent wasn't able to store artifacts`
|
|
90
|
-
});
|
|
91
|
-
messages.printMessages();
|
|
92
|
-
process.exit(environment_1.DISTRIBUTED_TASK_EXECUTION_INTERNAL_ERROR_STATUS_CODE);
|
|
93
|
-
}
|
|
94
|
-
if (!endRequest[1]) {
|
|
95
|
-
output.error({
|
|
96
|
-
title: `Agent wasn't able to record its run`
|
|
97
|
-
});
|
|
98
|
-
messages.printMessages();
|
|
99
|
-
process.exit(environment_1.DISTRIBUTED_TASK_EXECUTION_INTERNAL_ERROR_STATUS_CODE);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
yield (0, metric_logger_1.submitRunMetrics)(options);
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
function createLifeCycle(runContext, options, outputObfuscator, tasks) {
|
|
106
|
-
const cloudEnabledLifeCycle = new cloud_enabled_life_cycle_1.CloudEnabledLifeCycle(runContext, options.cacheDirectory, !!options.skipNxCache, options.scan === undefined ? true : options.scan, options.cacheableOperations || [], outputObfuscator, tasks);
|
|
107
|
-
try {
|
|
108
|
-
const { CompositeLifeCycle } = require('../../../utilities/nx-imports');
|
|
109
|
-
if (!CompositeLifeCycle)
|
|
110
|
-
return cloudEnabledLifeCycle;
|
|
111
|
-
return new CompositeLifeCycle([options.lifeCycle, cloudEnabledLifeCycle]);
|
|
112
|
-
}
|
|
113
|
-
catch (e) {
|
|
114
|
-
return cloudEnabledLifeCycle;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
function cloudEnabledTasksRunner(tasks, options, context, innerRun = false) {
|
|
118
|
-
const runContext = {
|
|
119
|
-
statuses: {},
|
|
120
|
-
scheduledTasks: [],
|
|
121
|
-
requests: {},
|
|
122
|
-
allTasks: tasks
|
|
123
|
-
};
|
|
124
|
-
const versionOfNxBefore133 = options.lifeCycle === undefined;
|
|
125
|
-
const taskExecutions = [];
|
|
126
|
-
const messages = new message_reporter_1.MessageReporter(options);
|
|
127
|
-
const api = createApi(messages, options, runContext);
|
|
128
|
-
const endOfRunMessage = new end_of_run_message_1.EndOfRunMessage(runContext, taskExecutions);
|
|
129
|
-
const outputObfuscator = new output_obfuscator_1.OutputObfuscator(options.maskedProperties);
|
|
130
|
-
const hashes = tasks.map((t) => t.hash).filter((h) => !!h);
|
|
131
|
-
const startRunRequest = api.startRun(environment_1.NX_CLOUD_DISTRIBUTED_EXECUTION_ID, hashes);
|
|
132
|
-
hashes.forEach((hash) => {
|
|
133
|
-
runContext.requests[hash] = startRunRequest;
|
|
134
|
-
});
|
|
135
|
-
const runStartTime = new Date().toISOString();
|
|
136
|
-
const lifeCycle = createLifeCycle(runContext, options, outputObfuscator, taskExecutions);
|
|
137
|
-
const encryption = new e2e_encryption_1.E2EEncryption(environment_1.ENCRYPTION_KEY || options.encryptionKey);
|
|
138
|
-
const fileStorage = new file_storage_1.FileStorage(encryption);
|
|
139
|
-
const remoteCache = new cloud_remote_cache_1.CloudRemoteCache(messages, api, runContext, fileStorage);
|
|
140
|
-
// have to reset it so we don't capture inner tasks
|
|
141
|
-
delete process.env.NX_CLOUD_DISTRIBUTED_EXECUTION_ID;
|
|
142
|
-
const res = tasksRunnerV2(tasks, Object.assign(Object.assign({}, options), { remoteCache, lifeCycle }), context);
|
|
143
|
-
// observable -> legacy
|
|
144
|
-
if (res.subscribe) {
|
|
145
|
-
const wrappedRes = new Subject_1.Subject();
|
|
146
|
-
res.subscribe({
|
|
147
|
-
next: (value) => wrappedRes.next(value),
|
|
148
|
-
error: (err) => wrappedRes.error(err),
|
|
149
|
-
complete: () => __awaiter(this, void 0, void 0, function* () {
|
|
150
|
-
yield onComplete(lifeCycle, options, remoteCache, api, outputObfuscator, runStartTime, messages, endOfRunMessage, taskExecutions, versionOfNxBefore133, innerRun);
|
|
151
|
-
wrappedRes.complete();
|
|
152
|
-
})
|
|
153
|
-
});
|
|
154
|
-
return wrappedRes;
|
|
155
|
-
// promise
|
|
156
|
-
}
|
|
157
|
-
else {
|
|
158
|
-
return res
|
|
159
|
-
.then((r) => __awaiter(this, void 0, void 0, function* () {
|
|
160
|
-
yield onComplete(lifeCycle, options, remoteCache, api, outputObfuscator, runStartTime, messages, endOfRunMessage, taskExecutions, versionOfNxBefore133, innerRun);
|
|
161
|
-
return r;
|
|
162
|
-
}))
|
|
163
|
-
.catch((e) => __awaiter(this, void 0, void 0, function* () {
|
|
164
|
-
yield onComplete(lifeCycle, options, remoteCache, api, outputObfuscator, runStartTime, messages, endOfRunMessage, taskExecutions, versionOfNxBefore133, innerRun);
|
|
165
|
-
throw e;
|
|
166
|
-
}));
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
exports.cloudEnabledTasksRunner = cloudEnabledTasksRunner;
|
|
170
|
-
//# sourceMappingURL=cloud-enabled.runner.js.map
|
|
1
|
+
const a1_0x369c=['toISOString','value','../../terminal-output/end-of-run-message','Agent\x20wasn\x27t\x20able\x20to\x20store\x20artifacts','env','cloudEnabledTasksRunner','stringify','hash','scan','throw','CloudEnabledLifeCycle','next','error','writeFileSync','__awaiter','all','catch','assign','then','CloudRunApi','startRun','E2EEncryption','getRunGroup','MessageReporter','OutputObfuscator','map','lifeCycle','waitForStoreRequestsToComplete','getMachineInfo','printMessages','anyErrors','obfuscate','./cloud-enabled-life-cycle','apply','defineProperty','CloudRemoteCache','NX_CLOUD_DISTRIBUTED_EXECUTION_ID','../../file-storage/file-storage','./node_modules/.cache/nx','note','cacheableOperations','DISTRIBUTED_TASK_EXECUTION_INTERNAL_ERROR_STATUS_CODE','Agent\x20wasn\x27t\x20able\x20to\x20record\x20its\x20run','../../file-storage/e2e-encryption','filter','Executed\x20tasks\x20with\x20hashes:\x20','submitRunMetrics','cacheDirectory','skipNxCache','__esModule','../../../utilities/environment','../../terminal-output/output-obfuscator','../../../utilities/nx-imports','endRun','tasks-hashes-','../../terminal-output/message-reporter','rxjs/internal/Subject','../../../utilities/metric-logger','exit','FileStorage','printCacheHitsMessage','extractGitSha'];(function(_0x4339f9,_0x369c98){const _0x3e38ac=function(_0x1fd53c){while(--_0x1fd53c){_0x4339f9['push'](_0x4339f9['shift']());}};_0x3e38ac(++_0x369c98);}(a1_0x369c,0x17e));const a1_0x3e38=function(_0x4339f9,_0x369c98){_0x4339f9=_0x4339f9-0x0;let _0x3e38ac=a1_0x369c[_0x4339f9];return _0x3e38ac;};'use strict';var __awaiter=this&&this[a1_0x3e38('0x4')]||function(_0x3185a9,_0x4f4969,_0x360b81,_0x105513){function _0x2b6423(_0x2d39d4){return _0x2d39d4 instanceof _0x360b81?_0x2d39d4:new _0x360b81(function(_0x547257){_0x547257(_0x2d39d4);});}return new(_0x360b81||(_0x360b81=Promise))(function(_0x437938,_0x1065c6){function _0x5d3c68(_0xf102a1){try{_0x6319e3(_0x105513['next'](_0xf102a1));}catch(_0x5ecb11){_0x1065c6(_0x5ecb11);}}function _0x848662(_0xb4381f){try{_0x6319e3(_0x105513[a1_0x3e38('0x3d')](_0xb4381f));}catch(_0x3cfd86){_0x1065c6(_0x3cfd86);}}function _0x6319e3(_0x58b178){_0x58b178['done']?_0x437938(_0x58b178[a1_0x3e38('0x35')]):_0x2b6423(_0x58b178[a1_0x3e38('0x35')])[a1_0x3e38('0x8')](_0x5d3c68,_0x848662);}_0x6319e3((_0x105513=_0x105513[a1_0x3e38('0x17')](_0x3185a9,_0x4f4969||[]))['next']());});};Object[a1_0x3e38('0x18')](exports,a1_0x3e38('0x27'),{'value':!![]});exports['cloudEnabledTasksRunner']=void 0x0;const Subject_1=require(a1_0x3e38('0x2e'));const message_reporter_1=require(a1_0x3e38('0x2d'));const end_of_run_message_1=require(a1_0x3e38('0x36'));const output_obfuscator_1=require(a1_0x3e38('0x29'));const cloud_enabled_life_cycle_1=require(a1_0x3e38('0x16'));const file_storage_1=require(a1_0x3e38('0x1b'));const e2e_encryption_1=require(a1_0x3e38('0x21'));const environment_1=require(a1_0x3e38('0x28'));const cloud_remote_cache_1=require('./cloud-remote-cache');const cloud_run_api_1=require('./cloud-run.api');const fs_1=require('fs');const path=require('path');const metric_logger_1=require(a1_0x3e38('0x2f'));const {tasksRunnerV2,output}=require(a1_0x3e38('0x2a'));function createApi(_0x2a9167,_0x2fbab0,_0x4eb85f){const _0x2e2a23=(0x0,environment_1[a1_0x3e38('0x12')])(_0x2fbab0);return new cloud_run_api_1[(a1_0x3e38('0x9'))](_0x2a9167,_0x4eb85f,_0x2fbab0,_0x2e2a23);}function storeTaskHashes(_0x4e34b0,_0x4bb63b,_0x11c137){const _0x565317=JSON[a1_0x3e38('0x3a')](_0x4e34b0[a1_0x3e38('0xf')](_0x110772=>({'taskId':_0x110772['taskId'],'hash':_0x110772[a1_0x3e38('0x3b')]})));if(environment_1['VERBOSE_LOGGING']){output[a1_0x3e38('0x1d')]({'title':a1_0x3e38('0x23')+_0x565317});}(0x0,fs_1[a1_0x3e38('0x3')])(path['join'](_0x4bb63b,a1_0x3e38('0x2c')+_0x11c137),_0x565317);}function onComplete(_0x50bbae,_0x4711d3,_0x1e0ce1,_0x53e511,_0x29cf56,_0x29cb3f,_0x59c0cd,_0x236a00,_0x18e77c,_0x33682f){return __awaiter(this,void 0x0,void 0x0,function*(){const _0x3f1514=new Date()[a1_0x3e38('0x34')]();if(environment_1['AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION']){storeTaskHashes(_0x18e77c,_0x4711d3[a1_0x3e38('0x25')]||a1_0x3e38('0x1c'),environment_1[a1_0x3e38('0x1a')]);}const _0x49782e=(0x0,environment_1['getBranch'])();const _0x5ba941=yield Promise[a1_0x3e38('0x5')]([_0x1e0ce1[a1_0x3e38('0x11')](),_0x53e511[a1_0x3e38('0x2b')]({'command':_0x29cf56[a1_0x3e38('0x15')]((0x0,environment_1['parseCommand'])()),'startTime':_0x29cb3f,'endTime':_0x3f1514,'distributedExecutionId':environment_1[a1_0x3e38('0x1a')],'branch':_0x49782e,'scan':!![],'runGroup':(0x0,environment_1[a1_0x3e38('0xc')])(),'sha':_0x49782e?(0x0,environment_1[a1_0x3e38('0x33')])():undefined},_0x18e77c)]);if(_0x33682f){setTimeout(()=>{_0x59c0cd[a1_0x3e38('0x13')]();if(!_0x59c0cd[a1_0x3e38('0x14')]){_0x236a00[a1_0x3e38('0x32')]();}},0x0);}else{_0x59c0cd[a1_0x3e38('0x13')]();if(!_0x59c0cd[a1_0x3e38('0x14')]){_0x236a00[a1_0x3e38('0x32')]();}}if(environment_1['AGENT_RUNNING_IN_DISTRIBUTED_EXECUTION']){if(!_0x5ba941[0x0]){output['error']({'title':a1_0x3e38('0x37')});_0x59c0cd[a1_0x3e38('0x13')]();process[a1_0x3e38('0x30')](environment_1[a1_0x3e38('0x1f')]);}if(!_0x5ba941[0x1]){output[a1_0x3e38('0x2')]({'title':a1_0x3e38('0x20')});_0x59c0cd[a1_0x3e38('0x13')]();process['exit'](environment_1[a1_0x3e38('0x1f')]);}}yield(0x0,metric_logger_1[a1_0x3e38('0x24')])(_0x4711d3);});}function createLifeCycle(_0x47a625,_0x2de395,_0xc3df51,_0x5512c9){const _0x4f3ada=new cloud_enabled_life_cycle_1[(a1_0x3e38('0x0'))](_0x47a625,_0x2de395[a1_0x3e38('0x25')],!!_0x2de395[a1_0x3e38('0x26')],_0x2de395['scan']===undefined?!![]:_0x2de395[a1_0x3e38('0x3c')],_0x2de395[a1_0x3e38('0x1e')]||[],_0xc3df51,_0x5512c9);try{const {CompositeLifeCycle}=require(a1_0x3e38('0x2a'));if(!CompositeLifeCycle)return _0x4f3ada;return new CompositeLifeCycle([_0x2de395[a1_0x3e38('0x10')],_0x4f3ada]);}catch(_0x1565bb){return _0x4f3ada;}}function cloudEnabledTasksRunner(_0x1118ba,_0x1f61ad,_0x590c6e){const _0x36310c={'statuses':{},'scheduledTasks':[],'requests':{},'allTasks':_0x1118ba};const _0x344917=_0x1f61ad['lifeCycle']===undefined;const _0x4f46c7=[];const _0x394f9a=new message_reporter_1[(a1_0x3e38('0xd'))](_0x1f61ad);const _0x434ffe=createApi(_0x394f9a,_0x1f61ad,_0x36310c);const _0x1ebfaa=new end_of_run_message_1['EndOfRunMessage'](_0x36310c,_0x4f46c7);const _0x58b5d6=new output_obfuscator_1[(a1_0x3e38('0xe'))](_0x1f61ad['maskedProperties']);const _0x55ff52=_0x1118ba[a1_0x3e38('0xf')](_0x248776=>_0x248776[a1_0x3e38('0x3b')])[a1_0x3e38('0x22')](_0x477804=>!!_0x477804);const _0x19056d=_0x434ffe[a1_0x3e38('0xa')](environment_1[a1_0x3e38('0x1a')],_0x55ff52);_0x55ff52['forEach'](_0x35e733=>{_0x36310c['requests'][_0x35e733]=_0x19056d;});const _0x448d21=new Date()[a1_0x3e38('0x34')]();const _0x3f021e=createLifeCycle(_0x36310c,_0x1f61ad,_0x58b5d6,_0x4f46c7);const _0x4417de=new e2e_encryption_1[(a1_0x3e38('0xb'))](environment_1['ENCRYPTION_KEY']||_0x1f61ad['encryptionKey']);const _0x23e31e=new file_storage_1[(a1_0x3e38('0x31'))](_0x4417de);const _0x373a82=new cloud_remote_cache_1[(a1_0x3e38('0x19'))](_0x394f9a,_0x434ffe,_0x36310c,_0x23e31e);delete process[a1_0x3e38('0x38')][a1_0x3e38('0x1a')];const _0x2b2359=tasksRunnerV2(_0x1118ba,Object['assign'](Object[a1_0x3e38('0x7')]({},_0x1f61ad),{'remoteCache':_0x373a82,'lifeCycle':_0x3f021e}),_0x590c6e);if(_0x2b2359['subscribe']){const _0x2d2ee2=new Subject_1['Subject']();_0x2b2359['subscribe']({'next':_0x1977f4=>_0x2d2ee2[a1_0x3e38('0x1')](_0x1977f4),'error':_0x24c7fd=>_0x2d2ee2[a1_0x3e38('0x2')](_0x24c7fd),'complete':()=>__awaiter(this,void 0x0,void 0x0,function*(){yield onComplete(_0x3f021e,_0x1f61ad,_0x373a82,_0x434ffe,_0x58b5d6,_0x448d21,_0x394f9a,_0x1ebfaa,_0x4f46c7,_0x344917);_0x2d2ee2['complete']();})});return _0x2d2ee2;}else{return _0x2b2359[a1_0x3e38('0x8')](_0x48a167=>__awaiter(this,void 0x0,void 0x0,function*(){yield onComplete(_0x3f021e,_0x1f61ad,_0x373a82,_0x434ffe,_0x58b5d6,_0x448d21,_0x394f9a,_0x1ebfaa,_0x4f46c7,_0x344917);return _0x48a167;}))[a1_0x3e38('0x6')](_0x424235=>__awaiter(this,void 0x0,void 0x0,function*(){yield onComplete(_0x3f021e,_0x1f61ad,_0x373a82,_0x434ffe,_0x58b5d6,_0x448d21,_0x394f9a,_0x1ebfaa,_0x4f46c7,_0x344917);throw _0x424235;}));}}exports[a1_0x3e38('0x39')]=cloudEnabledTasksRunner;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud-enabled.runner.js","sourceRoot":"","sources":["../../../../../../../../libs/nx-packages/nx-cloud/lib/core/runners/cloud-enabled/cloud-enabled.runner.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,mDAAgD;AAEhD,6EAAyE;AACzE,iFAA2E;AAC3E,+EAA2E;AAC3E,yEAAmE;AACnE,kEAA8D;AAC9D,sEAAkE;AAClE,gEAWwC;AACxC,6DAAwD;AACxD,mDAA8C;AAE9C,2BAAmC;AACnC,6BAA6B;AAC7B,oEAAoE;
|
|
1
|
+
{"version":3,"file":"cloud-enabled.runner.js","sourceRoot":"","sources":["../../../../../../../../libs/nx-packages/nx-cloud/lib/core/runners/cloud-enabled/cloud-enabled.runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,113 +1 @@
|
|
|
1
|
-
|
|
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.CloudRemoteCache = void 0;
|
|
13
|
-
const environment_1 = require("../../../utilities/environment");
|
|
14
|
-
const { output } = require('../../../utilities/nx-imports');
|
|
15
|
-
class CloudRemoteCache {
|
|
16
|
-
constructor(messages, api, runContext, fileStorage) {
|
|
17
|
-
this.messages = messages;
|
|
18
|
-
this.api = api;
|
|
19
|
-
this.runContext = runContext;
|
|
20
|
-
this.fileStorage = fileStorage;
|
|
21
|
-
this.storeRequests = [];
|
|
22
|
-
}
|
|
23
|
-
retrieve(hash, cacheDirectory) {
|
|
24
|
-
var _a;
|
|
25
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
if (this.messages.cacheError)
|
|
27
|
-
return false;
|
|
28
|
-
const hashUrls = yield this.hashUrls(hash);
|
|
29
|
-
if (!hashUrls || !hashUrls.get) {
|
|
30
|
-
if (environment_1.VERBOSE_LOGGING) {
|
|
31
|
-
output.note({ title: `Nx Cloud: Cache miss ${hash}.` });
|
|
32
|
-
}
|
|
33
|
-
this.runContext.statuses[hash] = 'cache-miss';
|
|
34
|
-
return false;
|
|
35
|
-
}
|
|
36
|
-
try {
|
|
37
|
-
yield this.fileStorage.retrieve(hash, hashUrls.get, cacheDirectory);
|
|
38
|
-
this.runContext.statuses[hash] = 'remote-cache-hit';
|
|
39
|
-
return true;
|
|
40
|
-
}
|
|
41
|
-
catch (ee) {
|
|
42
|
-
const e = (_a = ee.axiosException) !== null && _a !== void 0 ? _a : ee;
|
|
43
|
-
if (e.response && e.response.status === 404) {
|
|
44
|
-
if (environment_1.VERBOSE_LOGGING) {
|
|
45
|
-
output.note({ title: `Nx Cloud: Cache miss ${hash}. Status 404.` });
|
|
46
|
-
}
|
|
47
|
-
// cache miss. print nothing
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
this.messages.cacheError = this.messages.extractErrorMessage(e, 'storage');
|
|
51
|
-
}
|
|
52
|
-
this.runContext.statuses[hash] = 'cache-miss';
|
|
53
|
-
return false;
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
store(hash, cacheDirectory) {
|
|
58
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
if (this.messages.cacheError)
|
|
60
|
-
return false;
|
|
61
|
-
const res = Promise.resolve().then(() => __awaiter(this, void 0, void 0, function* () {
|
|
62
|
-
var _a;
|
|
63
|
-
const hashUrls = yield this.hashUrls(hash);
|
|
64
|
-
if (!hashUrls)
|
|
65
|
-
return false;
|
|
66
|
-
if (!hashUrls.put) {
|
|
67
|
-
if (environment_1.VERBOSE_LOGGING) {
|
|
68
|
-
output.note({
|
|
69
|
-
title: `Nx Cloud: Skipping storing ${hash}. Read only token is used.`,
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
return true;
|
|
73
|
-
}
|
|
74
|
-
try {
|
|
75
|
-
yield this.fileStorage.store(hash, hashUrls.put, cacheDirectory);
|
|
76
|
-
return true;
|
|
77
|
-
}
|
|
78
|
-
catch (ee) {
|
|
79
|
-
const e = (_a = ee.axiosException) !== null && _a !== void 0 ? _a : ee;
|
|
80
|
-
this.messages.cacheError = this.messages.extractErrorMessage(e, 'storage');
|
|
81
|
-
return false;
|
|
82
|
-
}
|
|
83
|
-
}));
|
|
84
|
-
this.storeRequests.push(res);
|
|
85
|
-
return res;
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
hashUrls(hash) {
|
|
89
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
90
|
-
if (hash in this.runContext.requests) {
|
|
91
|
-
return (yield this.runContext.requests[hash])[hash];
|
|
92
|
-
}
|
|
93
|
-
else {
|
|
94
|
-
const scheduledTaskHashesWithoutRequests = this.runContext.scheduledTasks
|
|
95
|
-
.filter((t) => !this.runContext.requests[t.hash])
|
|
96
|
-
.map((t) => t.hash);
|
|
97
|
-
if (scheduledTaskHashesWithoutRequests.indexOf(hash) === -1) {
|
|
98
|
-
scheduledTaskHashesWithoutRequests.push(hash);
|
|
99
|
-
}
|
|
100
|
-
const request = this.api.startRun(environment_1.NX_CLOUD_DISTRIBUTED_EXECUTION_ID, scheduledTaskHashesWithoutRequests);
|
|
101
|
-
scheduledTaskHashesWithoutRequests.forEach((taskHash) => {
|
|
102
|
-
this.runContext.requests[taskHash] = request;
|
|
103
|
-
});
|
|
104
|
-
return (yield request)[hash];
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
}
|
|
108
|
-
waitForStoreRequestsToComplete() {
|
|
109
|
-
return Promise.all(this.storeRequests).then((r) => r.reduce((a, b) => a && b, true));
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
exports.CloudRemoteCache = CloudRemoteCache;
|
|
113
|
-
//# sourceMappingURL=cloud-remote-cache.js.map
|
|
1
|
+
const a2_0x10fa=['status','hash','throw','value','push','.\x20Read\x20only\x20token\x20is\x20used.','note','done','retrieve','storeRequests','put','resolve','startRun','__esModule','statuses','waitForStoreRequestsToComplete','__awaiter','response','store','forEach','reduce','apply','fileStorage','messages','Nx\x20Cloud:\x20Cache\x20miss\x20','cacheError','get','cache-miss','defineProperty','api','../../../utilities/nx-imports','VERBOSE_LOGGING','../../../utilities/environment','extractErrorMessage','axiosException','scheduledTasks','.\x20Status\x20404.','Nx\x20Cloud:\x20Skipping\x20storing\x20','storage','requests','hashUrls','next','runContext','CloudRemoteCache','then','filter'];(function(_0x8a8d99,_0x10fa3f){const _0x2a3156=function(_0x2c5cc1){while(--_0x2c5cc1){_0x8a8d99['push'](_0x8a8d99['shift']());}};_0x2a3156(++_0x10fa3f);}(a2_0x10fa,0x88));const a2_0x2a31=function(_0x8a8d99,_0x10fa3f){_0x8a8d99=_0x8a8d99-0x0;let _0x2a3156=a2_0x10fa[_0x8a8d99];return _0x2a3156;};'use strict';var __awaiter=this&&this[a2_0x2a31('0x12')]||function(_0x50e623,_0x341e63,_0x5c8ce4,_0x61895b){function _0x3e1bc8(_0x30a612){return _0x30a612 instanceof _0x5c8ce4?_0x30a612:new _0x5c8ce4(function(_0x5c2244){_0x5c2244(_0x30a612);});}return new(_0x5c8ce4||(_0x5c8ce4=Promise))(function(_0x2b71c6,_0xcd720){function _0x882164(_0x2f4e70){try{_0x3a9909(_0x61895b['next'](_0x2f4e70));}catch(_0x43fa6e){_0xcd720(_0x43fa6e);}}function _0x3477ee(_0x4d8ec5){try{_0x3a9909(_0x61895b[a2_0x2a31('0x4')](_0x4d8ec5));}catch(_0x3472aa){_0xcd720(_0x3472aa);}}function _0x3a9909(_0x5de07a){_0x5de07a[a2_0x2a31('0x9')]?_0x2b71c6(_0x5de07a[a2_0x2a31('0x5')]):_0x3e1bc8(_0x5de07a[a2_0x2a31('0x5')])[a2_0x2a31('0x0')](_0x882164,_0x3477ee);}_0x3a9909((_0x61895b=_0x61895b[a2_0x2a31('0x17')](_0x50e623,_0x341e63||[]))[a2_0x2a31('0x2b')]());});};Object[a2_0x2a31('0x1e')](exports,a2_0x2a31('0xf'),{'value':!![]});exports['CloudRemoteCache']=void 0x0;const environment_1=require(a2_0x2a31('0x22'));const {output}=require(a2_0x2a31('0x20'));class CloudRemoteCache{constructor(_0x40519c,_0x19dd27,_0x1e617c,_0x4ec519){this[a2_0x2a31('0x19')]=_0x40519c;this[a2_0x2a31('0x1f')]=_0x19dd27;this['runContext']=_0x1e617c;this[a2_0x2a31('0x18')]=_0x4ec519;this['storeRequests']=[];}[a2_0x2a31('0xa')](_0x884b2a,_0x48da26){var _0x4bb6bc;return __awaiter(this,void 0x0,void 0x0,function*(){if(this['messages'][a2_0x2a31('0x1b')])return![];const _0xec43c7=yield this[a2_0x2a31('0x2a')](_0x884b2a);if(!_0xec43c7||!_0xec43c7[a2_0x2a31('0x1c')]){if(environment_1[a2_0x2a31('0x21')]){output[a2_0x2a31('0x8')]({'title':a2_0x2a31('0x1a')+_0x884b2a+'.'});}this[a2_0x2a31('0x2c')][a2_0x2a31('0x10')][_0x884b2a]=a2_0x2a31('0x1d');return![];}try{yield this[a2_0x2a31('0x18')][a2_0x2a31('0xa')](_0x884b2a,_0xec43c7['get'],_0x48da26);this[a2_0x2a31('0x2c')][a2_0x2a31('0x10')][_0x884b2a]='remote-cache-hit';return!![];}catch(_0x31cb05){const _0x5a9878=(_0x4bb6bc=_0x31cb05[a2_0x2a31('0x24')])!==null&&_0x4bb6bc!==void 0x0?_0x4bb6bc:_0x31cb05;if(_0x5a9878[a2_0x2a31('0x13')]&&_0x5a9878[a2_0x2a31('0x13')][a2_0x2a31('0x2')]===0x194){if(environment_1[a2_0x2a31('0x21')]){output[a2_0x2a31('0x8')]({'title':a2_0x2a31('0x1a')+_0x884b2a+a2_0x2a31('0x26')});}}else{this[a2_0x2a31('0x19')]['cacheError']=this[a2_0x2a31('0x19')][a2_0x2a31('0x23')](_0x5a9878,a2_0x2a31('0x28'));}this[a2_0x2a31('0x2c')][a2_0x2a31('0x10')][_0x884b2a]='cache-miss';return![];}});}[a2_0x2a31('0x14')](_0x34fa1f,_0x336c9b){return __awaiter(this,void 0x0,void 0x0,function*(){if(this[a2_0x2a31('0x19')][a2_0x2a31('0x1b')])return![];const _0x1c09d9=Promise[a2_0x2a31('0xd')]()['then'](()=>__awaiter(this,void 0x0,void 0x0,function*(){var _0x42cf2e;const _0x1dd4f3=yield this[a2_0x2a31('0x2a')](_0x34fa1f);if(!_0x1dd4f3)return![];if(!_0x1dd4f3['put']){if(environment_1[a2_0x2a31('0x21')]){output['note']({'title':a2_0x2a31('0x27')+_0x34fa1f+a2_0x2a31('0x7')});}return!![];}try{yield this[a2_0x2a31('0x18')][a2_0x2a31('0x14')](_0x34fa1f,_0x1dd4f3[a2_0x2a31('0xc')],_0x336c9b);return!![];}catch(_0x572af0){const _0x3ff0a9=(_0x42cf2e=_0x572af0[a2_0x2a31('0x24')])!==null&&_0x42cf2e!==void 0x0?_0x42cf2e:_0x572af0;this[a2_0x2a31('0x19')][a2_0x2a31('0x1b')]=this['messages'][a2_0x2a31('0x23')](_0x3ff0a9,a2_0x2a31('0x28'));return![];}}));this[a2_0x2a31('0xb')][a2_0x2a31('0x6')](_0x1c09d9);return _0x1c09d9;});}[a2_0x2a31('0x2a')](_0x3c76c9){return __awaiter(this,void 0x0,void 0x0,function*(){if(_0x3c76c9 in this[a2_0x2a31('0x2c')][a2_0x2a31('0x29')]){return(yield this[a2_0x2a31('0x2c')]['requests'][_0x3c76c9])[_0x3c76c9];}else{const _0xcd442e=this['runContext'][a2_0x2a31('0x25')][a2_0x2a31('0x1')](_0x1fdff0=>!this['runContext'][a2_0x2a31('0x29')][_0x1fdff0[a2_0x2a31('0x3')]])['map'](_0x587c69=>_0x587c69[a2_0x2a31('0x3')]);if(_0xcd442e['indexOf'](_0x3c76c9)===-0x1){_0xcd442e[a2_0x2a31('0x6')](_0x3c76c9);}const _0x49b130=this[a2_0x2a31('0x1f')][a2_0x2a31('0xe')](environment_1['NX_CLOUD_DISTRIBUTED_EXECUTION_ID'],_0xcd442e);_0xcd442e[a2_0x2a31('0x15')](_0x590f54=>{this[a2_0x2a31('0x2c')][a2_0x2a31('0x29')][_0x590f54]=_0x49b130;});return(yield _0x49b130)[_0x3c76c9];}});}[a2_0x2a31('0x11')](){return Promise['all'](this[a2_0x2a31('0xb')])[a2_0x2a31('0x0')](_0x23a426=>_0x23a426[a2_0x2a31('0x16')]((_0x3fc57e,_0x379224)=>_0x3fc57e&&_0x379224,!![]));}}exports[a2_0x2a31('0x2d')]=CloudRemoteCache;
|