@journeyapps/cloudcode-build-agent 0.0.0-dev.6530336 → 0.0.0-dev.6fdb5b1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/builder.d.ts CHANGED
@@ -1,17 +1,7 @@
1
- import { DetectedTask } from './detect_tasks';
2
1
  export type GeneralTaskConfig = {
3
2
  app_id: string;
4
3
  env: string;
5
4
  backend_id: string;
6
5
  backend_url: string;
7
6
  };
8
- type ToolPaths = {
9
- bin_path: string;
10
- node_bin: string;
11
- npm_bin: string;
12
- };
13
7
  export declare function buildTasks(project_path: string, dest: string, config: GeneralTaskConfig, only?: string): Promise<void>;
14
- export declare function buildTask(task: DetectedTask, project_path: string, dest: string, config: GeneralTaskConfig, node_context: {
15
- node_version: string;
16
- } & ToolPaths): Promise<void>;
17
- export {};
package/dist/builder.js CHANGED
@@ -23,82 +23,88 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.buildTask = exports.buildTasks = void 0;
26
+ exports.buildTasks = void 0;
27
27
  const path = __importStar(require("node:path"));
28
28
  const jetpack = __importStar(require("fs-jetpack"));
29
29
  const semver = __importStar(require("semver"));
30
- const installer_1 = require("./installer");
30
+ const utils = __importStar(require("./utils"));
31
+ const child_process_1 = require("child_process");
31
32
  const detect_tasks_1 = require("./detect_tasks");
32
- const run_1 = require("./run");
33
+ const _ = __importStar(require("lodash"));
33
34
  async function buildTasks(project_path, dest, config, only) {
34
35
  const tasks = await (0, detect_tasks_1.detectTasks)(project_path, only);
36
+ const required_node_versions = _.compact(tasks.map((t) => t.required_node_version));
37
+ const install_node_versions = _.uniq(required_node_versions);
38
+ // FIXME: Maybe refactor this section into an ensureNodeVersion (or something) that returns the relevant toolpaths?
39
+ const tool_paths = {};
35
40
  // Use the version of nodejs that's running this script as the default.
36
41
  const default_tool_paths = {
37
42
  bin_path: path.dirname(process.execPath),
38
43
  node_bin: process.execPath,
39
44
  npm_bin: path.join(path.dirname(process.execPath), 'npm')
40
45
  };
41
- for (const task of tasks) {
42
- let custom_tool_paths;
43
- if (task.required_node_version) {
44
- // FIXME: put this in another directory to avoid leaking into the builder
45
- const custom_node_path = path.resolve(`node-${semver.major(task.required_node_version)}`);
46
- custom_tool_paths = await (0, installer_1.ensureCustomNodeVersion)(task.required_node_version, custom_node_path);
46
+ tool_paths[process.version] = default_tool_paths;
47
+ for (const required_node_version of install_node_versions) {
48
+ const custom_node_path = path.resolve(`node-${semver.major(required_node_version)}`);
49
+ if (!jetpack.exists(path.join(custom_node_path, 'bin/node'))) {
50
+ console.debug(`installing to ${custom_node_path}`);
51
+ await jetpack.dirAsync(custom_node_path);
52
+ await utils.downloadAndInstallNode(required_node_version, custom_node_path);
47
53
  }
48
- const node_version = task.required_node_version ?? process.version;
49
- await buildTask(task, project_path, dest, config, {
50
- node_version,
51
- ...(custom_tool_paths ?? default_tool_paths)
52
- });
53
- }
54
- }
55
- exports.buildTasks = buildTasks;
56
- async function buildTask(task, project_path, dest, config, node_context) {
57
- const builder_package = task.builder_package;
58
- const builder_script = task.builder_script;
59
- const { bin_path, node_bin, npm_bin } = node_context;
60
- const builder_bin = path.resolve(bin_path, builder_script);
61
- if (!jetpack.exists(node_bin)) {
62
- throw new Error(`Node binary not found: ${node_bin}`);
63
- }
64
- console.debug(`[${task.task_name}] Installing builder script "${builder_package}" for node ${node_context.node_version}`);
65
- // debug(`Installing builder script "${builder_package}" for node ${node_version}`);
66
- const stream1 = (0, run_1.runCommand)(node_bin, [npm_bin, '--global', 'install', builder_package], {
67
- cwd: project_path,
68
- env: process.env
69
- });
70
- for await (let event of stream1) {
71
- const log = event.stdout ?? event.stderr;
72
- if (log) {
73
- console.log(`[${task.task_name} - install]`, log.trimRight());
54
+ else {
55
+ console.debug(`already installed in ${custom_node_path}`);
74
56
  }
57
+ tool_paths[required_node_version] = utils.nodePaths(custom_node_path);
75
58
  }
76
- if (!jetpack.exists(builder_bin)) {
77
- console.error(`[${task.task_name}] ${builder_bin} not found`);
78
- throw new Error(`Builder script not found for task ${task.task_name}`);
79
- }
80
- const builder_args = [];
81
- // --src ./ --out ./dist/echo --task echo --appId 'appid' --env 'testing' --backendId 'backendid' --backendUrl 'http://run.journeyapps.test'
82
- builder_args.push(builder_bin);
83
- builder_args.push('--src', project_path);
84
- builder_args.push(`--out`, path.join(dest, task.task_name));
85
- builder_args.push(`--zip`, path.join(dest, `${task.task_name}.zip`));
86
- builder_args.push(`--task`, `${task.task_name}`);
87
- builder_args.push(`--appId`, config.app_id);
88
- builder_args.push(`--env`, config.env);
89
- builder_args.push(`--backendId`, config.backend_id);
90
- builder_args.push(`--backendUrl`, config.backend_url);
91
- // builder_args.push(`--runInstallScripts`, 'true'); // TODO: handle this from feature flags somehow
92
- console.debug(`[${task.task_name}] Trying: ${node_bin} ${builder_args.join(' ')}`);
93
- // debug(`Trying: ${node_bin} ${builder_args.join(' ')}`);
94
- const stream2 = (0, run_1.runCommand)(node_bin, builder_args, { cwd: project_path, env: process.env });
95
- for await (let event of stream2) {
96
- const log = event.stdout ?? event.stderr;
97
- if (log) {
98
- console.log(`[${task.task_name} - build]`, log.trimRight());
59
+ console.debug('----');
60
+ for (const task of tasks) {
61
+ const node_version = task.required_node_version ?? process.version;
62
+ const builder_package = task.builder_package;
63
+ const builder_script = task.builder_script;
64
+ const { bin_path, node_bin, npm_bin } = tool_paths[node_version];
65
+ const builder_bin = path.resolve(bin_path, builder_script);
66
+ if (!jetpack.exists(node_bin)) {
67
+ throw new Error(`Node binary not found: ${node_bin}`);
68
+ }
69
+ console.debug(`[${task.task_name}] Installing builder script "${builder_package}" for node ${node_version}`);
70
+ // TODO: This may need to be replaced with the something like the spawn-stream stuff in build-agent? OR what to do with the stdout/stderr and errorhandling?
71
+ const spawnResult = (0, child_process_1.spawnSync)(node_bin, [npm_bin, '--global', 'install', builder_package], { cwd: project_path });
72
+ if (spawnResult.status != 0) {
73
+ console.error(`[${task.task_name}] failed to install ${builder_package}`);
74
+ console.debug(`[${task.task_name}] STDOUT: ${spawnResult.stdout}`);
75
+ console.debug(`[${task.task_name}] STDERR: ${spawnResult.stderr}`);
76
+ throw new Error(`Failed to install builder script for task ${task.task_name}`);
77
+ }
78
+ if (!jetpack.exists(builder_bin)) {
79
+ console.error(`[${task.task_name}] ${builder_bin} not found`);
80
+ throw new Error(`Builder script not found for task ${task.task_name}`);
99
81
  }
82
+ const builder_args = [];
83
+ // --src ./ --out ./dist/echo --task echo --appId 'appid' --env 'testing' --backendId 'backendid' --backendUrl 'http://run.journeyapps.test'
84
+ builder_args.push(builder_bin);
85
+ builder_args.push('--src', project_path);
86
+ builder_args.push(`--out`, path.join(dest, task.task_name));
87
+ builder_args.push(`--task`, `${task.task_name}`);
88
+ builder_args.push(`--appId`, config.app_id);
89
+ builder_args.push(`--env`, config.env);
90
+ builder_args.push(`--backendId`, config.backend_id);
91
+ builder_args.push(`--backendUrl`, config.backend_url);
92
+ // builder_args.push(`--runInstallScripts`, 'true'); // TODO: handle this from feature flags somehow
93
+ console.debug(`[${task.task_name}] Trying: ${node_bin} ${builder_args.join(' ')}`);
94
+ const builderSpawnResult = (0, child_process_1.spawnSync)(node_bin, builder_args, { cwd: project_path });
95
+ if (builderSpawnResult.status !== 0) {
96
+ console.error(`[${task.task_name}] FAILED TO RUN BUILDER SCRIPT`);
97
+ console.debug(`[${task.task_name}] STDOUT: ${builderSpawnResult.stdout}`);
98
+ console.debug(`[${task.task_name}] STDERR: ${builderSpawnResult.stderr}`);
99
+ }
100
+ else {
101
+ // NOTE/FIXME?: a CLOUDCODE/BUILD/BUILD_FAILED build failure (eg. TS error in task) lands here, with the output in stderr.
102
+ console.debug(`[${task.task_name}] SCRIPT SUCCESS`);
103
+ console.debug(`[${task.task_name}] STDOUT: ${builderSpawnResult.stdout}`);
104
+ console.debug(`[${task.task_name}] STDERR: ${builderSpawnResult.stderr}`);
105
+ }
106
+ console.debug('----');
100
107
  }
101
- // console.debug('----');
102
108
  }
103
- exports.buildTask = buildTask;
109
+ exports.buildTasks = buildTasks;
104
110
  //# sourceMappingURL=builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -59,8 +59,14 @@ function handled(fn) {
59
59
  await fn(argv);
60
60
  }
61
61
  catch (err) {
62
- console.error(err.stack);
63
- process.exit(1);
62
+ if (err instanceof _1.ProcessError) {
63
+ console.error(err.message);
64
+ process.exit(err.status);
65
+ }
66
+ else {
67
+ console.error(err.stack);
68
+ process.exit(1);
69
+ }
64
70
  }
65
71
  };
66
72
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,6CAA+B;AAE/B,yBAAgC;AAEhC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAElC,KAAK;KACF,OAAO,CACN,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,uCAAuC;AACxD,aAAa,EACb,CAAC,KAAK,EAAE,EAAE;IACR,OAAO,CACL,KAAK;SACF,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;SAChC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;SAC7C,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;QAC7C,8GAA8G;SAC7G,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,0BAA0B,EAAE,CAAC;SAC3F,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SACnD,MAAM,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SACzD,MAAM,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAC9D,CAAC;AACJ,CAAC,EACD,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,KAAK;QAClB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,WAAW,EAAE,IAAI,CAAC,UAAU;KAC7B,CAAC;IACF,MAAM,IAAA,aAAU,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3D,CAAC,CAAC,CACH;KACA,MAAM,CAAC,SAAS,EAAE;IACjB,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,KAAK;CACf,CAAC,CAAC,IAAI,CAAC;AAEV,SAAS,OAAO,CAAI,EAA8B;IAChD,OAAO,KAAK,EAAE,IAAO,EAAE,EAAE;QACvB,IAAI;YACF,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;SAChB;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACjB;IACH,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,6CAA+B;AAE/B,yBAA8C;AAE9C,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAElC,KAAK;KACF,OAAO,CACN,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,uCAAuC;AACxD,aAAa,EACb,CAAC,KAAK,EAAE,EAAE;IACR,OAAO,CACL,KAAK;SACF,MAAM,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;SAChC,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;SAC7C,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;QAC7C,8GAA8G;SAC7G,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,0BAA0B,EAAE,CAAC;SAC3F,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SACnD,MAAM,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;SACzD,MAAM,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAC9D,CAAC;AACJ,CAAC,EACD,OAAO,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IACrB,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,IAAI,CAAC,KAAK;QAClB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,UAAU,EAAE,IAAI,CAAC,SAAS;QAC1B,WAAW,EAAE,IAAI,CAAC,UAAU;KAC7B,CAAC;IACF,MAAM,IAAA,aAAU,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;AAC3D,CAAC,CAAC,CACH;KACA,MAAM,CAAC,SAAS,EAAE;IACjB,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,KAAK;CACf,CAAC,CAAC,IAAI,CAAC;AAEV,SAAS,OAAO,CAAI,EAA8B;IAChD,OAAO,KAAK,EAAE,IAAO,EAAE,EAAE;QACvB,IAAI;YACF,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;SAChB;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,eAAY,EAAE;gBAC/B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;aAC1B;iBAAM;gBACL,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;SACF;IACH,CAAC,CAAC;AACJ,CAAC"}
package/dist/defs.d.ts CHANGED
@@ -1,11 +1,6 @@
1
- export declare const SUPPORTED_VERSIONS: ({
1
+ export declare const SUPPORTED_VERSIONS: {
2
2
  version: string;
3
3
  node: string;
4
4
  builder_package: string;
5
5
  builder_script: string;
6
- } | {
7
- version: string;
8
- builder_package: string;
9
- builder_script: string;
10
- node?: undefined;
11
- })[];
6
+ }[];
package/dist/defs.js CHANGED
@@ -12,7 +12,7 @@ exports.SUPPORTED_VERSIONS = [
12
12
  },
13
13
  {
14
14
  version: '1.12.0',
15
- // node: '16.19.1',
15
+ node: '16.19.1',
16
16
  // builder_package: '@journeyapps/cloudcode-build-legacy@1.12.0'
17
17
  // DEV HACK:
18
18
  builder_package: '~/src/journey-cloudcode/packages/cloudcode-build-legacy',
package/dist/defs.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"defs.js","sourceRoot":"","sources":["../src/defs.ts"],"names":[],"mappings":";;;AAAA,0DAA0D;AAC7C,QAAA,kBAAkB,GAAG;IAChC;QACE,WAAW;QACX,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,qCAAqC;QACtD,cAAc,EAAE,iBAAiB;KAClC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,mBAAmB;QACnB,gEAAgE;QAChE,YAAY;QACZ,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,mBAAmB;QACnB,gEAAgE;QAChE,YAAY;QACZ,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,mBAAmB;QACnB,gEAAgE;QAChE,YAAY;QACZ,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,mBAAmB;QACnB,gEAAgE;QAChE,YAAY;QACZ,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;CACF,CAAC"}
1
+ {"version":3,"file":"defs.js","sourceRoot":"","sources":["../src/defs.ts"],"names":[],"mappings":";;;AAAA,0DAA0D;AAC7C,QAAA,kBAAkB,GAAG;IAChC;QACE,WAAW;QACX,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,qCAAqC;QACtD,cAAc,EAAE,iBAAiB;KAClC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,gEAAgE;QAChE,YAAY;QACZ,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,mBAAmB;QACnB,gEAAgE;QAChE,YAAY;QACZ,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,mBAAmB;QACnB,gEAAgE;QAChE,YAAY;QACZ,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,mBAAmB;QACnB,gEAAgE;QAChE,YAAY;QACZ,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,yDAAyD;QAC1E,cAAc,EAAE,wBAAwB;KACzC;CACF,CAAC"}
@@ -1,9 +1,8 @@
1
- export type DetectedTask = {
1
+ export declare function detectTasks(project_path: string, only?: string): Promise<{
2
2
  pkg_path: string;
3
- task_name: string;
4
- task_version: string;
5
- required_node_version?: string;
3
+ task_name: any;
4
+ task_version: any;
5
+ required_node_version: string | undefined;
6
6
  builder_package: string;
7
7
  builder_script: string;
8
- };
9
- export declare function detectTasks(project_path: string, only?: string): Promise<DetectedTask[]>;
8
+ }[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"detect_tasks.js","sourceRoot":"","sources":["../src/detect_tasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detect_tasks.js","sourceRoot":"","sources":["../src/detect_tasks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /// <reference types="node" />
2
+ import { SpawnSyncReturns } from 'child_process';
3
+ export declare class ProcessError extends Error {
4
+ result: SpawnSyncReturns<string>;
5
+ cause?: Error;
6
+ status: number;
7
+ constructor(result: SpawnSyncReturns<string>);
8
+ }
package/dist/errors.js ADDED
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProcessError = void 0;
4
+ class ProcessError extends Error {
5
+ constructor(result) {
6
+ super(constructMessage(result));
7
+ this.result = result;
8
+ if (result.error) {
9
+ this.cause = result.error;
10
+ }
11
+ this.status = result.status || 1;
12
+ }
13
+ }
14
+ exports.ProcessError = ProcessError;
15
+ function constructMessage(result) {
16
+ if (result.error) {
17
+ return result.error.message;
18
+ }
19
+ return `${result.stdout}${result.stderr}`.trim();
20
+ }
21
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAEA,MAAa,YAAa,SAAQ,KAAK;IAIrC,YAAmB,MAAgC;QACjD,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QADf,WAAM,GAAN,MAAM,CAA0B;QAGjD,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;SAC3B;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;IACnC,CAAC;CACF;AAZD,oCAYC;AAED,SAAS,gBAAgB,CAAC,MAAgC;IACxD,IAAI,MAAM,CAAC,KAAK,EAAE;QAChB,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;KAC7B;IACD,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;AACnD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1 +1,2 @@
1
+ export * from './errors';
1
2
  export * from './builder';
package/dist/index.js CHANGED
@@ -14,5 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./errors"), exports);
17
18
  __exportStar(require("./builder"), exports);
18
19
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,4CAA0B"}
@@ -1,8 +1,3 @@
1
- export declare function ensureCustomNodeVersion(node_version: string, install_path: string): Promise<{
2
- bin_path: string;
3
- node_bin: string;
4
- npm_bin: string;
5
- }>;
6
1
  export declare function downloadAndInstallNode(node_version: string, destination: string): Promise<{
7
2
  bin_path: string;
8
3
  node_bin: string;
@@ -26,26 +26,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.downloadAndExtractTarball = exports.nodePaths = exports.downloadAndInstallNode = exports.ensureCustomNodeVersion = void 0;
30
- const jetpack = __importStar(require("fs-jetpack"));
31
- const path = __importStar(require("node:path"));
32
- const URL = __importStar(require("node:url"));
29
+ exports.downloadAndExtractTarball = exports.nodePaths = exports.downloadAndInstallNode = void 0;
33
30
  const node_fetch_1 = __importDefault(require("node-fetch"));
31
+ const path = __importStar(require("node:path"));
34
32
  const fs = __importStar(require("node:fs"));
35
33
  const os = __importStar(require("node:os"));
34
+ const URL = __importStar(require("node:url"));
36
35
  const tar = __importStar(require("tar"));
37
- async function ensureCustomNodeVersion(node_version, install_path) {
38
- if (!jetpack.exists(path.join(install_path, 'bin/node'))) {
39
- console.debug(`[node ${node_version}] Installing to ${install_path}`);
40
- await jetpack.dirAsync(install_path);
41
- await downloadAndInstallNode(node_version, install_path);
42
- }
43
- else {
44
- console.debug(`[node ${node_version}] Already installed in ${install_path}`);
45
- }
46
- return nodePaths(install_path);
47
- }
48
- exports.ensureCustomNodeVersion = ensureCustomNodeVersion;
49
36
  /* Basically this, but for different dirs.
50
37
  curl https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-${PLATFORM}64.tar.gz -L | tar -xzC /node-dedicated && \
51
38
  mv /node-dedicated/node-v${NODE_VERSION}-linux-${PLATFORM}64/bin/node /node-dedicated/node
@@ -53,10 +40,14 @@ exports.ensureCustomNodeVersion = ensureCustomNodeVersion;
53
40
  // TODO: feature to find the latest minor and patch for a given major version?
54
41
  async function downloadAndInstallNode(node_version, destination) {
55
42
  // eg. https://nodejs.org/dist/v18.14.2/node-v18.14.2-linux-x64.tar.xz
43
+ // const PLATFORM = 'x';
44
+ // const node_download_url = `https://nodejs.org/dist/v${node_version}/node-v${node_version}-linux-${PLATFORM}64.tar.gz`;
45
+ // TODO: this is just for dev for now. Find a better fix.
56
46
  const ARCH = os.arch();
57
47
  const PLATFORM = os.platform();
58
48
  const node_download_url = `https://nodejs.org/dist/v${node_version}/node-v${node_version}-${PLATFORM}-${ARCH}.tar.gz`;
59
49
  await downloadAndExtractTarball(node_download_url, destination);
50
+ // TODO: move binaries into local bin path?
60
51
  return nodePaths(destination);
61
52
  }
62
53
  exports.downloadAndInstallNode = downloadAndInstallNode;
@@ -84,11 +75,13 @@ async function downloadAndExtractTarball(url, dest) {
84
75
  const errorBody = await response.statusText;
85
76
  throw new Error(`Failed to download: ${errorBody}`);
86
77
  }
78
+ // FIXME: replace with webstreams? but according to the types package webstreams aren't available in node 16?!??
87
79
  const file = fs.createWriteStream(download); // Sink the download stream into a file, so it can be extracted.
88
80
  response.body.pipe(file);
89
81
  file.on('finish', async () => {
90
82
  try {
91
- console.debug('Extracting...', download);
83
+ console.log('Extracting...', download);
84
+ // const comp = fs.createReadStream(download);
92
85
  tar.extract({
93
86
  cwd: tmpdir,
94
87
  file: download,
@@ -101,29 +94,28 @@ async function downloadAndExtractTarball(url, dest) {
101
94
  // fs.rmSync(dist, { recursive: true });
102
95
  // }
103
96
  if (fs.existsSync(uncomp)) {
104
- console.debug(`Moving extracted files from ${uncomp} to ${dist}`);
97
+ console.log(`Moving extracted files from ${uncomp} to ${dist}`);
105
98
  fs.renameSync(uncomp, dist);
106
99
  }
107
100
  else {
108
- console.debug(`Can't find extract dir ${uncomp}`);
101
+ console.log(`Can't find extract dir ${uncomp}`);
109
102
  }
103
+ // FIXME: this seems to sometimes cause errors
110
104
  /*
111
- FIXME: this seems to sometimes cause errors: eg.
112
- ```
113
- node:events:505
114
- throw er; // Unhandled 'error' event
115
- ^
105
+ ----
106
+ node:events:505
107
+ throw er; // Unhandled 'error' event
108
+ ^
116
109
 
117
- Error: ENOENT: no such file or directory, open '/var/folders/kc/h6m4zpmd23v13s63mygvkslm0000gn/T/node-v16.19.1-darwin-arm64.tar.gz'
118
- Emitted 'error' event on ReadStream instance at:
119
- at emitErrorNT (node:internal/streams/destroy:157:8)
120
- at emitErrorCloseNT (node:internal/streams/destroy:122:3)
121
- at processTicksAndRejections (node:internal/process/task_queues:83:21) {
122
- errno: -2,
123
- code: 'ENOENT',
124
- syscall: 'open',
125
- path: '/var/folders/kc/h6m4zpmd23v13s63mygvkslm0000gn/T/node-v16.19.1-darwin-arm64.tar.gz'
126
- ```
110
+ Error: ENOENT: no such file or directory, open '/var/folders/kc/h6m4zpmd23v13s63mygvkslm0000gn/T/node-v16.19.1-darwin-arm64.tar.gz'
111
+ Emitted 'error' event on ReadStream instance at:
112
+ at emitErrorNT (node:internal/streams/destroy:157:8)
113
+ at emitErrorCloseNT (node:internal/streams/destroy:122:3)
114
+ at processTicksAndRejections (node:internal/process/task_queues:83:21) {
115
+ errno: -2,
116
+ code: 'ENOENT',
117
+ syscall: 'open',
118
+ path: '/var/folders/kc/h6m4zpmd23v13s63mygvkslm0000gn/T/node-v16.19.1-darwin-arm64.tar.gz'
127
119
  */
128
120
  // fs.unlinkSync(file.path);
129
121
  resolve(null);
@@ -135,4 +127,4 @@ async function downloadAndExtractTarball(url, dest) {
135
127
  });
136
128
  }
137
129
  exports.downloadAndExtractTarball = downloadAndExtractTarball;
138
- //# sourceMappingURL=installer.js.map
130
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@journeyapps/cloudcode-build-agent",
3
- "version": "0.0.0-dev.6530336",
3
+ "version": "0.0.0-dev.6fdb5b1",
4
4
  "description": "",
5
5
  "main": "./dist/index",
6
6
  "types": "./dist/index",
@@ -9,7 +9,6 @@
9
9
  "cloudcode-build-agent": "./bin.js"
10
10
  },
11
11
  "dependencies": {
12
- "child-process-promise": "^2.2.1",
13
12
  "fs-jetpack": "5.1.0",
14
13
  "lodash": "4.17.21",
15
14
  "node-fetch": "<3",
@@ -18,9 +17,8 @@
18
17
  "yargs": "17.6.2"
19
18
  },
20
19
  "devDependencies": {
21
- "@types/child-process-promise": "2.2.2",
22
20
  "@types/lodash": "4.14.191",
23
- "@types/node": "14.18.36",
21
+ "@types/node": "16.11.7",
24
22
  "@types/node-fetch": "2.6.2",
25
23
  "@types/semver": "7.3.13",
26
24
  "@types/tar": "6.1.4",