@nrwl/nx-cloud 14.0.3-beta.1 → 14.0.3
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 +1 -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 +1 -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 +1 -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 +1 -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 +1 -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 +1 -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 +1 -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 +1 -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 +1 -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 +110 -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 +25 -0
- package/lib/utilities/environment.js +157 -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
package/bin/nx-cloud.js
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
const distributed_agent_impl_1 = require("../lib/core/runners/distributed-agent/distributed-agent.impl");
|
|
5
|
+
const start_ci_run_1 = require("../lib/core/commands/start-ci-run");
|
|
6
|
+
const stop_all_agents_1 = require("../lib/core/commands/stop-all-agents");
|
|
7
|
+
const clean_up_agents_1 = require("../lib/core/commands/clean-up-agents");
|
|
8
|
+
const record_output_1 = require("../lib/core/commands/record-output");
|
|
9
|
+
const command = process.argv[2];
|
|
10
|
+
if (command === 'start-agent') {
|
|
11
|
+
(0, distributed_agent_impl_1.startAgent)().catch((e) => {
|
|
12
|
+
console.error(e);
|
|
13
|
+
process.exit(1);
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
else if (command === 'stop-all-agents') {
|
|
17
|
+
(0, stop_all_agents_1.stopAllAgents)().catch((e) => {
|
|
18
|
+
console.error(e);
|
|
19
|
+
process.exit(1);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
else if (command === 'start-ci-run') {
|
|
23
|
+
(0, start_ci_run_1.startCiRun)().catch((e) => {
|
|
24
|
+
console.error(e);
|
|
25
|
+
process.exit(1);
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
else if (command === 'clean-up-agents') {
|
|
29
|
+
(0, clean_up_agents_1.cleanUpAgents)().catch((e) => {
|
|
30
|
+
console.error(e);
|
|
31
|
+
process.exit(1);
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
else if (command === 'record') {
|
|
35
|
+
(0, record_output_1.runCommandAndStoreInCloud)().catch((e) => {
|
|
36
|
+
console.error(e);
|
|
37
|
+
process.exit(1);
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
console.log('Pass start-agent, stop-all-agents, or clean-up-agents');
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=nx-cloud.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nx-cloud.js","sourceRoot":"","sources":["../../../../../libs/nx-packages/nx-cloud/bin/nx-cloud.ts"],"names":[],"mappings":";;;AAEA,yGAA0F;AAC1F,oEAA+D;AAC/D,0EAAqE;AACrE,0EAAqE;AACrE,sEAA+E;AAE/E,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAEhC,IAAI,OAAO,KAAK,aAAa,EAAE;IAC7B,IAAA,mCAAU,GAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACvB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACJ;KAAM,IAAI,OAAO,KAAK,iBAAiB,EAAE;IACxC,IAAA,+BAAa,GAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACJ;KAAM,IAAI,OAAO,KAAK,cAAc,EAAE;IACrC,IAAA,yBAAU,GAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACvB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACJ;KAAM,IAAI,OAAO,KAAK,iBAAiB,EAAE;IACxC,IAAA,+BAAa,GAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QAC1B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACJ;KAAM,IAAI,OAAO,KAAK,QAAQ,EAAE;IAC/B,IAAA,yCAAyB,GAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;QACtC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACJ;KAAM;IACL,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;CACtE"}
|
package/index.d.ts
ADDED
package/index.js
ADDED
package/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../libs/nx-packages/nx-cloud/index.ts"],"names":[],"mappings":";;AAAA,uEAA6D;AAE7D,kBAAe,+BAAkB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CloudTaskRunnerOptions } from '../models/cloud-task-runner-options';
|
|
2
|
+
export declare class RunGroupApi {
|
|
3
|
+
private apiAxiosInstance;
|
|
4
|
+
constructor(options: CloudTaskRunnerOptions);
|
|
5
|
+
createRunGroup(branch: string | null, runGroup: string): Promise<void>;
|
|
6
|
+
completeRunGroup(runGroup: string): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const a0_0x9aab=['apply','RunGroupApi','../../utilities/axios','defineProperty','message','recordMetric','exit','createMetricRecorder','post','RUNNER_FAILURE_PERF_ENTRY','axiosMultipleTries','next','apiAxiosInstance','createApiAxiosInstance','response','__esModule','value','error','/nx-cloud/executions/create-run-group','createRunGroup','axiosException','mapRespToPerfEntry','done','throw','completeRunGroup','/nx-cloud/executions/complete-run-group'];(function(_0x841bb8,_0x9aab37){const _0x4d79ae=function(_0x4c76ee){while(--_0x4c76ee){_0x841bb8['push'](_0x841bb8['shift']());}};_0x4d79ae(++_0x9aab37);}(a0_0x9aab,0x86));const a0_0x4d79=function(_0x841bb8,_0x9aab37){_0x841bb8=_0x841bb8-0x0;let _0x4d79ae=a0_0x9aab[_0x841bb8];return _0x4d79ae;};'use strict';var __awaiter=this&&this['__awaiter']||function(_0x2494d3,_0x83f74c,_0x1349d4,_0x386c69){function _0x2aa545(_0x6cb8b){return _0x6cb8b instanceof _0x1349d4?_0x6cb8b:new _0x1349d4(function(_0x5cd376){_0x5cd376(_0x6cb8b);});}return new(_0x1349d4||(_0x1349d4=Promise))(function(_0x25b436,_0x38ae08){function _0x308133(_0x2b0b7e){try{_0x476de1(_0x386c69[a0_0x4d79('0x7')](_0x2b0b7e));}catch(_0x1776a8){_0x38ae08(_0x1776a8);}}function _0x32708a(_0x36c0c9){try{_0x476de1(_0x386c69[a0_0x4d79('0x13')](_0x36c0c9));}catch(_0x48679f){_0x38ae08(_0x48679f);}}function _0x476de1(_0x5e5a76){_0x5e5a76[a0_0x4d79('0x12')]?_0x25b436(_0x5e5a76[a0_0x4d79('0xc')]):_0x2aa545(_0x5e5a76[a0_0x4d79('0xc')])['then'](_0x308133,_0x32708a);}_0x476de1((_0x386c69=_0x386c69[a0_0x4d79('0x16')](_0x2494d3,_0x83f74c||[]))[a0_0x4d79('0x7')]());});};Object[a0_0x4d79('0x19')](exports,a0_0x4d79('0xb'),{'value':!![]});exports[a0_0x4d79('0x17')]=void 0x0;const axios_1=require(a0_0x4d79('0x18'));const metric_logger_1=require('../../utilities/metric-logger');const {output}=require('../../utilities/nx-imports');class RunGroupApi{constructor(_0x298250){this[a0_0x4d79('0x8')]=(0x0,axios_1[a0_0x4d79('0x9')])(_0x298250);}[a0_0x4d79('0xf')](_0x20dd62,_0x2b9496){var _0xdbc02;return __awaiter(this,void 0x0,void 0x0,function*(){const _0x132f86=(0x0,metric_logger_1[a0_0x4d79('0x3')])(a0_0x4d79('0xf'));try{const _0xe214dd=yield(0x0,axios_1[a0_0x4d79('0x6')])(()=>this[a0_0x4d79('0x8')]['post'](a0_0x4d79('0xe'),{'branch':_0x20dd62,'runGroup':_0x2b9496}));_0x132f86['recordMetric']((0x0,metric_logger_1[a0_0x4d79('0x11')])(_0xe214dd));}catch(_0x2c9ee8){_0x132f86[a0_0x4d79('0x1')](((_0xdbc02=_0x2c9ee8===null||_0x2c9ee8===void 0x0?void 0x0:_0x2c9ee8[a0_0x4d79('0x10')])===null||_0xdbc02===void 0x0?void 0x0:_0xdbc02[a0_0x4d79('0xa')])?(0x0,metric_logger_1[a0_0x4d79('0x11')])(_0x2c9ee8[a0_0x4d79('0x10')][a0_0x4d79('0xa')]):metric_logger_1[a0_0x4d79('0x5')]);output['error']({'title':_0x2c9ee8['message']});process[a0_0x4d79('0x2')](0x1);}});}[a0_0x4d79('0x14')](_0x4b80d2){var _0x42f671;return __awaiter(this,void 0x0,void 0x0,function*(){const _0x1bb2a3=(0x0,metric_logger_1['createMetricRecorder'])(a0_0x4d79('0xf'));try{const _0x1ed5c4=yield(0x0,axios_1['axiosMultipleTries'])(()=>this[a0_0x4d79('0x8')][a0_0x4d79('0x4')](a0_0x4d79('0x15'),{'runGroup':_0x4b80d2}));_0x1bb2a3[a0_0x4d79('0x1')]((0x0,metric_logger_1['mapRespToPerfEntry'])(_0x1ed5c4));}catch(_0x5b19ae){_0x1bb2a3[a0_0x4d79('0x1')](((_0x42f671=_0x5b19ae===null||_0x5b19ae===void 0x0?void 0x0:_0x5b19ae[a0_0x4d79('0x10')])===null||_0x42f671===void 0x0?void 0x0:_0x42f671[a0_0x4d79('0xa')])?(0x0,metric_logger_1['mapRespToPerfEntry'])(_0x5b19ae[a0_0x4d79('0x10')]['response']):metric_logger_1[a0_0x4d79('0x5')]);output[a0_0x4d79('0xd')]({'title':_0x5b19ae[a0_0x4d79('0x0')]});process[a0_0x4d79('0x2')](0x1);}});}}exports['RunGroupApi']=RunGroupApi;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-group.api.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/core/api/run-group.api.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,iDAG+B;AAC/B,iEAIuC;AAEvC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAEzD,MAAa,WAAW;IAGtB,YAAY,OAA+B;QACzC,IAAI,CAAC,gBAAgB,GAAG,IAAA,8BAAsB,EAAC,OAAO,CAAC,CAAC;IAC1D,CAAC;IAEK,cAAc,CAAC,MAAqB,EAAE,QAAgB;;;YAC1D,MAAM,QAAQ,GAAG,IAAA,oCAAoB,EAAC,gBAAgB,CAAC,CAAC;YACxD,IAAI;gBACF,MAAM,IAAI,GAAG,MAAM,IAAA,0BAAkB,EAAC,GAAG,EAAE,CACzC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,uCAAuC,EAAE;oBAClE,MAAM,EAAE,MAAM;oBACd,QAAQ,EAAE,QAAQ;iBACnB,CAAC,CACH,CAAC;gBACF,QAAQ,CAAC,YAAY,CAAC,IAAA,kCAAkB,EAAC,IAAI,CAAC,CAAC,CAAC;aACjD;YAAC,OAAO,CAAM,EAAE;gBACf,QAAQ,CAAC,YAAY,CACnB,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,cAAc,0CAAE,QAAQ;oBACzB,CAAC,CAAC,IAAA,kCAAkB,EAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;oBAC/C,CAAC,CAAC,yCAAyB,CAC9B,CAAC;gBAEF,MAAM,CAAC,KAAK,CAAC;oBACX,KAAK,EAAE,CAAC,CAAC,OAAO;iBACjB,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;;KACF;IAEK,gBAAgB,CAAC,QAAgB;;;YACrC,MAAM,QAAQ,GAAG,IAAA,oCAAoB,EAAC,gBAAgB,CAAC,CAAC;YAExD,IAAI;gBACF,MAAM,IAAI,GAAG,MAAM,IAAA,0BAAkB,EAAC,GAAG,EAAE,CACzC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,yCAAyC,EAAE;oBACpE,QAAQ,EAAE,QAAQ;iBACnB,CAAC,CACH,CAAC;gBACF,QAAQ,CAAC,YAAY,CAAC,IAAA,kCAAkB,EAAC,IAAI,CAAC,CAAC,CAAC;aACjD;YAAC,OAAO,CAAM,EAAE;gBACf,QAAQ,CAAC,YAAY,CACnB,CAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,cAAc,0CAAE,QAAQ;oBACzB,CAAC,CAAC,IAAA,kCAAkB,EAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;oBAC/C,CAAC,CAAC,yCAAyB,CAC9B,CAAC;gBAEF,MAAM,CAAC,KAAK,CAAC;oBACX,KAAK,EAAE,CAAC,CAAC,OAAO;iBACjB,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;;KACF;CACF;AAtDD,kCAsDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function cleanUpAgents(): Promise<void>;
|
|
@@ -0,0 +1,34 @@
|
|
|
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.cleanUpAgents = void 0;
|
|
13
|
+
const stripJsonComments = require("strip-json-comments");
|
|
14
|
+
const environment_1 = require("../../utilities/environment");
|
|
15
|
+
const fs_1 = require("fs");
|
|
16
|
+
const { output } = require('../../utilities/nx-imports');
|
|
17
|
+
function cleanUpAgents() {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
const options = JSON.parse(stripJsonComments((0, fs_1.readFileSync)('nx.json').toString())).tasksRunnerOptions.default.options;
|
|
20
|
+
const cacheDirectory = options.cacheDirectory || './node_modules/.cache/nx';
|
|
21
|
+
const lockFileDirectory = `${cacheDirectory}/lockfiles`;
|
|
22
|
+
if (environment_1.VERBOSE_LOGGING) {
|
|
23
|
+
output.note({
|
|
24
|
+
title: `Cleaning up agent metadata for this workspace.`,
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
return (0, fs_1.rm)(lockFileDirectory, { recursive: true, force: true }, (err) => {
|
|
28
|
+
if (err)
|
|
29
|
+
throw err;
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
exports.cleanUpAgents = cleanUpAgents;
|
|
34
|
+
//# sourceMappingURL=clean-up-agents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clean-up-agents.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/core/commands/clean-up-agents.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAyD;AACzD,6DAA8D;AAC9D,2BAAsC;AAEtC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AACzD,SAAsB,aAAa;;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CACxB,iBAAiB,CAAC,IAAA,iBAAY,EAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,CACtD,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;QACrC,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,0BAA0B,CAAC;QAC5E,MAAM,iBAAiB,GAAG,GAAG,cAAc,YAAY,CAAC;QAExD,IAAI,6BAAe,EAAE;YACnB,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,gDAAgD;aACxD,CAAC,CAAC;SACJ;QAED,OAAO,IAAA,OAAE,EAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;YACrE,IAAI,GAAG;gBAAE,MAAM,GAAG,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;CAAA;AAhBD,sCAgBC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export declare function runCommandAndStoreInCloud(): Promise<void>;
|
|
2
|
+
/**
|
|
3
|
+
* https://github.com/nrwl/nx/blob/master/packages/nx/src/utils/find-workspace-root.ts
|
|
4
|
+
* Recursive function that walks back up the directory
|
|
5
|
+
* tree to try and find a workspace file.
|
|
6
|
+
*
|
|
7
|
+
* @param dir Directory to start searching with
|
|
8
|
+
*/
|
|
9
|
+
export declare function findWorkspaceRoot(dir: string): WorkspaceTypeAndRoot | null;
|
|
10
|
+
/**
|
|
11
|
+
* https://github.com/nrwl/nx/blob/master/packages/nx/src/utils/find-workspace-root.ts
|
|
12
|
+
*/
|
|
13
|
+
export interface WorkspaceTypeAndRoot {
|
|
14
|
+
type: 'nx' | 'angular';
|
|
15
|
+
dir: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,203 @@
|
|
|
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.findWorkspaceRoot = exports.runCommandAndStoreInCloud = void 0;
|
|
13
|
+
const cp = require("child_process");
|
|
14
|
+
const fs_1 = require("fs");
|
|
15
|
+
const path = require("path");
|
|
16
|
+
const environment_1 = require("../../utilities/environment");
|
|
17
|
+
const axios_1 = require("../../utilities/axios");
|
|
18
|
+
const util_1 = require("util");
|
|
19
|
+
const zlib_1 = require("zlib");
|
|
20
|
+
const output_obfuscator_1 = require("../terminal-output/output-obfuscator");
|
|
21
|
+
const print_message_1 = require("../../utilities/print-message");
|
|
22
|
+
const { output } = require('../../utilities/nx-imports');
|
|
23
|
+
const MAX_CHARACTERS_OUTPUT_CAPTURE = 200000;
|
|
24
|
+
function runCommandAndStoreInCloud() {
|
|
25
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
const taskRunnerOptions = getTaskRunnerOptions();
|
|
27
|
+
const axios = (0, axios_1.createApiAxiosInstance)(taskRunnerOptions);
|
|
28
|
+
const outputObfuscator = new output_obfuscator_1.OutputObfuscator(taskRunnerOptions.maskedProperties);
|
|
29
|
+
const branch = (0, environment_1.getBranch)();
|
|
30
|
+
const runGroup = (0, environment_1.getRunGroup)();
|
|
31
|
+
let userCommandAndArgs;
|
|
32
|
+
const commandStartIndex = process.argv.findIndex((arg) => arg === 'record') + 1;
|
|
33
|
+
if (commandStartIndex < process.argv.length) {
|
|
34
|
+
// Different package managers may remove not the "--" from the command automatically, so account for that
|
|
35
|
+
const sliceOffset = process.argv[commandStartIndex] === '--' ? 1 : 0;
|
|
36
|
+
userCommandAndArgs = process.argv.slice(commandStartIndex + sliceOffset);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
console.log('Invalid command. Use `nx-cloud record [my command] [my arg1] [my arg...]`');
|
|
40
|
+
process.exit(1);
|
|
41
|
+
}
|
|
42
|
+
const [userCommand, ...userArgs] = userCommandAndArgs;
|
|
43
|
+
const startRecordRunRequest = {
|
|
44
|
+
branch,
|
|
45
|
+
runGroup,
|
|
46
|
+
hashes: [],
|
|
47
|
+
};
|
|
48
|
+
yield (0, axios_1.axiosMultipleTries)(() => axios.post('/nx-cloud/runs/start', startRecordRunRequest));
|
|
49
|
+
const startTime = new Date().toISOString();
|
|
50
|
+
const { statusCode, terminalOutput } = yield spawnUserCommandAndCaptureOutput(userCommand, userArgs);
|
|
51
|
+
const endTime = new Date().toISOString();
|
|
52
|
+
const endRecordOutputRunParams = {
|
|
53
|
+
statusCode,
|
|
54
|
+
terminalOutput,
|
|
55
|
+
userCommandAndArgsString: userCommandAndArgs.join(' '),
|
|
56
|
+
startTime,
|
|
57
|
+
endTime,
|
|
58
|
+
branch,
|
|
59
|
+
runGroup,
|
|
60
|
+
};
|
|
61
|
+
yield endRecordOutputRun(axios, outputObfuscator, taskRunnerOptions, endRecordOutputRunParams);
|
|
62
|
+
process.exit(statusCode);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
exports.runCommandAndStoreInCloud = runCommandAndStoreInCloud;
|
|
66
|
+
function getTaskRunnerOptions() {
|
|
67
|
+
var _a, _b, _c;
|
|
68
|
+
const workspaceRoot = findWorkspaceRoot(process.cwd());
|
|
69
|
+
if (workspaceRoot == null) {
|
|
70
|
+
throw new Error('Unable to locate task runner options.');
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
const taskRunnerOptions = (_c = (_b = (_a = require(`${workspaceRoot.dir}/nx.json`)) === null || _a === void 0 ? void 0 : _a.tasksRunnerOptions) === null || _b === void 0 ? void 0 : _b.default) === null || _c === void 0 ? void 0 : _c.options;
|
|
74
|
+
return taskRunnerOptions;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
function splitUserCommandAndArgs(userCommandAndArgs) {
|
|
78
|
+
const userCommand = userCommandAndArgs[0];
|
|
79
|
+
let userArgs = [];
|
|
80
|
+
if (userCommandAndArgs.length > 1) {
|
|
81
|
+
userArgs = userCommandAndArgs.slice(1);
|
|
82
|
+
}
|
|
83
|
+
return { userCommand, userArgs };
|
|
84
|
+
}
|
|
85
|
+
function spawnUserCommandAndCaptureOutput(command, args) {
|
|
86
|
+
return new Promise((res, rej) => {
|
|
87
|
+
try {
|
|
88
|
+
const userCommandProcess = cp.spawn(command, args, {
|
|
89
|
+
stdio: ['inherit', 'pipe', 'pipe', 'ipc'],
|
|
90
|
+
});
|
|
91
|
+
const outLines = [];
|
|
92
|
+
userCommandProcess.stdout.on('data', (chunk) => {
|
|
93
|
+
process.stdout.write(chunk);
|
|
94
|
+
outLines.push(chunk.toString());
|
|
95
|
+
});
|
|
96
|
+
userCommandProcess.stderr.on('data', (chunk) => {
|
|
97
|
+
process.stderr.write(chunk);
|
|
98
|
+
outLines.push(chunk.toString());
|
|
99
|
+
});
|
|
100
|
+
userCommandProcess.on('exit', (exitCode, exitSignal) => {
|
|
101
|
+
const statusCode = exitCode !== null && exitCode !== void 0 ? exitCode : signalToCode(exitSignal || '');
|
|
102
|
+
const joinedOutput = outLines.join('');
|
|
103
|
+
res({
|
|
104
|
+
statusCode,
|
|
105
|
+
terminalOutput: joinedOutput,
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
catch (e) {
|
|
110
|
+
rej(e);
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
function createTaskDefinitionFromUserCommand(outputObfuscator, params) {
|
|
115
|
+
const sanitizedOutput = outputObfuscator.obfuscate(params.terminalOutput);
|
|
116
|
+
const truncatedOutput = sanitizedOutput.length > MAX_CHARACTERS_OUTPUT_CAPTURE
|
|
117
|
+
? `TRUNCATED\n\n${sanitizedOutput.slice(sanitizedOutput.length - MAX_CHARACTERS_OUTPUT_CAPTURE)}`
|
|
118
|
+
: sanitizedOutput;
|
|
119
|
+
return {
|
|
120
|
+
taskId: 'nx-cloud-tasks-runner:record-command',
|
|
121
|
+
target: 'record-command',
|
|
122
|
+
projectName: 'nx-cloud-tasks-runner',
|
|
123
|
+
hash: '',
|
|
124
|
+
startTime: params.startTime,
|
|
125
|
+
endTime: params.endTime,
|
|
126
|
+
hashDetails: {},
|
|
127
|
+
params: params.userCommandAndArgsString,
|
|
128
|
+
cacheStatus: 'n/a',
|
|
129
|
+
status: params.statusCode,
|
|
130
|
+
terminalOutput: truncatedOutput,
|
|
131
|
+
};
|
|
132
|
+
}
|
|
133
|
+
function endRecordOutputRun(axios, obfuscator, taskRunnerOptions, params) {
|
|
134
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
135
|
+
const commandWithPrefix = `nx-cloud record -- ${params.userCommandAndArgsString}`;
|
|
136
|
+
const endRunReq = {
|
|
137
|
+
meta: {
|
|
138
|
+
nxCloudVersion: '0.0.0',
|
|
139
|
+
},
|
|
140
|
+
tasks: [createTaskDefinitionFromUserCommand(obfuscator, params)],
|
|
141
|
+
run: {
|
|
142
|
+
command: commandWithPrefix,
|
|
143
|
+
startTime: params.startTime,
|
|
144
|
+
endTime: params.endTime,
|
|
145
|
+
branch: params.branch,
|
|
146
|
+
scan: true,
|
|
147
|
+
runGroup: params.runGroup,
|
|
148
|
+
// only set sha if branch is set because we invoke a separate process,
|
|
149
|
+
// which adds a few millis
|
|
150
|
+
sha: params.branch ? (0, environment_1.extractGitSha)() : undefined,
|
|
151
|
+
},
|
|
152
|
+
machineInfo: (0, environment_1.getMachineInfo)(taskRunnerOptions),
|
|
153
|
+
};
|
|
154
|
+
const uncompressedBuffer = Buffer.from(JSON.stringify(endRunReq));
|
|
155
|
+
const compressedBuffer = yield (0, util_1.promisify)(zlib_1.gzip)(uncompressedBuffer);
|
|
156
|
+
const endRunResp = yield (0, axios_1.axiosMultipleTries)(() => axios.post('/nx-cloud/runs/end', compressedBuffer, {
|
|
157
|
+
headers: Object.assign(Object.assign({}, axios.defaults.headers), { 'Content-Encoding': 'gzip', 'Content-Type': 'application/octet-stream' }),
|
|
158
|
+
}));
|
|
159
|
+
printRecordOutputRunEndMessage(endRunResp.data.runUrl);
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
function printRecordOutputRunEndMessage(runUrl) {
|
|
163
|
+
output.addVerticalSeparator();
|
|
164
|
+
output.note({ title: 'Nx Cloud: Successfully recorded command output' });
|
|
165
|
+
(0, print_message_1.printMessage)(`You can view or share your output by visiting ${runUrl}`);
|
|
166
|
+
}
|
|
167
|
+
// Everything from here down is ripped from the nx package
|
|
168
|
+
// You probably don't want to adjust this manually
|
|
169
|
+
/**
|
|
170
|
+
* https://github.com/nrwl/nx/blob/master/packages/nx/src/utils/find-workspace-root.ts
|
|
171
|
+
* Recursive function that walks back up the directory
|
|
172
|
+
* tree to try and find a workspace file.
|
|
173
|
+
*
|
|
174
|
+
* @param dir Directory to start searching with
|
|
175
|
+
*/
|
|
176
|
+
function findWorkspaceRoot(dir) {
|
|
177
|
+
if ((0, fs_1.existsSync)(path.join(dir, 'angular.json'))) {
|
|
178
|
+
return { type: 'angular', dir };
|
|
179
|
+
}
|
|
180
|
+
if ((0, fs_1.existsSync)(path.join(dir, 'nx.json'))) {
|
|
181
|
+
return { type: 'nx', dir };
|
|
182
|
+
}
|
|
183
|
+
if (path.dirname(dir) === dir) {
|
|
184
|
+
return null;
|
|
185
|
+
}
|
|
186
|
+
return findWorkspaceRoot(path.dirname(dir));
|
|
187
|
+
}
|
|
188
|
+
exports.findWorkspaceRoot = findWorkspaceRoot;
|
|
189
|
+
/**
|
|
190
|
+
* https://github.com/nrwl/nx/blob/master/packages/nx/src/tasks-runner/forked-process-task-runner.ts
|
|
191
|
+
*
|
|
192
|
+
* @param signal
|
|
193
|
+
*/
|
|
194
|
+
function signalToCode(signal) {
|
|
195
|
+
if (signal === 'SIGHUP')
|
|
196
|
+
return 128 + 1;
|
|
197
|
+
if (signal === 'SIGINT')
|
|
198
|
+
return 128 + 2;
|
|
199
|
+
if (signal === 'SIGTERM')
|
|
200
|
+
return 128 + 15;
|
|
201
|
+
return 128;
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=record-output.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record-output.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/core/commands/record-output.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function startCiRun(): Promise<void>;
|
|
@@ -0,0 +1,38 @@
|
|
|
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.startCiRun = void 0;
|
|
13
|
+
const stripJsonComments = require("strip-json-comments");
|
|
14
|
+
const environment_1 = require("../../utilities/environment");
|
|
15
|
+
const print_run_group_error_1 = require("../error/print-run-group-error");
|
|
16
|
+
const run_group_api_1 = require("../api/run-group.api");
|
|
17
|
+
const fs_1 = require("fs");
|
|
18
|
+
const { output } = require('../../utilities/nx-imports');
|
|
19
|
+
function startCiRun() {
|
|
20
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
const branch = (0, environment_1.getBranch)();
|
|
22
|
+
const runGroup = (0, environment_1.getRunGroup)();
|
|
23
|
+
if (!runGroup) {
|
|
24
|
+
(0, print_run_group_error_1.printRunGroupError)();
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
if (environment_1.VERBOSE_LOGGING) {
|
|
28
|
+
output.note({
|
|
29
|
+
title: `Creating run group ${runGroup}`,
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
const options = JSON.parse(stripJsonComments((0, fs_1.readFileSync)('nx.json').toString())).tasksRunnerOptions.default.options;
|
|
33
|
+
const api = new run_group_api_1.RunGroupApi(options);
|
|
34
|
+
yield api.createRunGroup(branch, runGroup);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
exports.startCiRun = startCiRun;
|
|
38
|
+
//# sourceMappingURL=start-ci-run.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"start-ci-run.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/core/commands/start-ci-run.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAyD;AACzD,6DAIqC;AACrC,0EAAoE;AACpE,wDAAmD;AACnD,2BAAkC;AAElC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AACzD,SAAsB,UAAU;;QAC9B,MAAM,MAAM,GAAG,IAAA,uBAAS,GAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAA,yBAAW,GAAE,CAAC;QAE/B,IAAI,CAAC,QAAQ,EAAE;YACb,IAAA,0CAAkB,GAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACjB;QAED,IAAI,6BAAe,EAAE;YACnB,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,sBAAsB,QAAQ,EAAE;aACxC,CAAC,CAAC;SACJ;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CACxB,iBAAiB,CAAC,IAAA,iBAAY,EAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,CACtD,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;QAErC,MAAM,GAAG,GAAG,IAAI,2BAAW,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;CAAA;AApBD,gCAoBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function stopAllAgents(): Promise<void>;
|
|
@@ -0,0 +1,37 @@
|
|
|
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.stopAllAgents = void 0;
|
|
13
|
+
const stripJsonComments = require("strip-json-comments");
|
|
14
|
+
const environment_1 = require("../../utilities/environment");
|
|
15
|
+
const print_run_group_error_1 = require("../error/print-run-group-error");
|
|
16
|
+
const run_group_api_1 = require("../api/run-group.api");
|
|
17
|
+
const fs_1 = require("fs");
|
|
18
|
+
const { output } = require('../../utilities/nx-imports');
|
|
19
|
+
function stopAllAgents() {
|
|
20
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
const runGroup = (0, environment_1.getRunGroup)();
|
|
22
|
+
if (!runGroup) {
|
|
23
|
+
(0, print_run_group_error_1.printRunGroupError)();
|
|
24
|
+
process.exit(1);
|
|
25
|
+
}
|
|
26
|
+
if (environment_1.VERBOSE_LOGGING) {
|
|
27
|
+
output.note({
|
|
28
|
+
title: `Stopping all agents running tasks for run group ${runGroup}`,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
const options = JSON.parse(stripJsonComments((0, fs_1.readFileSync)('nx.json').toString())).tasksRunnerOptions.default.options;
|
|
32
|
+
const api = new run_group_api_1.RunGroupApi(options);
|
|
33
|
+
yield api.completeRunGroup(runGroup);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
exports.stopAllAgents = stopAllAgents;
|
|
37
|
+
//# sourceMappingURL=stop-all-agents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stop-all-agents.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/core/commands/stop-all-agents.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAAyD;AACzD,6DAA2E;AAC3E,0EAAoE;AACpE,wDAAmD;AACnD,2BAAkC;AAClC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAEzD,SAAsB,aAAa;;QACjC,MAAM,QAAQ,GAAG,IAAA,yBAAW,GAAE,CAAC;QAC/B,IAAI,CAAC,QAAQ,EAAE;YACb,IAAA,0CAAkB,GAAE,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACjB;QAED,IAAI,6BAAe,EAAE;YACnB,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,mDAAmD,QAAQ,EAAE;aACrE,CAAC,CAAC;SACJ;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CACxB,iBAAiB,CAAC,IAAA,iBAAY,EAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC,CACtD,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;QAErC,MAAM,GAAG,GAAG,IAAI,2BAAW,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;CAAA;AAlBD,sCAkBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function printRunGroupError(): void;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.printRunGroupError = void 0;
|
|
4
|
+
const { output } = require('../../utilities/nx-imports');
|
|
5
|
+
function printRunGroupError() {
|
|
6
|
+
output.error({
|
|
7
|
+
title: `Unable to determine NX_RUN_GROUP`,
|
|
8
|
+
bodyLines: [
|
|
9
|
+
'- Agents run tasks for a given run group (which often corresponds to a run in CI).',
|
|
10
|
+
"- Nx tried to determine the run group automatically but wasn't able to do it.",
|
|
11
|
+
'- Use the NX_RUN_GROUP env variable to set the run group manually.',
|
|
12
|
+
],
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
exports.printRunGroupError = printRunGroupError;
|
|
16
|
+
//# sourceMappingURL=print-run-group-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"print-run-group-error.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/core/error/print-run-group-error.ts"],"names":[],"mappings":";;;AAAA,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;AAEzD,SAAgB,kBAAkB;IAChC,MAAM,CAAC,KAAK,CAAC;QACX,KAAK,EAAE,kCAAkC;QACzC,SAAS,EAAE;YACT,oFAAoF;YACpF,+EAA+E;YAC/E,oEAAoE;SACrE;KACF,CAAC,CAAC;AACL,CAAC;AATD,gDASC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
export declare class E2EEncryption {
|
|
3
|
+
encryptionKey: Buffer | undefined;
|
|
4
|
+
constructor(key: string | undefined);
|
|
5
|
+
private to32bytes;
|
|
6
|
+
hasEncryption(): boolean;
|
|
7
|
+
encryptFile(file: string): void;
|
|
8
|
+
decryptFile(file: string): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.E2EEncryption = void 0;
|
|
4
|
+
const fs_1 = require("fs");
|
|
5
|
+
const crypto_1 = require("crypto");
|
|
6
|
+
class E2EEncryption {
|
|
7
|
+
constructor(key) {
|
|
8
|
+
if (key) {
|
|
9
|
+
this.encryptionKey = this.to32bytes(key);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
to32bytes(key) {
|
|
13
|
+
let res = key;
|
|
14
|
+
while (res.length < 32) {
|
|
15
|
+
res += key;
|
|
16
|
+
}
|
|
17
|
+
return Buffer.from(res).slice(0, 32);
|
|
18
|
+
}
|
|
19
|
+
hasEncryption() {
|
|
20
|
+
return !!this.encryptionKey;
|
|
21
|
+
}
|
|
22
|
+
encryptFile(file) {
|
|
23
|
+
const iv = (0, crypto_1.randomBytes)(16);
|
|
24
|
+
const cipher = (0, crypto_1.createCipheriv)('aes-256-cbc', this.encryptionKey, iv);
|
|
25
|
+
const decryptedFileContents = (0, fs_1.readFileSync)(file);
|
|
26
|
+
const e = cipher.update(decryptedFileContents);
|
|
27
|
+
const encryptedFileContents = Buffer.concat([iv, e, cipher.final()]);
|
|
28
|
+
(0, fs_1.writeFileSync)(file, encryptedFileContents);
|
|
29
|
+
}
|
|
30
|
+
decryptFile(file) {
|
|
31
|
+
const encryptedFileContents = (0, fs_1.readFileSync)(file);
|
|
32
|
+
try {
|
|
33
|
+
const decipher = (0, crypto_1.createDecipheriv)('aes-256-cbc', this.encryptionKey, encryptedFileContents.slice(0, 16) // iv
|
|
34
|
+
);
|
|
35
|
+
const encryptedText = encryptedFileContents.slice(16); // remove the iv
|
|
36
|
+
const d = decipher.update(encryptedText);
|
|
37
|
+
const decryptedFileContents = Buffer.concat([d, decipher.final()]);
|
|
38
|
+
(0, fs_1.writeFileSync)(file, decryptedFileContents);
|
|
39
|
+
}
|
|
40
|
+
catch (e) {
|
|
41
|
+
throw new Error(`Could not decrypt the artifact. Please check your encryption key.`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.E2EEncryption = E2EEncryption;
|
|
46
|
+
//# sourceMappingURL=e2e-encryption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"e2e-encryption.js","sourceRoot":"","sources":["../../../../../../../libs/nx-packages/nx-cloud/lib/core/file-storage/e2e-encryption.ts"],"names":[],"mappings":";;;AAAA,2BAAiD;AACjD,mCAAuE;AAEvE,MAAa,aAAa;IAGxB,YAAY,GAAuB;QACjC,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;SAC1C;IACH,CAAC;IAEO,SAAS,CAAC,GAAW;QAC3B,IAAI,GAAG,GAAG,GAAG,CAAC;QACd,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,EAAE;YACtB,GAAG,IAAI,GAAG,CAAC;SACZ;QACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,aAAa;QACX,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,MAAM,EAAE,GAAG,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAA,uBAAc,EAAC,aAAa,EAAE,IAAI,CAAC,aAAc,EAAE,EAAE,CAAC,CAAC;QACtE,MAAM,qBAAqB,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC/C,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACrE,IAAA,kBAAa,EAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;IAC7C,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,MAAM,qBAAqB,GAAG,IAAA,iBAAY,EAAC,IAAI,CAAC,CAAC;QAEjD,IAAI;YACF,MAAM,QAAQ,GAAG,IAAA,yBAAgB,EAC/B,aAAa,EACb,IAAI,CAAC,aAAc,EACnB,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK;aACzC,CAAC;YACF,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB;YACvE,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YACzC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACnE,IAAA,kBAAa,EAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC;SAC5C;QAAC,OAAO,CAAC,EAAE;YACV,MAAM,IAAI,KAAK,CACb,mEAAmE,CACpE,CAAC;SACH;IACH,CAAC;CACF;AAjDD,sCAiDC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { E2EEncryption } from './e2e-encryption';
|
|
2
|
+
export declare class FileStorage {
|
|
3
|
+
private readonly encryption;
|
|
4
|
+
constructor(encryption: E2EEncryption);
|
|
5
|
+
retrieve(hash: string, url: string, cacheDirectory: string): Promise<void>;
|
|
6
|
+
store(hash: string, url: string, cacheDirectory: string): Promise<any>;
|
|
7
|
+
private createFileName;
|
|
8
|
+
private downloadFile;
|
|
9
|
+
private createCommitFile;
|
|
10
|
+
private createCommitFilePath;
|
|
11
|
+
private createFile;
|
|
12
|
+
private uploadFile;
|
|
13
|
+
}
|