@optimizely/ocp-cli 1.0.1-beta.0 → 1.0.1
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/commands/directory/Publish.js +16 -13
- package/dist/commands/directory/Publish.js.map +1 -1
- package/dist/commands/directory/Unpublish.js +9 -6
- package/dist/commands/directory/Unpublish.js.map +1 -1
- package/dist/oo-cli.manifest.json +1 -1
- package/package.json +1 -1
- package/src/commands/directory/Publish.ts +18 -14
- package/src/commands/directory/Unpublish.ts +12 -8
|
@@ -26,8 +26,7 @@ const UNPUBLISHABLE_STATES = [AppVersionState.RUNNING, AppVersionState.START_FAI
|
|
|
26
26
|
const PUBLISHABLE_STATES = [
|
|
27
27
|
AppVersionState.NEW,
|
|
28
28
|
AppVersionState.PUBLISHED,
|
|
29
|
-
AppVersionState.START_FAILED
|
|
30
|
-
AppVersionState.STOPPED
|
|
29
|
+
AppVersionState.START_FAILED
|
|
31
30
|
];
|
|
32
31
|
let PublishCommand = class PublishCommand {
|
|
33
32
|
async publish() {
|
|
@@ -38,16 +37,20 @@ let PublishCommand = class PublishCommand {
|
|
|
38
37
|
const [appId, version] = this.appVersion.split('@');
|
|
39
38
|
console.log(chalk.gray(`Publishing ${this.appVersion} to the directory...`));
|
|
40
39
|
try {
|
|
41
|
-
const
|
|
42
|
-
|
|
43
|
-
throw new Error(`AppVersion must be in a publishable state. ` +
|
|
44
|
-
`Currently: ${(0, formatVersionState_1.formatVersionState)(appVersion.state)}`);
|
|
45
|
-
}
|
|
46
|
-
const manifest = JSON.parse(appVersion.manifestJson);
|
|
40
|
+
const primaryAppVersion = await Rivendell_1.Rivendell.fetchAppVersion({ appId, version }, 'us');
|
|
41
|
+
const manifest = JSON.parse(primaryAppVersion.manifestJson);
|
|
47
42
|
const shards = await (0, Shards_1.applicableShards)('', manifest);
|
|
48
|
-
const errors = [];
|
|
49
43
|
for (const shard of shards) {
|
|
50
44
|
try {
|
|
45
|
+
const appVersion = await Rivendell_1.Rivendell.fetchAppVersion({ appId, version }, shard);
|
|
46
|
+
if (appVersion.state === AppVersionState.RUNNING) {
|
|
47
|
+
console.log(chalk.green(`Already published in ${shard}. Skipping...`));
|
|
48
|
+
continue;
|
|
49
|
+
}
|
|
50
|
+
if (!PUBLISHABLE_STATES.includes(appVersion.state)) {
|
|
51
|
+
throw new Error(`AppVersion must be in a publishable state. ` +
|
|
52
|
+
`Currently: ${(0, formatVersionState_1.formatVersionState)(appVersion.state)}`);
|
|
53
|
+
}
|
|
51
54
|
await Rivendell_1.Rivendell.publish(appId, version, shard);
|
|
52
55
|
console.log(chalk.green(`Success. ${this.appVersion} is being published to ${shard}.`));
|
|
53
56
|
const context = { appId, version };
|
|
@@ -56,12 +59,12 @@ let PublishCommand = class PublishCommand {
|
|
|
56
59
|
terminal_kit_1.terminal.removeAllListeners('key');
|
|
57
60
|
}
|
|
58
61
|
catch (error) {
|
|
59
|
-
|
|
62
|
+
console.error(chalk.red(`Error publishing in shard ${shard}: ${(0, formatError_1.formatError)(error)}`));
|
|
63
|
+
if (shards[shards.length - 1] !== shard && !await TerminalConfirm_1.TerminalConfirm.ask('Continue with other shards?')) {
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
60
66
|
}
|
|
61
67
|
}
|
|
62
|
-
if (errors.length) {
|
|
63
|
-
console.error(chalk.red(errors.join('\n')));
|
|
64
|
-
}
|
|
65
68
|
const pre = (0, semver_1.prerelease)(version);
|
|
66
69
|
if (pre && pre[0] !== 'dev') {
|
|
67
70
|
await this.checkOrphanedDeploys(appId, shards);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Publish.js","sourceRoot":"","sources":["../../../src/commands/directory/Publish.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+BAA+B;AAC/B,mCAA6D;AAC7D,+CAAsC;AAEtC,uCAAkC;AAClC,qEAAgE;AAChE,+DAA0D;AAC1D,+DAA0D;AAC1D,mDAA8C;AAC9C,uDAAkD;AAClD,IAAO,eAAe,GAAG,qBAAS,CAAC,eAAe,CAAC;AACnD,6CAAkD;AAElD,mCAA8C;AAC9C,2CAA+C;AAC/C,+DAA4D;AAE5D,MAAM,cAAc,GAAG,CAAC,eAAe,CAAC,YAAY,EAAE,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;AAC5G,MAAM,oBAAoB,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,eAAe,CAAC,YAAY,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;AAClH,MAAM,kBAAkB,GAAG;IACzB,eAAe,CAAC,GAAG;IACnB,eAAe,CAAC,SAAS;IACzB,eAAe,CAAC,YAAY;
|
|
1
|
+
{"version":3,"file":"Publish.js","sourceRoot":"","sources":["../../../src/commands/directory/Publish.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@ var AppVersionState = Rivendell_1.Rivendell.AppVersionState;
|
|
|
19
19
|
var SortDirection = Rivendell_1.Rivendell.SortDirection;
|
|
20
20
|
const formatError_1 = require("../../lib/formatError");
|
|
21
21
|
const Shards_1 = require("../../lib/Shards");
|
|
22
|
+
const TerminalConfirm_1 = require("../../lib/TerminalConfirm");
|
|
22
23
|
const UNPUBLISHABLE_STATES = [AppVersionState.RUNNING, AppVersionState.START_FAILED, AppVersionState.STOP_FAILED];
|
|
23
24
|
let UnpublishCommand = class UnpublishCommand {
|
|
24
25
|
constructor() {
|
|
@@ -33,12 +34,14 @@ let UnpublishCommand = class UnpublishCommand {
|
|
|
33
34
|
try {
|
|
34
35
|
const appVersion = await Rivendell_1.Rivendell.fetchAppVersion({ appId, version }, 'us');
|
|
35
36
|
if (!UNPUBLISHABLE_STATES.includes(appVersion.state)) {
|
|
36
|
-
throw new Error(`AppVersion must be in an unpublishable state. ` +
|
|
37
|
+
throw new Error(`AppVersion must be in an unpublishable state in the primary shard. ` +
|
|
37
38
|
`Currently: ${(0, formatVersionState_1.formatVersionState)(appVersion.state)}`);
|
|
38
39
|
}
|
|
39
40
|
const manifest = JSON.parse(appVersion.manifestJson);
|
|
40
41
|
const shards = await (0, Shards_1.applicableShards)(this.availability, manifest);
|
|
41
|
-
|
|
42
|
+
if (!(await TerminalConfirm_1.TerminalConfirm.ask(chalk.red('Unpublishing is not reversible. Are you sure you want to unpublish? [y/n]')))) {
|
|
43
|
+
(0, die_1.die)('Operation cancelled.');
|
|
44
|
+
}
|
|
42
45
|
for (const shard of shards) {
|
|
43
46
|
if (!(await this.uninstallEverywhere(appId, version, shard))) {
|
|
44
47
|
process.exit();
|
|
@@ -49,12 +52,12 @@ let UnpublishCommand = class UnpublishCommand {
|
|
|
49
52
|
await this.watchForCompletion({ appId, version }, shard);
|
|
50
53
|
}
|
|
51
54
|
catch (error) {
|
|
52
|
-
|
|
55
|
+
console.error(chalk.red(`Error unpublishing in shard ${shard}: ${(0, formatError_1.formatError)(error)}`));
|
|
56
|
+
if (shards[shards.length - 1] !== shard && !await TerminalConfirm_1.TerminalConfirm.ask('Continue with other shards?')) {
|
|
57
|
+
break;
|
|
58
|
+
}
|
|
53
59
|
}
|
|
54
60
|
}
|
|
55
|
-
if (errors.length) {
|
|
56
|
-
console.log(chalk.red(errors.join('\n')));
|
|
57
|
-
}
|
|
58
61
|
}
|
|
59
62
|
catch (e) {
|
|
60
63
|
(0, die_1.die)((0, formatError_1.formatError)(e));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Unpublish.js","sourceRoot":"","sources":["../../../src/commands/directory/Unpublish.ts"],"names":[],"mappings":";;;;;;;;;AAAA,+BAA+B;AAC/B,mCAAqE;AACrE,+CAAsC;AAEtC,uCAAkC;AAClC,qEAAgE;AAChE,+DAA0D;AAC1D,+DAA0D;AAC1D,mDAA8C;AAC9C,IAAO,eAAe,GAAG,qBAAS,CAAC,eAAe,CAAC;AACnD,IAAO,aAAa,GAAG,qBAAS,CAAC,aAAa,CAAC;AAE/C,uDAAkD;AAClD,6CAAkD;
|
|
1
|
+
{"version":3,"file":"Unpublish.js","sourceRoot":"","sources":["../../../src/commands/directory/Unpublish.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -20,8 +20,7 @@ const UNPUBLISHABLE_STATES = [AppVersionState.RUNNING, AppVersionState.START_FAI
|
|
|
20
20
|
const PUBLISHABLE_STATES = [
|
|
21
21
|
AppVersionState.NEW,
|
|
22
22
|
AppVersionState.PUBLISHED,
|
|
23
|
-
AppVersionState.START_FAILED
|
|
24
|
-
AppVersionState.STOPPED
|
|
23
|
+
AppVersionState.START_FAILED
|
|
25
24
|
];
|
|
26
25
|
|
|
27
26
|
@namespace('directory')
|
|
@@ -46,19 +45,24 @@ export class PublishCommand {
|
|
|
46
45
|
console.log(chalk.gray(`Publishing ${this.appVersion} to the directory...`));
|
|
47
46
|
|
|
48
47
|
try {
|
|
49
|
-
const
|
|
48
|
+
const primaryAppVersion = await Rivendell.fetchAppVersion({appId, version}, 'us');
|
|
50
49
|
|
|
51
|
-
|
|
52
|
-
throw new Error(`AppVersion must be in a publishable state. ` +
|
|
53
|
-
`Currently: ${formatVersionState(appVersion.state as AppVersionState)}`);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
const manifest = JSON.parse(appVersion.manifestJson) as AppManifest;
|
|
50
|
+
const manifest = JSON.parse(primaryAppVersion.manifestJson) as AppManifest;
|
|
57
51
|
const shards = await applicableShards('', manifest);
|
|
58
|
-
const errors: string[] = [];
|
|
59
52
|
|
|
60
53
|
for (const shard of shards) {
|
|
61
54
|
try {
|
|
55
|
+
const appVersion = await Rivendell.fetchAppVersion({appId, version}, shard);
|
|
56
|
+
if (appVersion.state as AppVersionState === AppVersionState.RUNNING) {
|
|
57
|
+
console.log(chalk.green(`Already published in ${shard}. Skipping...`));
|
|
58
|
+
continue;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if (!PUBLISHABLE_STATES.includes(appVersion.state as AppVersionState)) {
|
|
62
|
+
throw new Error(`AppVersion must be in a publishable state. ` +
|
|
63
|
+
`Currently: ${formatVersionState(appVersion.state as AppVersionState)}`);
|
|
64
|
+
}
|
|
65
|
+
|
|
62
66
|
await Rivendell.publish(appId, version, shard);
|
|
63
67
|
console.log(chalk.green(`Success. ${this.appVersion} is being published to ${shard}.`));
|
|
64
68
|
const context = {appId, version};
|
|
@@ -66,12 +70,12 @@ export class PublishCommand {
|
|
|
66
70
|
// since we are handling the interrupt, disable the handler so we can exit
|
|
67
71
|
terminal.removeAllListeners('key');
|
|
68
72
|
} catch (error: any) {
|
|
69
|
-
|
|
73
|
+
console.error(chalk.red(`Error publishing in shard ${shard}: ${formatError(error)}`));
|
|
74
|
+
if (shards[shards.length - 1] !== shard && !await TerminalConfirm.ask('Continue with other shards?')) {
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
70
77
|
}
|
|
71
78
|
}
|
|
72
|
-
if (errors.length) {
|
|
73
|
-
console.error(chalk.red(errors.join('\n')));
|
|
74
|
-
}
|
|
75
79
|
|
|
76
80
|
const pre = prerelease(version);
|
|
77
81
|
if (pre && pre[0] !== 'dev') {
|
|
@@ -13,6 +13,7 @@ import AppInstallation = Rivendell.AppInstallation;
|
|
|
13
13
|
import {formatError} from '../../lib/formatError';
|
|
14
14
|
import {applicableShards} from '../../lib/Shards';
|
|
15
15
|
import { AppManifest } from '@zaiusinc/app-sdk';
|
|
16
|
+
import {TerminalConfirm} from '../../lib/TerminalConfirm';
|
|
16
17
|
|
|
17
18
|
const UNPUBLISHABLE_STATES = [AppVersionState.RUNNING, AppVersionState.START_FAILED, AppVersionState.STOP_FAILED];
|
|
18
19
|
|
|
@@ -47,13 +48,18 @@ export class UnpublishCommand {
|
|
|
47
48
|
const appVersion = await Rivendell.fetchAppVersion({appId, version}, 'us');
|
|
48
49
|
|
|
49
50
|
if (!UNPUBLISHABLE_STATES.includes(appVersion.state as AppVersionState)) {
|
|
50
|
-
throw new Error(`AppVersion must be in an unpublishable state. ` +
|
|
51
|
+
throw new Error(`AppVersion must be in an unpublishable state in the primary shard. ` +
|
|
51
52
|
`Currently: ${formatVersionState(appVersion.state as AppVersionState)}`);
|
|
52
53
|
}
|
|
53
54
|
|
|
54
55
|
const manifest = JSON.parse(appVersion.manifestJson) as AppManifest;
|
|
55
56
|
const shards = await applicableShards(this.availability, manifest);
|
|
56
|
-
|
|
57
|
+
|
|
58
|
+
if (!(await TerminalConfirm.ask(
|
|
59
|
+
chalk.red('Unpublishing is not reversible. Are you sure you want to unpublish? [y/n]'))
|
|
60
|
+
)) {
|
|
61
|
+
die('Operation cancelled.');
|
|
62
|
+
}
|
|
57
63
|
|
|
58
64
|
for (const shard of shards) {
|
|
59
65
|
if (!(await this.uninstallEverywhere(appId, version, shard))) {
|
|
@@ -64,14 +70,12 @@ export class UnpublishCommand {
|
|
|
64
70
|
console.log(chalk.green(`${this.appVersion} is being unpublished in ${shard}.`));
|
|
65
71
|
await this.watchForCompletion({appId, version}, shard);
|
|
66
72
|
} catch (error: any) {
|
|
67
|
-
|
|
73
|
+
console.error(chalk.red(`Error unpublishing in shard ${shard}: ${formatError(error)}`));
|
|
74
|
+
if (shards[shards.length - 1] !== shard && !await TerminalConfirm.ask('Continue with other shards?')) {
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
68
77
|
}
|
|
69
78
|
}
|
|
70
|
-
|
|
71
|
-
if (errors.length) {
|
|
72
|
-
console.log(chalk.red(errors.join('\n')));
|
|
73
|
-
}
|
|
74
|
-
|
|
75
79
|
} catch (e: any) {
|
|
76
80
|
die(formatError(e));
|
|
77
81
|
}
|