zephyr-agent 0.0.0-canary-20241118144314 → 0.0.0-canary-20241121193105
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/lib/actions/ze-upload-assets.js +1 -0
- package/dist/lib/actions/ze-upload-assets.js.map +1 -1
- package/dist/lib/context-utils/ze-util-verification.d.ts +4 -0
- package/dist/lib/context-utils/ze-util-verification.js +30 -0
- package/dist/lib/context-utils/ze-util-verification.js.map +1 -0
- package/dist/lib/sync-utils/get-ze-build-asset.d.ts +1 -1
- package/dist/lib/sync-utils/get-ze-build-asset.js +1 -1
- package/dist/lib/sync-utils/get-ze-build-asset.js.map +1 -1
- package/dist/lib/upload/upload-file.js +73 -31
- package/dist/lib/upload/upload-file.js.map +1 -1
- package/dist/lib/upload/upload.js +5 -0
- package/dist/lib/upload/upload.js.map +1 -1
- package/dist/lib/util/strip-ansi.d.ts +13 -13
- package/dist/lib/util/strip-ansi.js +13 -13
- package/dist/lib/util/strip-ansi.js.map +1 -1
- package/package.json +2 -2
|
@@ -27,6 +27,7 @@ async function zeUploadAssets(pluginOptions, { missingAssets, assetsMap, count }
|
|
|
27
27
|
await Promise.all(missingAssets.map(upload_missing_asset));
|
|
28
28
|
}
|
|
29
29
|
else {
|
|
30
|
+
(0, zephyr_edge_contract_1.ze_log)("The target platform is 'ios' and 'android' so we are switching to batch upload.");
|
|
30
31
|
await batchPromises(missingAssets, CLOUDFLARE_BATCH_SIZE, upload_missing_asset);
|
|
31
32
|
}
|
|
32
33
|
logEvent({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ze-upload-assets.js","sourceRoot":"","sources":["../../../src/lib/actions/ze-upload-assets.ts"],"names":[],"mappings":";;;AAAA,+DAS8B;AAC9B,8GAAyG;AACzG,8DAAqD;AACrD,uDAAmD;AAEnD,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAEzB,KAAK,UAAU,cAAc,CAClC,aAAkC,EAClC,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAyB;IAE1D,MAAM,QAAQ,GAAG,IAAA,qBAAM,EAAC,aAAa,CAAC,CAAC;IAEvC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,QAAQ,CAAC;YACP,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,8BAA8B;YACtC,OAAO,EAAE,wBAAwB,IAAA,4BAAK,EAAC,UAAU,CAAC,KAAK;SACxD,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,MAAM,SAAS,GAAG,MAAM,IAAA,2DAA2B,EAAC;QAClD,eAAe,EAAE,aAAa,CAAC,eAAe;KAC/C,CAAC,CAAC;IAEH,uHAAuH;IACvH,6OAA6O;IAC7O,IAAI,aAAa,CAAC,MAAM,KAAK,KAAK,IAAI,aAAa,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACzE,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,MAAM,aAAa,CAAC,aAAa,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;IAClF,CAAC;IAED,QAAQ,CAAC;QACP,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,6BAA6B;QACrC,OAAO,EAAE,IAAA,4BAAK,EACZ,IAAI,IAAA,kCAAW,EACb,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,CAChC,IAAI,IAAA,4BAAK,EAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,uBAAuB,IAAA,kCAAW,EAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,IAAA,kCAAW,EAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAC7I;KACF,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;IAEZ,KAAK,UAAU,oBAAoB,CAAC,KAAmB;;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,CAAA,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,MAAM,0CAAE,MAAM,IAAG,IAAI,CAAC;QAEzD,MAAM,IAAA,wBAAU,EACd;YACE,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,eAAe;SACvB,EACD,SAAS,CACV,CAAC;QAEF,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAExC,SAAS,IAAI,SAAS,CAAC;QAEvB,IAAA,6BAAM,EAAC,QAAQ,KAAK,CAAC,IAAI,gBAAgB,YAAY,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACzF,CAAC;IAED,KAAK,UAAU,aAAa,CAAO,KAAU,EAAE,SAAiB,EAAE,EAA2B;QAC3F,MAAM,OAAO,GAAQ,EAAE,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;YACjD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;YAC5C,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACtD,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;
|
|
1
|
+
{"version":3,"file":"ze-upload-assets.js","sourceRoot":"","sources":["../../../src/lib/actions/ze-upload-assets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { UploadProviderType } from 'zephyr-edge-contract';
|
|
2
|
+
import { ZephyrPluginOptions } from 'zephyr-edge-contract';
|
|
3
|
+
export declare function verify_mf_config(mfConfig: any, platform: UploadProviderType): void;
|
|
4
|
+
export declare function verify_fastly_config(mfConfig: any, platform: UploadProviderType, plugin_options: ZephyrPluginOptions): void;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.verify_fastly_config = exports.verify_mf_config = void 0;
|
|
4
|
+
const zephyr_edge_contract_1 = require("zephyr-edge-contract");
|
|
5
|
+
const zephyr_edge_contract_2 = require("zephyr-edge-contract");
|
|
6
|
+
const valid_identifiers = /^[a-zA-Z_$][a-zA-Z0-9_$]*$/;
|
|
7
|
+
// Fastly doesn't allow underscore in domains, reference: https://datatracker.ietf.org/doc/html/rfc1035#:~:text=The%20labels%20must%20follow%20the%20rules%20for%20ARPANET%20host%20names.%20%20They%20must%0Astart%20with%20a%20letter%2C%20end%20with%20a%20letter%20or%20digit%2C%20and%20have%20as%20interior%0Acharacters%20only%20letters%2C%20digits%2C%20and%20hyphen.%20%20There%20are%20also%20some%0Arestrictions%20on%20the%20length.%20%20Labels%20must%20be%2063%20characters%20or%20less.
|
|
8
|
+
const valid_identifier_fastly = /^[a-zA-Z$][a-zA-Z0-9$]*$/;
|
|
9
|
+
function verify_mf_config(mfConfig, platform) {
|
|
10
|
+
var _a, _b;
|
|
11
|
+
const condition = ((_a = mfConfig.library) === null || _a === void 0 ? void 0 : _a.type) === 'var' || typeof ((_b = mfConfig.library) === null || _b === void 0 ? void 0 : _b.type) === 'undefined';
|
|
12
|
+
if (condition && !valid_identifiers.test(mfConfig.name) && platform === zephyr_edge_contract_2.UploadProviderType.FASTLY) {
|
|
13
|
+
throw new zephyr_edge_contract_1.ZephyrError(zephyr_edge_contract_1.ZeErrors.ERR_INVALID_MF_CONFIG, {
|
|
14
|
+
cause: zephyr_edge_contract_1.ZeErrors.ERR_INVALID_MF_CONFIG.message.replace('{{library_name}}', mfConfig.name),
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.verify_mf_config = verify_mf_config;
|
|
19
|
+
function verify_fastly_config(mfConfig, platform, plugin_options) {
|
|
20
|
+
var _a, _b;
|
|
21
|
+
const condition = ((_a = mfConfig.library) === null || _a === void 0 ? void 0 : _a.type) === 'var' || typeof ((_b = mfConfig.library) === null || _b === void 0 ? void 0 : _b.type) === 'undefined';
|
|
22
|
+
const fastly_condition = !valid_identifier_fastly.test(mfConfig.name) || !valid_identifier_fastly.test(plugin_options.application_uid);
|
|
23
|
+
if (condition && !fastly_condition && platform === zephyr_edge_contract_2.UploadProviderType.FASTLY) {
|
|
24
|
+
throw new zephyr_edge_contract_1.ZephyrError(zephyr_edge_contract_1.ZeErrors.ERR_INVALID_APP_ID, {
|
|
25
|
+
cause: zephyr_edge_contract_1.ZeErrors.ERR_INVALID_APP_ID.message.replace('{{application_uid}}', plugin_options.application_uid),
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.verify_fastly_config = verify_fastly_config;
|
|
30
|
+
//# sourceMappingURL=ze-util-verification.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ze-util-verification.js","sourceRoot":"","sources":["../../../src/lib/context-utils/ze-util-verification.ts"],"names":[],"mappings":";;;AAAA,+DAA6D;AAC7D,+DAA0D;AAG1D,MAAM,iBAAiB,GAAG,4BAA4B,CAAC;AACvD,weAAwe;AACxe,MAAM,uBAAuB,GAAG,0BAA0B,CAAC;AAE3D,SAAgB,gBAAgB,CAAC,QAAa,EAAE,QAA4B;;IAC1E,MAAM,SAAS,GAAG,CAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,IAAI,MAAK,KAAK,IAAI,OAAO,CAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,IAAI,CAAA,KAAK,WAAW,CAAC;IAEpG,IAAI,SAAS,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,yCAAkB,CAAC,MAAM,EAAE,CAAC;QAClG,MAAM,IAAI,kCAAW,CAAC,+BAAQ,CAAC,qBAAqB,EAAE;YACpD,KAAK,EAAE,+BAAQ,CAAC,qBAAqB,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,QAAQ,CAAC,IAAI,CAAC;SACzF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AARD,4CAQC;AAED,SAAgB,oBAAoB,CAAC,QAAa,EAAE,QAA4B,EAAE,cAAmC;;IACnH,MAAM,SAAS,GAAG,CAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,IAAI,MAAK,KAAK,IAAI,OAAO,CAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,IAAI,CAAA,KAAK,WAAW,CAAC;IAEpG,MAAM,gBAAgB,GAAG,CAAC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;IAEvI,IAAI,SAAS,IAAI,CAAC,gBAAgB,IAAI,QAAQ,KAAK,yCAAkB,CAAC,MAAM,EAAE,CAAC;QAC7E,MAAM,IAAI,kCAAW,CAAC,+BAAQ,CAAC,kBAAkB,EAAE;YACjD,KAAK,EAAE,+BAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,cAAc,CAAC,eAAe,CAAC;SAC1G,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAVD,oDAUC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { ZeBuildAsset } from 'zephyr-edge-contract';
|
|
3
|
-
export declare function getZeBuildAsset({ filepath, content
|
|
3
|
+
export declare function getZeBuildAsset({ filepath, content }: {
|
|
4
4
|
filepath: string;
|
|
5
5
|
content: string | Buffer;
|
|
6
6
|
}): ZeBuildAsset;
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.getZeBuildAsset = void 0;
|
|
4
4
|
const node_crypto_1 = require("node:crypto");
|
|
5
5
|
const node_path_1 = require("node:path");
|
|
6
|
-
function getZeBuildAsset({ filepath, content
|
|
6
|
+
function getZeBuildAsset({ filepath, content }) {
|
|
7
7
|
const buffer = typeof content === 'string' ? Buffer.from(content, 'utf8') : content;
|
|
8
8
|
const hash = (0, node_crypto_1.createHash)('sha256')
|
|
9
9
|
.update(buffer.length ? buffer : Buffer.from(filepath, 'utf8'))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-ze-build-asset.js","sourceRoot":"","sources":["../../../src/lib/sync-utils/get-ze-build-asset.ts"],"names":[],"mappings":";;;AACA,6CAAyC;AACzC,yCAAoC;AAEpC,SAAgB,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"get-ze-build-asset.js","sourceRoot":"","sources":["../../../src/lib/sync-utils/get-ze-build-asset.ts"],"names":[],"mappings":";;;AACA,6CAAyC;AACzC,yCAAoC;AAEpC,SAAgB,eAAe,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAkD;IACnG,MAAM,MAAM,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAEpF,MAAM,IAAI,GAAG,IAAA,wBAAU,EAAC,QAAQ,CAAC;SAC9B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC9D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SACrC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEjB,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,IAAA,mBAAO,EAAC,QAAQ,CAAC;QAC1B,IAAI;QACJ,IAAI,EAAE,MAAM,CAAC,MAAM;QACnB,MAAM,EAAE,MAAM;KACf,CAAC;AACJ,CAAC;AAfD,0CAeC"}
|
|
@@ -2,40 +2,82 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.uploadFile = void 0;
|
|
4
4
|
const zephyr_edge_contract_1 = require("zephyr-edge-contract");
|
|
5
|
+
const CHUNK_SIZE = 1024 * 50;
|
|
5
6
|
async function uploadFile({ hash, asset }, { EDGE_URL, jwt }) {
|
|
6
7
|
const type = 'file';
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
8
|
+
const totalChunks = Math.ceil(asset.size / CHUNK_SIZE);
|
|
9
|
+
(0, zephyr_edge_contract_1.ze_log)(`Starting to upload file ${asset.path} with ${totalChunks} chunks...`);
|
|
10
|
+
for (let chunkIndex = 0; chunkIndex < totalChunks; chunkIndex++) {
|
|
11
|
+
const start = chunkIndex * CHUNK_SIZE;
|
|
12
|
+
const end = Math.min(start + CHUNK_SIZE, asset.size);
|
|
13
|
+
const chunk = asset.buffer.slice(start, end);
|
|
14
|
+
const options = {
|
|
15
|
+
method: 'POST',
|
|
16
|
+
headers: {
|
|
17
|
+
'x-file-size': asset.size.toString(),
|
|
18
|
+
'x-file-path': asset.path,
|
|
19
|
+
'x-chunk-index': chunkIndex.toString(),
|
|
20
|
+
'x-total-chunks': totalChunks.toString(),
|
|
21
|
+
can_write_jwt: jwt,
|
|
22
|
+
'Content-Type': 'application/octet-stream',
|
|
23
|
+
},
|
|
24
|
+
};
|
|
25
|
+
const [ok, cause] = await zephyr_edge_contract_1.ZeHttpRequest.from({
|
|
26
|
+
path: '/upload',
|
|
27
|
+
base: EDGE_URL,
|
|
28
|
+
query: { type, hash, filename: asset.path },
|
|
29
|
+
}, options, chunk);
|
|
30
|
+
if (!ok) {
|
|
31
|
+
// Because of `ctx.waitUntil`, the worker will continue to upload the files even if the request failed, and if we immediately throw an error the local process will be terminated, we try again here to at least have another level of effort to continue local process.
|
|
32
|
+
try {
|
|
33
|
+
(0, zephyr_edge_contract_1.ze_log)(`Failed on first time...trying to upload chunk ${chunkIndex} of file ${asset.path} of total ${totalChunks} chunks...`);
|
|
34
|
+
const [retryOk, retryCause] = await zephyr_edge_contract_1.ZeHttpRequest.from({
|
|
35
|
+
path: '/upload',
|
|
36
|
+
base: EDGE_URL,
|
|
37
|
+
query: { type, hash, filename: asset.path },
|
|
38
|
+
}, options, chunk);
|
|
39
|
+
if (!retryOk) {
|
|
40
|
+
try {
|
|
41
|
+
(0, zephyr_edge_contract_1.ze_log)(`Second time...Trying to upload chunk ${chunkIndex} of file ${asset.path} of total ${totalChunks} chunks...`);
|
|
42
|
+
const [retryOk, retryCause] = await zephyr_edge_contract_1.ZeHttpRequest.from({
|
|
43
|
+
path: '/upload',
|
|
44
|
+
base: EDGE_URL,
|
|
45
|
+
query: { type, hash, filename: asset.path },
|
|
46
|
+
}, options, chunk);
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
throw new zephyr_edge_contract_1.ZephyrError(zephyr_edge_contract_1.ZeErrors.ERR_FAILED_UPLOAD, {
|
|
50
|
+
type: 'file',
|
|
51
|
+
cause: error,
|
|
52
|
+
data: {
|
|
53
|
+
chunkIndex,
|
|
54
|
+
totalChunks,
|
|
55
|
+
},
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
throw new zephyr_edge_contract_1.ZephyrError(zephyr_edge_contract_1.ZeErrors.ERR_FAILED_UPLOAD, {
|
|
59
|
+
type: 'file',
|
|
60
|
+
cause: retryCause,
|
|
61
|
+
data: {
|
|
62
|
+
chunkIndex,
|
|
63
|
+
totalChunks,
|
|
64
|
+
},
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
catch (error) {
|
|
69
|
+
throw new zephyr_edge_contract_1.ZephyrError(zephyr_edge_contract_1.ZeErrors.ERR_FAILED_UPLOAD, {
|
|
70
|
+
type: 'file',
|
|
71
|
+
cause,
|
|
72
|
+
data: {
|
|
73
|
+
error,
|
|
74
|
+
chunkIndex,
|
|
75
|
+
totalChunks,
|
|
76
|
+
},
|
|
77
|
+
});
|
|
78
|
+
}
|
|
38
79
|
}
|
|
80
|
+
(0, zephyr_edge_contract_1.ze_log)(`Chunk ${chunkIndex} of file ${asset.path} of total ${totalChunks} chunks uploaded`);
|
|
39
81
|
}
|
|
40
82
|
}
|
|
41
83
|
exports.uploadFile = uploadFile;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-file.js","sourceRoot":"","sources":["../../../src/lib/upload/upload-file.ts"],"names":[],"mappings":";;;AACA,+
|
|
1
|
+
{"version":3,"file":"upload-file.js","sourceRoot":"","sources":["../../../src/lib/upload/upload-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,14 @@ const isCI = tslib_1.__importStar(require("is-ci"));
|
|
|
6
6
|
const zephyr_edge_contract_1 = require("zephyr-edge-contract");
|
|
7
7
|
const ze_log_event_1 = require("../remote-logs/ze-log-event");
|
|
8
8
|
const strategies_1 = require("./strategies");
|
|
9
|
+
const ze_util_verification_1 = require("../context-utils/ze-util-verification");
|
|
9
10
|
async function upload(options) {
|
|
10
11
|
const logEvent = (0, ze_log_event_1.logger)(options.pluginOptions);
|
|
11
12
|
let versionUrl;
|
|
13
|
+
// Verify Module Federation configuration's naming
|
|
14
|
+
(0, ze_util_verification_1.verify_mf_config)(options.pluginOptions.mfConfig, options.appConfig.PLATFORM);
|
|
15
|
+
// Verify Fastly configuration's naming + application_uid
|
|
16
|
+
(0, ze_util_verification_1.verify_fastly_config)(options.pluginOptions.mfConfig, options.appConfig.PLATFORM, options.pluginOptions);
|
|
12
17
|
switch (options.appConfig.PLATFORM) {
|
|
13
18
|
case zephyr_edge_contract_1.UploadProviderType.CLOUDFLARE:
|
|
14
19
|
versionUrl = await (0, strategies_1.cloudflareStrategy)(options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../src/lib/upload/upload.ts"],"names":[],"mappings":";;;;AAAA,oDAA8B;AAC9B,+DAU8B;AAE9B,8DAAqD;AACrD,6CAAmF;
|
|
1
|
+
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../src/lib/upload/upload.ts"],"names":[],"mappings":";;;;AAAA,oDAA8B;AAC9B,+DAU8B;AAE9B,8DAAqD;AACrD,6CAAmF;AACnF,gFAA+F;AACxF,KAAK,UAAU,MAAM,CAAC,OAAsB;IACjD,MAAM,QAAQ,GAAG,IAAA,qBAAM,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE/C,IAAI,UAAkB,CAAC;IAEvB,kDAAkD;IAClD,IAAA,uCAAgB,EAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7E,yDAAyD;IACzD,IAAA,2CAAoB,EAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IAExG,QAAQ,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;QACnC,KAAK,yCAAkB,CAAC,UAAU;YAChC,UAAU,GAAG,MAAM,IAAA,+BAAkB,EAAC,OAAO,CAAC,CAAC;YAC/C,MAAM;QACR,KAAK,yCAAkB,CAAC,OAAO;YAC7B,UAAU,GAAG,MAAM,IAAA,4BAAe,EAAC,OAAO,CAAC,CAAC;YAC5C,MAAM;QACR,KAAK,yCAAkB,CAAC,MAAM;YAC5B,UAAU,GAAG,MAAM,IAAA,2BAAc,EAAC,OAAO,CAAC,CAAC;YAC3C,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IACpD,CAAC;IAED,QAAQ,CAAC;QACP,KAAK,EAAE,OAAO;QACd,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,eAAe,IAAA,iCAAU,EAAC,QAAQ,CAAC,cAAc,IAAA,6BAAM,EAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,UAAU,IAAA,iCAAU,EAAC,UAAU,CAAC,EAAE;KACtI,CAAC,CAAC;IAEH,IAAI,IAAI,EAAE,CAAC;QACT,2CAAoB,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACrG,CAAC;AACH,CAAC;AAjCD,wBAiCC"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string.
|
|
3
|
-
|
|
4
|
-
@example
|
|
5
|
-
```
|
|
6
|
-
import stripAnsi from 'strip-ansi';
|
|
7
|
-
|
|
8
|
-
stripAnsi('\u001B[4mUnicorn\u001B[0m');
|
|
9
|
-
//=> 'Unicorn'
|
|
10
|
-
|
|
11
|
-
stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
|
|
12
|
-
//=> 'Click'
|
|
13
|
-
|
|
14
|
-
*/
|
|
2
|
+
* Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```
|
|
6
|
+
* import stripAnsi from 'strip-ansi';
|
|
7
|
+
*
|
|
8
|
+
* stripAnsi('\u001B[4mUnicorn\u001B[0m');
|
|
9
|
+
* //=> 'Unicorn'
|
|
10
|
+
*
|
|
11
|
+
* stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
|
|
12
|
+
* //=> 'Click'
|
|
13
|
+
* ```;
|
|
14
|
+
*/
|
|
15
15
|
export declare function stripAnsi(string: string): string;
|
|
@@ -8,19 +8,19 @@ const ANSI_REGEX = new RegExp([
|
|
|
8
8
|
'(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))',
|
|
9
9
|
].join('|'), 'g');
|
|
10
10
|
/**
|
|
11
|
-
Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string.
|
|
12
|
-
|
|
13
|
-
@example
|
|
14
|
-
```
|
|
15
|
-
import stripAnsi from 'strip-ansi';
|
|
16
|
-
|
|
17
|
-
stripAnsi('\u001B[4mUnicorn\u001B[0m');
|
|
18
|
-
//=> 'Unicorn'
|
|
19
|
-
|
|
20
|
-
stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
|
|
21
|
-
//=> 'Click'
|
|
22
|
-
|
|
23
|
-
*/
|
|
11
|
+
* Strip [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) from a string.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```
|
|
15
|
+
* import stripAnsi from 'strip-ansi';
|
|
16
|
+
*
|
|
17
|
+
* stripAnsi('\u001B[4mUnicorn\u001B[0m');
|
|
18
|
+
* //=> 'Unicorn'
|
|
19
|
+
*
|
|
20
|
+
* stripAnsi('\u001B]8;;https://github.com\u0007Click\u001B]8;;\u0007');
|
|
21
|
+
* //=> 'Click'
|
|
22
|
+
* ```;
|
|
23
|
+
*/
|
|
24
24
|
function stripAnsi(string) {
|
|
25
25
|
return string.replace(ANSI_REGEX, '');
|
|
26
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"strip-ansi.js","sourceRoot":"","sources":["../../../src/lib/util/strip-ansi.ts"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,+DAA+D;;;AAE/D,MAAM,UAAU,GAAG,IAAI,MAAM,CAC3B;IACE,8HAA8H;IAC9H,0DAA0D;CAC3D,CAAC,IAAI,CAAC,GAAG,CAAC,EACX,GAAG,CACJ,CAAC;AAEF;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"strip-ansi.js","sourceRoot":"","sources":["../../../src/lib/util/strip-ansi.ts"],"names":[],"mappings":";AAAA,wEAAwE;AACxE,+DAA+D;;;AAE/D,MAAM,UAAU,GAAG,IAAI,MAAM,CAC3B;IACE,8HAA8H;IAC9H,0DAA0D;CAC3D,CAAC,IAAI,CAAC,GAAG,CAAC,EACX,GAAG,CACJ,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,SAAgB,SAAS,CAAC,MAAc;IACtC,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAFD,8BAEC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zephyr-agent",
|
|
3
|
-
"version": "0.0.0-canary-
|
|
3
|
+
"version": "0.0.0-canary-20241121193105",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"type": "commonjs",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"socket.io-client": "^4.7.5",
|
|
27
27
|
"tslib": "^2.6.3",
|
|
28
28
|
"uuid": "^8.3.2",
|
|
29
|
-
"zephyr-edge-contract": "0.0.0-canary-
|
|
29
|
+
"zephyr-edge-contract": "0.0.0-canary-20241121193105"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@types/git-url-parse": "^9.0.3",
|