@forge/cli 13.4.0-next.1-experimental-0b00ed8 → 13.4.0-next.18
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/CHANGELOG.md +179 -11
- package/npm-shrinkwrap.json +58 -98
- package/out/autocomplete/autocomplete-config.json +31 -3
- package/out/command-line/command.d.ts +3 -1
- package/out/command-line/command.d.ts.map +1 -1
- package/out/command-line/command.js +6 -3
- package/out/command-line/command.js.map +1 -1
- package/out/command-line/controller/install-controller.d.ts +3 -1
- package/out/command-line/controller/install-controller.d.ts.map +1 -1
- package/out/command-line/controller/install-controller.js +6 -1
- package/out/command-line/controller/install-controller.js.map +1 -1
- package/out/command-line/controller/settings-controller.d.ts +3 -1
- package/out/command-line/controller/settings-controller.d.ts.map +1 -1
- package/out/command-line/controller/settings-controller.js +38 -1
- package/out/command-line/controller/settings-controller.js.map +1 -1
- package/out/command-line/controller/site-controller.d.ts +10 -0
- package/out/command-line/controller/site-controller.d.ts.map +1 -0
- package/out/command-line/controller/site-controller.js +39 -0
- package/out/command-line/controller/site-controller.js.map +1 -0
- package/out/command-line/dependency-injection.d.ts +4 -0
- package/out/command-line/dependency-injection.d.ts.map +1 -1
- package/out/command-line/dependency-injection.js +11 -2
- package/out/command-line/dependency-injection.js.map +1 -1
- package/out/command-line/index.d.ts +0 -2
- package/out/command-line/index.d.ts.map +1 -1
- package/out/command-line/index.js +19 -22
- package/out/command-line/index.js.map +1 -1
- package/out/command-line/proxy.d.ts +16 -0
- package/out/command-line/proxy.d.ts.map +1 -0
- package/out/command-line/proxy.js +73 -0
- package/out/command-line/proxy.js.map +1 -0
- package/out/command-line/register-app-commands.d.ts.map +1 -1
- package/out/command-line/register-app-commands.js +1 -1
- package/out/command-line/register-app-commands.js.map +1 -1
- package/out/command-line/register-containers-commands.js +1 -1
- package/out/command-line/register-containers-commands.js.map +1 -1
- package/out/command-line/register-installation-commands.d.ts.map +1 -1
- package/out/command-line/register-installation-commands.js +17 -4
- package/out/command-line/register-installation-commands.js.map +1 -1
- package/out/command-line/register-log-commands.d.ts.map +1 -1
- package/out/command-line/register-log-commands.js +11 -4
- package/out/command-line/register-log-commands.js.map +1 -1
- package/out/command-line/register-settings-commands.d.ts.map +1 -1
- package/out/command-line/register-settings-commands.js +1 -0
- package/out/command-line/register-settings-commands.js.map +1 -1
- package/out/command-line/register-site-commands.d.ts +3 -0
- package/out/command-line/register-site-commands.d.ts.map +1 -0
- package/out/command-line/register-site-commands.js +19 -0
- package/out/command-line/register-site-commands.js.map +1 -0
- package/out/command-line/view/deploy-view.d.ts.map +1 -1
- package/out/command-line/view/deploy-view.js +1 -1
- package/out/command-line/view/deploy-view.js.map +1 -1
- package/out/command-line/view/site-view.d.ts +15 -0
- package/out/command-line/view/site-view.d.ts.map +1 -0
- package/out/command-line/view/site-view.js +57 -0
- package/out/command-line/view/site-view.js.map +1 -0
- package/out/deploy/package-upload-deploy.d.ts.map +1 -1
- package/out/deploy/package-upload-deploy.js +5 -5
- package/out/deploy/package-upload-deploy.js.map +1 -1
- package/out/deploy/uploader/artifact-graphql-client.d.ts +2 -0
- package/out/deploy/uploader/artifact-graphql-client.d.ts.map +1 -1
- package/out/deploy/uploader/artifact-graphql-client.js +31 -0
- package/out/deploy/uploader/artifact-graphql-client.js.map +1 -1
- package/out/deploy/uploader/uploader.d.ts.map +1 -1
- package/out/deploy/uploader/uploader.js +3 -0
- package/out/deploy/uploader/uploader.js.map +1 -1
- package/out/service/cached-config-service.d.ts +1 -0
- package/out/service/cached-config-service.d.ts.map +1 -1
- package/out/service/cached-config-service.js +3 -2
- package/out/service/cached-config-service.js.map +1 -1
- package/out/service/resources-uploader-service.d.ts.map +1 -1
- package/out/service/resources-uploader-service.js +7 -3
- package/out/service/resources-uploader-service.js.map +1 -1
- package/out/site/graphql-client.d.ts +36 -0
- package/out/site/graphql-client.d.ts.map +1 -0
- package/out/site/graphql-client.js +86 -0
- package/out/site/graphql-client.js.map +1 -0
- package/out/site/index.d.ts +3 -0
- package/out/site/index.d.ts.map +1 -0
- package/out/site/index.js +6 -0
- package/out/site/index.js.map +1 -0
- package/out/site/site-service.d.ts +32 -0
- package/out/site/site-service.d.ts.map +1 -0
- package/out/site/site-service.js +80 -0
- package/out/site/site-service.js.map +1 -0
- package/package.json +10 -13
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SiteService = exports.isActiveDemoSite = exports.SiteProvisioningFailedError = exports.DEFAULT_PROVISION_POLL_INTERVAL_MS = exports.DEFAULT_PROVISION_TIMEOUT_MS = void 0;
|
|
4
|
+
const cli_shared_1 = require("@forge/cli-shared");
|
|
5
|
+
const INACTIVE_SITE_STATUSES = ['EXPIRED', 'DEACTIVATED', 'DELETED', 'INACTIVE', 'FAILED'];
|
|
6
|
+
exports.DEFAULT_PROVISION_TIMEOUT_MS = 3 * 60 * 1000;
|
|
7
|
+
exports.DEFAULT_PROVISION_POLL_INTERVAL_MS = 5 * 1000;
|
|
8
|
+
class SiteProvisioningFailedError extends cli_shared_1.UserError {
|
|
9
|
+
}
|
|
10
|
+
exports.SiteProvisioningFailedError = SiteProvisioningFailedError;
|
|
11
|
+
const isActiveDemoSite = (site) => {
|
|
12
|
+
if (!site?.siteUrl) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
if (site.status && INACTIVE_SITE_STATUSES.includes(site.status.toUpperCase())) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
if (site.expiresAt) {
|
|
19
|
+
const expiresAt = Date.parse(site.expiresAt);
|
|
20
|
+
if (!Number.isNaN(expiresAt) && expiresAt <= Date.now()) {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return true;
|
|
25
|
+
};
|
|
26
|
+
exports.isActiveDemoSite = isActiveDemoSite;
|
|
27
|
+
class SiteService {
|
|
28
|
+
client;
|
|
29
|
+
logger;
|
|
30
|
+
constructor(client, logger = cli_shared_1.NullLogger) {
|
|
31
|
+
this.client = client;
|
|
32
|
+
this.logger = logger;
|
|
33
|
+
}
|
|
34
|
+
async provision() {
|
|
35
|
+
return this.client.provisionDemoSite();
|
|
36
|
+
}
|
|
37
|
+
async getExistingSite() {
|
|
38
|
+
return this.client.getDemoSite();
|
|
39
|
+
}
|
|
40
|
+
async hasActiveDemoSite() {
|
|
41
|
+
try {
|
|
42
|
+
const site = await this.client.getDemoSite();
|
|
43
|
+
this.logger.debug(cli_shared_1.Text.site.debug.demoSiteLookup(site?.siteUrl, site?.status, site?.expiresAt));
|
|
44
|
+
return (0, exports.isActiveDemoSite)(site);
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
this.logger.debug(cli_shared_1.Text.site.debug.demoSiteLookupFailed(error instanceof Error ? error.message : String(error)));
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
async pollProvisioning(taskId, options = {}) {
|
|
52
|
+
const timeoutMs = options.timeoutMs ?? exports.DEFAULT_PROVISION_TIMEOUT_MS;
|
|
53
|
+
const intervalMs = options.intervalMs ?? exports.DEFAULT_PROVISION_POLL_INTERVAL_MS;
|
|
54
|
+
const deadline = Date.now() + timeoutMs;
|
|
55
|
+
let lastStatus;
|
|
56
|
+
while (true) {
|
|
57
|
+
const provisioning = await this.client.getDemoSiteProvisioning(taskId);
|
|
58
|
+
const status = provisioning?.status;
|
|
59
|
+
if (status && status !== lastStatus) {
|
|
60
|
+
lastStatus = status;
|
|
61
|
+
options.onStatus?.(status);
|
|
62
|
+
}
|
|
63
|
+
if (status === 'COMPLETED' && provisioning) {
|
|
64
|
+
return { kind: 'completed', provisioning };
|
|
65
|
+
}
|
|
66
|
+
if (status === 'COMPLETED_WITH_ERRORS' && provisioning?.site) {
|
|
67
|
+
return { kind: 'completedWithErrors', provisioning };
|
|
68
|
+
}
|
|
69
|
+
if (status === 'FAILED' || status === 'COMPLETED_WITH_ERRORS') {
|
|
70
|
+
throw new SiteProvisioningFailedError(`Demo site provisioning ${status === 'FAILED' ? 'failed' : 'completed with errors'} (taskId: ${taskId}).`);
|
|
71
|
+
}
|
|
72
|
+
if (Date.now() >= deadline) {
|
|
73
|
+
return { kind: 'timeout', taskId };
|
|
74
|
+
}
|
|
75
|
+
await (0, cli_shared_1.pause)(intervalMs);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.SiteService = SiteService;
|
|
80
|
+
//# sourceMappingURL=site-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site-service.js","sourceRoot":"","sources":["../../src/site/site-service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forge/cli",
|
|
3
|
-
"version": "13.4.0-next.
|
|
3
|
+
"version": "13.4.0-next.18",
|
|
4
4
|
"description": "A command line interface for managing Atlassian-hosted apps",
|
|
5
5
|
"author": "Atlassian",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
@@ -21,14 +21,14 @@
|
|
|
21
21
|
"generate:custom-scopes-types": "json2ts --input src/custom-scopes/validation/schema.json --output src/custom-scopes/generated-types.d.ts --style.singleQuote"
|
|
22
22
|
},
|
|
23
23
|
"dependencies": {
|
|
24
|
-
"@forge/bundler": "7.
|
|
25
|
-
"@forge/cli-shared": "9.
|
|
24
|
+
"@forge/bundler": "7.2.0-next.16",
|
|
25
|
+
"@forge/cli-shared": "9.4.0-next.13",
|
|
26
26
|
"@forge/egress": "3.0.0",
|
|
27
|
-
"@forge/lint": "6.
|
|
28
|
-
"@forge/manifest": "13.3.
|
|
27
|
+
"@forge/lint": "6.2.0-next.16",
|
|
28
|
+
"@forge/manifest": "13.3.1-next.4",
|
|
29
29
|
"@forge/i18n": "1.0.0",
|
|
30
30
|
"@forge/runtime": "7.0.0",
|
|
31
|
-
"@forge/tunnel": "7.1.1-next.
|
|
31
|
+
"@forge/tunnel": "7.1.1-next.16",
|
|
32
32
|
"@forge/util": "3.0.0",
|
|
33
33
|
"@sentry/node": "7.106.0",
|
|
34
34
|
"ajv": "^8.18.0",
|
|
@@ -49,9 +49,9 @@
|
|
|
49
49
|
"fs-extra": "^11.2.0",
|
|
50
50
|
"hidefile": "^3.0.0",
|
|
51
51
|
"http-proxy-agent": "^7.0.2",
|
|
52
|
+
"https-proxy-agent": "^7.0.6",
|
|
52
53
|
"latest-version": "^7.0.0",
|
|
53
54
|
"lodash": "^4.17.21",
|
|
54
|
-
"node-fetch": "2.7.0",
|
|
55
55
|
"node-machine-id": "^1.1.12",
|
|
56
56
|
"omelette": "^0.4.17",
|
|
57
57
|
"ora": "^5.4.1",
|
|
@@ -60,6 +60,7 @@
|
|
|
60
60
|
"semver": "^7.6.0",
|
|
61
61
|
"tmp": "^0.2.3",
|
|
62
62
|
"tslib": "^2.6.2",
|
|
63
|
+
"undici": "^7.29.0",
|
|
63
64
|
"v8-compile-cache": "^2.4.0",
|
|
64
65
|
"yaml": "^2.3.4"
|
|
65
66
|
},
|
|
@@ -75,7 +76,6 @@
|
|
|
75
76
|
"@types/jest": "^29.5.14",
|
|
76
77
|
"@types/jws": "^3.2.10",
|
|
77
78
|
"@types/node": "20.19.1",
|
|
78
|
-
"@types/node-fetch": "^2.6.12",
|
|
79
79
|
"@types/omelette": "^0.4.5",
|
|
80
80
|
"@types/semver": "^7.5.8",
|
|
81
81
|
"@types/tmp": "^0.2.6",
|
|
@@ -92,12 +92,9 @@
|
|
|
92
92
|
"typescript": "5.9.2"
|
|
93
93
|
},
|
|
94
94
|
"engines": {
|
|
95
|
-
"node": ">=20.18.1
|
|
96
|
-
},
|
|
97
|
-
"engines_why": {
|
|
98
|
-
"22.23.1": "ECO-1586: Includes bug https://github.com/nodejs/node/issues/63989 triggering 'Premature close' on node-fetch",
|
|
99
|
-
"24.17.0": "ECO-1586: Includes bug https://github.com/nodejs/node/issues/63989 triggering 'Premature close' on node-fetch"
|
|
95
|
+
"node": ">=20.18.1"
|
|
100
96
|
},
|
|
97
|
+
"engines_why": {},
|
|
101
98
|
"publishConfig": {
|
|
102
99
|
"registry": "https://packages.atlassian.com/api/npm/npm-public/"
|
|
103
100
|
},
|