@journeyapps/cloudcode-build-agent 0.0.0-dev.d5db5f6 → 0.0.0-dev.dd9d382
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 +1 -0
- package/dist/builder.js +22 -12
- package/dist/builder.js.map +1 -1
- package/dist/defs.d.ts +1 -0
- package/dist/defs.js +10 -5
- package/dist/defs.js.map +1 -1
- package/dist/detect_tasks.d.ts +11 -0
- package/dist/detect_tasks.js +20 -3
- package/dist/detect_tasks.js.map +1 -1
- package/dist/installer.d.ts +3 -0
- package/dist/installer.js +4 -7
- package/dist/installer.js.map +1 -1
- package/package.json +1 -1
package/dist/builder.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ type ToolPaths = {
|
|
|
13
13
|
bin_path: string;
|
|
14
14
|
node_bin: string;
|
|
15
15
|
npm_bin: string;
|
|
16
|
+
npx_bin: string;
|
|
16
17
|
};
|
|
17
18
|
export declare function buildTasks(project_path: string, dest: string, config: GeneralTaskConfig, options?: BuildOptions): Promise<void>;
|
|
18
19
|
export declare function buildTask(task: DetectedTask, project_path: string, dest: string, config: GeneralTaskConfig, node_context: {
|
package/dist/builder.js
CHANGED
|
@@ -36,7 +36,8 @@ async function buildTasks(project_path, dest, config, options) {
|
|
|
36
36
|
const default_tool_paths = {
|
|
37
37
|
bin_path: path.dirname(process.execPath),
|
|
38
38
|
node_bin: process.execPath,
|
|
39
|
-
npm_bin: path.join(path.dirname(process.execPath), 'npm')
|
|
39
|
+
npm_bin: path.join(path.dirname(process.execPath), 'npm'),
|
|
40
|
+
npx_bin: path.join(path.dirname(process.execPath), 'npx')
|
|
40
41
|
};
|
|
41
42
|
for (const task of tasks) {
|
|
42
43
|
let custom_tool_paths;
|
|
@@ -57,15 +58,21 @@ exports.buildTasks = buildTasks;
|
|
|
57
58
|
async function buildTask(task, project_path, dest, config, node_context) {
|
|
58
59
|
const builder_package = task.builder_package;
|
|
59
60
|
const builder_script = task.builder_script;
|
|
60
|
-
const {
|
|
61
|
-
const builder_bin = path.resolve(bin_path, builder_script);
|
|
61
|
+
const { node_bin, npm_bin, npx_bin } = node_context;
|
|
62
62
|
if (!jetpack.exists(node_bin)) {
|
|
63
63
|
throw new Error(`Node binary not found: ${node_bin}`);
|
|
64
64
|
}
|
|
65
65
|
console.debug(`[${task.task_name}] Installing builder script "${builder_package}" for node ${node_context.node_version}`);
|
|
66
|
-
|
|
66
|
+
/*
|
|
67
|
+
* The builder package is installed locally so as to not require write access to the global node installation,
|
|
68
|
+
* and executed with npx to handle the path resoluton, etc.
|
|
69
|
+
*/
|
|
70
|
+
const stream1 = (0, run_1.runCommand)(node_bin, [npm_bin, '--no-save', '--no-fund', '--no-audit', 'install', builder_package], {
|
|
67
71
|
cwd: project_path,
|
|
68
|
-
env:
|
|
72
|
+
env: {
|
|
73
|
+
npm_config_loglevel: 'error',
|
|
74
|
+
...process.env
|
|
75
|
+
}
|
|
69
76
|
});
|
|
70
77
|
for await (let event of stream1) {
|
|
71
78
|
const log = event.stdout ?? event.stderr;
|
|
@@ -73,12 +80,15 @@ async function buildTask(task, project_path, dest, config, node_context) {
|
|
|
73
80
|
console.log(`[${task.task_name} - install]`, log.trimRight());
|
|
74
81
|
}
|
|
75
82
|
}
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
83
|
+
const build_metadata = {
|
|
84
|
+
name: task.task_name,
|
|
85
|
+
version: task.task_version,
|
|
86
|
+
lambda_runtime: task.task_runtime,
|
|
87
|
+
user_config: task.user_task_config
|
|
88
|
+
};
|
|
89
|
+
await jetpack.writeAsync(path.join(dest, `${task.task_name}-metadata.json`), JSON.stringify(build_metadata));
|
|
80
90
|
const builder_args = [];
|
|
81
|
-
builder_args.push(
|
|
91
|
+
builder_args.push(builder_script);
|
|
82
92
|
builder_args.push('--src', project_path);
|
|
83
93
|
builder_args.push(`--out`, path.join(dest, task.task_name));
|
|
84
94
|
builder_args.push(`--zip`, path.join(dest, `${task.task_name}.zip`));
|
|
@@ -87,15 +97,15 @@ async function buildTask(task, project_path, dest, config, node_context) {
|
|
|
87
97
|
builder_args.push(`--env`, config.env);
|
|
88
98
|
builder_args.push(`--backendId`, config.backend_id);
|
|
89
99
|
builder_args.push(`--backendUrl`, config.backend_url);
|
|
90
|
-
builder_args.push(`--runInstallScripts`, 'true');
|
|
91
100
|
console.debug(`[${task.task_name}] Trying: ${node_bin} ${builder_args.join(' ')}`);
|
|
92
|
-
const stream2 = (0, run_1.runCommand)(
|
|
101
|
+
const stream2 = (0, run_1.runCommand)(npx_bin, ['--no-install', ...builder_args], { cwd: project_path, env: process.env });
|
|
93
102
|
for await (let event of stream2) {
|
|
94
103
|
const log = event.stdout ?? event.stderr;
|
|
95
104
|
if (log) {
|
|
96
105
|
console.log(`[${task.task_name} - build]`, log.trimRight());
|
|
97
106
|
}
|
|
98
107
|
}
|
|
108
|
+
console.log(`[${task.task_name} - build]`, `Finished.`);
|
|
99
109
|
}
|
|
100
110
|
exports.buildTask = buildTask;
|
|
101
111
|
//# sourceMappingURL=builder.js.map
|
package/dist/builder.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAClC,oDAAsC;AACtC,+CAAiC;AAEjC,2CAAsD;AACtD,iDAA2D;AAC3D,+BAAmC;AAkB5B,KAAK,UAAU,UAAU,CAC9B,YAAoB,EACpB,IAAY,EACZ,MAAyB,EACzB,OAAsB;IAEtB,MAAM,KAAK,GAAG,MAAM,IAAA,0BAAW,EAAC,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAE7D,uEAAuE;IACvE,MAAM,kBAAkB,GAAG;QACzB,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;QACxC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;KAC1D,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,iBAAiB,CAAC;QACtB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,qHAAqH;YACrH,MAAM,6BAA6B,GAAG,OAAO,EAAE,6BAA6B,IAAI,YAAY,CAAC;YAC7F,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CACnC,6BAA6B,EAC7B,QAAQ,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,CACnD,CAAC;YACF,iBAAiB,GAAG,MAAM,IAAA,mCAAuB,EAAC,IAAI,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;SACjG;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC;QAEnE,MAAM,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE;YAChD,YAAY;YACZ,GAAG,CAAC,iBAAiB,IAAI,kBAAkB,CAAC;SAC7C,CAAC,CAAC;KACJ;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
package/dist/defs.d.ts
CHANGED
package/dist/defs.js
CHANGED
|
@@ -6,32 +6,37 @@ exports.SUPPORTED_VERSIONS = [
|
|
|
6
6
|
// {
|
|
7
7
|
// // proposed
|
|
8
8
|
// version: '1.13.0',
|
|
9
|
-
// node: '
|
|
9
|
+
// node: '18.14.2',
|
|
10
|
+
// runtime: 'nodejs18.x',
|
|
10
11
|
// builder_package: '@journeyapps/cloudcode-build@1.13.0',
|
|
11
12
|
// builder_script: 'cloudcode-build'
|
|
12
13
|
// },
|
|
13
14
|
{
|
|
14
15
|
version: '1.12.0',
|
|
15
16
|
node: '16.19.1',
|
|
16
|
-
|
|
17
|
+
runtime: 'nodejs16.x',
|
|
18
|
+
builder_package: '@journeyapps/cloudcode-build-legacy@1.12.0-alpha.1',
|
|
17
19
|
builder_script: 'cloudcode-build-legacy'
|
|
18
20
|
},
|
|
19
21
|
{
|
|
20
22
|
version: '1.11.2',
|
|
21
23
|
node: '14.21.3',
|
|
22
|
-
|
|
24
|
+
runtime: 'nodejs14.x',
|
|
25
|
+
builder_package: '@journeyapps/cloudcode-build-legacy@1.12.0-alpha.1',
|
|
23
26
|
builder_script: 'cloudcode-build-legacy'
|
|
24
27
|
},
|
|
25
28
|
{
|
|
26
29
|
version: '1.11.1',
|
|
27
30
|
node: '14.21.3',
|
|
28
|
-
|
|
31
|
+
runtime: 'nodejs14.x',
|
|
32
|
+
builder_package: '@journeyapps/cloudcode-build-legacy@1.12.0-alpha.1',
|
|
29
33
|
builder_script: 'cloudcode-build-legacy'
|
|
30
34
|
},
|
|
31
35
|
{
|
|
32
36
|
version: '1.11.0',
|
|
33
37
|
node: '14.21.3',
|
|
34
|
-
|
|
38
|
+
runtime: 'nodejs14.x',
|
|
39
|
+
builder_package: '@journeyapps/cloudcode-build-legacy@1.12.0-alpha.1',
|
|
35
40
|
builder_script: 'cloudcode-build-legacy'
|
|
36
41
|
}
|
|
37
42
|
];
|
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,IAAI;IACJ,gBAAgB;IAChB,uBAAuB;IACvB,qBAAqB;IACrB,4DAA4D;IAC5D,sCAAsC;IACtC,KAAK;IACL;QACE,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"defs.js","sourceRoot":"","sources":["../src/defs.ts"],"names":[],"mappings":";;;AAAA,0DAA0D;AAC7C,QAAA,kBAAkB,GAAG;IAChC,IAAI;IACJ,gBAAgB;IAChB,uBAAuB;IACvB,qBAAqB;IACrB,2BAA2B;IAC3B,4DAA4D;IAC5D,sCAAsC;IACtC,KAAK;IACL;QACE,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,YAAY;QACrB,eAAe,EAAE,oDAAoD;QACrE,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,YAAY;QACrB,eAAe,EAAE,oDAAoD;QACrE,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,YAAY;QACrB,eAAe,EAAE,oDAAoD;QACrE,cAAc,EAAE,wBAAwB;KACzC;IACD;QACE,OAAO,EAAE,QAAQ;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,YAAY;QACrB,eAAe,EAAE,oDAAoD;QACrE,cAAc,EAAE,wBAAwB;KACzC;CACF,CAAC"}
|
package/dist/detect_tasks.d.ts
CHANGED
|
@@ -2,8 +2,19 @@ export type DetectedTask = {
|
|
|
2
2
|
pkg_path: string;
|
|
3
3
|
task_name: string;
|
|
4
4
|
task_version: string;
|
|
5
|
+
task_runtime: string;
|
|
5
6
|
required_node_version?: string;
|
|
6
7
|
builder_package: string;
|
|
7
8
|
builder_script: string;
|
|
9
|
+
user_task_config: {
|
|
10
|
+
runtime: string;
|
|
11
|
+
enabled: boolean;
|
|
12
|
+
shared?: boolean;
|
|
13
|
+
serial?: boolean;
|
|
14
|
+
app?: boolean;
|
|
15
|
+
web?: boolean;
|
|
16
|
+
webhook?: boolean;
|
|
17
|
+
schedule?: any;
|
|
18
|
+
};
|
|
8
19
|
};
|
|
9
20
|
export declare function detectTasks(project_path: string, only?: string): Promise<DetectedTask[]>;
|
package/dist/detect_tasks.js
CHANGED
|
@@ -41,8 +41,16 @@ async function readPackage(path) {
|
|
|
41
41
|
// todo: if json error, throw a CC build error?
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
+
const UserTaskConfigDefaults = {
|
|
45
|
+
runtime: null,
|
|
46
|
+
enabled: true
|
|
47
|
+
};
|
|
44
48
|
async function detectTasks(project_path, only) {
|
|
45
|
-
const
|
|
49
|
+
const cloudcode_path = path.join(project_path, 'cloudcode');
|
|
50
|
+
if (!jetpack.exists(cloudcode_path)) {
|
|
51
|
+
return Promise.resolve([]);
|
|
52
|
+
}
|
|
53
|
+
const package_files = await jetpack.findAsync(cloudcode_path, { matching: '**/package.json' });
|
|
46
54
|
const filtered_package_files = package_files.filter((pkg_path) => {
|
|
47
55
|
// FIXME: this is kinda clunky.
|
|
48
56
|
const pm = /^\/?cloudcode\/([^\/]+)\/package\.json$/.exec(pkg_path);
|
|
@@ -59,8 +67,14 @@ async function detectTasks(project_path, only) {
|
|
|
59
67
|
return Promise.all(filtered_package_files.map(async (pkg_path) => {
|
|
60
68
|
const task_package = await readPackage(pkg_path);
|
|
61
69
|
const task_name = task_package.name; // CAVEAT: the pkg name _must_ match the dir.
|
|
62
|
-
const task_version = task_package
|
|
63
|
-
|
|
70
|
+
const task_version = task_package.cloudcode.runtime;
|
|
71
|
+
const user_task_config = {
|
|
72
|
+
...UserTaskConfigDefaults,
|
|
73
|
+
...task_package.cloud_code
|
|
74
|
+
};
|
|
75
|
+
/* CAVEAT: We do not exclude disabled tasks from the build process, because this is a special case where the
|
|
76
|
+
processing for a task is disabled, but the resources for the task are not destroyed.
|
|
77
|
+
*/
|
|
64
78
|
console.debug(`Detected task version ${task_version}`);
|
|
65
79
|
const matching = defs.SUPPORTED_VERSIONS.find((v) => {
|
|
66
80
|
return semver.satisfies(v.version, task_version);
|
|
@@ -69,6 +83,7 @@ async function detectTasks(project_path, only) {
|
|
|
69
83
|
throw new Error('FIXME: unsupported version');
|
|
70
84
|
}
|
|
71
85
|
console.debug(`Matching versions: ${JSON.stringify(matching)}`);
|
|
86
|
+
const task_runtime = matching.runtime;
|
|
72
87
|
const running_node_version = process.versions.node;
|
|
73
88
|
let required_node_version;
|
|
74
89
|
if (matching?.node && semver.major(matching.node) !== semver.major(running_node_version)) {
|
|
@@ -79,6 +94,8 @@ async function detectTasks(project_path, only) {
|
|
|
79
94
|
pkg_path,
|
|
80
95
|
task_name,
|
|
81
96
|
task_version,
|
|
97
|
+
task_runtime,
|
|
98
|
+
user_task_config,
|
|
82
99
|
required_node_version,
|
|
83
100
|
builder_package: matching.builder_package,
|
|
84
101
|
builder_script: matching.builder_script
|
package/dist/detect_tasks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect_tasks.js","sourceRoot":"","sources":["../src/detect_tasks.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA8B;AAC9B,gDAAkC;AAClC,oDAAsC;AACtC,+CAAiC;AACjC,6CAA+B;AAE/B,KAAK,UAAU,WAAW,CAAC,IAAY;IACrC,IAAI;QACF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KAC5B;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/B,MAAM,GAAG,CAAC;QACV,mCAAmC;QACnC,+CAA+C;KAChD;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"detect_tasks.js","sourceRoot":"","sources":["../src/detect_tasks.ts"],"names":[],"mappings":"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"}
|
package/dist/installer.d.ts
CHANGED
|
@@ -2,15 +2,18 @@ export declare function ensureCustomNodeVersion(node_version: string, install_pa
|
|
|
2
2
|
bin_path: string;
|
|
3
3
|
node_bin: string;
|
|
4
4
|
npm_bin: string;
|
|
5
|
+
npx_bin: string;
|
|
5
6
|
}>;
|
|
6
7
|
export declare function downloadAndInstallNode(node_version: string, destination: string): Promise<{
|
|
7
8
|
bin_path: string;
|
|
8
9
|
node_bin: string;
|
|
9
10
|
npm_bin: string;
|
|
11
|
+
npx_bin: string;
|
|
10
12
|
}>;
|
|
11
13
|
export declare function nodePaths(destination: string): {
|
|
12
14
|
bin_path: string;
|
|
13
15
|
node_bin: string;
|
|
14
16
|
npm_bin: string;
|
|
17
|
+
npx_bin: string;
|
|
15
18
|
};
|
|
16
19
|
export declare function downloadAndExtractTarball(url: string, dest: string): Promise<void>;
|
package/dist/installer.js
CHANGED
|
@@ -64,7 +64,8 @@ function nodePaths(destination) {
|
|
|
64
64
|
return {
|
|
65
65
|
bin_path: path.resolve(destination, 'bin'),
|
|
66
66
|
node_bin: path.resolve(destination, 'bin', 'node'),
|
|
67
|
-
npm_bin: path.resolve(destination, 'bin', 'npm')
|
|
67
|
+
npm_bin: path.resolve(destination, 'bin', 'npm'),
|
|
68
|
+
npx_bin: path.resolve(destination, 'bin', 'npx')
|
|
68
69
|
};
|
|
69
70
|
}
|
|
70
71
|
exports.nodePaths = nodePaths;
|
|
@@ -78,7 +79,7 @@ async function downloadAndExtractTarball(url, dest) {
|
|
|
78
79
|
fs.unlinkSync(download);
|
|
79
80
|
}
|
|
80
81
|
await new Promise(async (resolve, reject) => {
|
|
81
|
-
console.
|
|
82
|
+
console.debug(`fetching ${url} into ${download}`);
|
|
82
83
|
const response = await (0, node_fetch_1.default)(url);
|
|
83
84
|
if (!response.ok) {
|
|
84
85
|
const errorBody = await response.statusText;
|
|
@@ -96,10 +97,6 @@ async function downloadAndExtractTarball(url, dest) {
|
|
|
96
97
|
});
|
|
97
98
|
const uncomp = path.join(tmpdir, base);
|
|
98
99
|
const dist = path.resolve(dest);
|
|
99
|
-
// FIXME: dangerous. Add protection or replace.
|
|
100
|
-
// if (fs.existsSync(dist)) {
|
|
101
|
-
// fs.rmSync(dist, { recursive: true });
|
|
102
|
-
// }
|
|
103
100
|
if (fs.existsSync(uncomp)) {
|
|
104
101
|
console.debug(`Moving extracted files from ${uncomp} to ${dist}`);
|
|
105
102
|
fs.renameSync(uncomp, dist);
|
|
@@ -108,7 +105,7 @@ async function downloadAndExtractTarball(url, dest) {
|
|
|
108
105
|
console.debug(`Can't find extract dir ${uncomp}`);
|
|
109
106
|
}
|
|
110
107
|
/*
|
|
111
|
-
FIXME:
|
|
108
|
+
FIXME: the unlinking seems to sometimes cause errors: eg.
|
|
112
109
|
```
|
|
113
110
|
node:events:505
|
|
114
111
|
throw er; // Unhandled 'error' event
|
package/dist/installer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAAsC;AACtC,gDAAkC;AAClC,8CAAgC;AAChC,4DAA+B;AAC/B,4CAA8B;AAC9B,4CAA8B;AAC9B,yCAA2B;AAEpB,KAAK,UAAU,uBAAuB,CAAC,YAAoB,EAAE,YAAoB;IACtF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,EAAE;QACxD,OAAO,CAAC,KAAK,CAAC,SAAS,YAAY,mBAAmB,YAAY,EAAE,CAAC,CAAC;QACtE,MAAM,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,MAAM,sBAAsB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;KAC1D;SAAM;QACL,OAAO,CAAC,KAAK,CAAC,SAAS,YAAY,0BAA0B,YAAY,EAAE,CAAC,CAAC;KAC9E;IACD,OAAO,SAAS,CAAC,YAAY,CAAC,CAAC;AACjC,CAAC;AATD,0DASC;AAED;;;EAGE;AACF,8EAA8E;AACvE,KAAK,UAAU,sBAAsB,CAAC,YAAoB,EAAE,WAAmB;IACpF,sEAAsE;IACtE,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;IACvB,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC/B,MAAM,iBAAiB,GAAG,4BAA4B,YAAY,UAAU,YAAY,IAAI,QAAQ,IAAI,IAAI,SAAS,CAAC;IAEtH,MAAM,yBAAyB,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;IAChE,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;AAChC,CAAC;AARD,wDAQC;AAED,SAAgB,SAAS,CAAC,WAAmB;IAC3C,OAAO;QACL,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC;QAC1C,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC;QAClD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC;KACjD,CAAC;AACJ,CAAC;
|
|
1
|
+
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.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.
|
|
3
|
+
"version": "0.0.0-dev.dd9d382",
|
|
4
4
|
"description": "Detect CloudCode tasks in a JourneyApps App and build them for installation on AWS Lambda",
|
|
5
5
|
"main": "./dist/index",
|
|
6
6
|
"types": "./dist/index",
|