@codiac.io/codiac-cli 1.3.181 → 1.3.183
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/README.md +1 -1
- package/dist/apis/codiac-api/gen/client.d.ts +5 -1
- package/dist/apis/codiac-api/gen/client.js +12 -0
- package/dist/apis/codiac-api/gen/client.js.map +1 -1
- package/dist/apis/codiac-api/gen/contracts/types.gen.d.ts +25 -0
- package/dist/apis/codiac-api/gen/contracts/types.gen.js.map +1 -1
- package/dist/apis/codiac-api/i-client.d.ts +4 -0
- package/dist/apis/codiac-api-nats/gen/client.d.ts +4 -0
- package/dist/apis/codiac-api-nats/gen/client.js +17 -1
- package/dist/apis/codiac-api-nats/gen/client.js.map +1 -1
- package/dist/apis/codiac-api-nats/gen/contracts/types.gen.d.ts +25 -0
- package/dist/apis/codiac-api-nats/gen/contracts/types.gen.js.map +1 -1
- package/dist/apis/codiac-relay/gen/client.d.ts +16 -3
- package/dist/apis/codiac-relay/gen/client.js +58 -1
- package/dist/apis/codiac-relay/gen/client.js.map +1 -1
- package/dist/apis/codiac-relay/gen/contracts/types.gen.d.ts +173 -7
- package/dist/apis/codiac-relay/gen/contracts/types.gen.js.map +1 -1
- package/dist/apis/codiac-relay/i-client.d.ts +8 -0
- package/dist/apis/codiac-relay-nats/gen/client.d.ts +15 -7
- package/dist/apis/codiac-relay-nats/gen/client.js +86 -19
- package/dist/apis/codiac-relay-nats/gen/client.js.map +1 -1
- package/dist/apis/codiac-relay-nats/gen/contracts/types.gen.d.ts +151 -15
- package/dist/apis/codiac-relay-nats/gen/contracts/types.gen.js +4 -4
- package/dist/apis/codiac-relay-nats/gen/contracts/types.gen.js.map +1 -1
- package/dist/apis/codiac-relay-nats/gen/contracts.ng.d.ts +6 -0
- package/dist/apis/codiac-relay-nats/gen/contracts.ng.js +1 -0
- package/dist/apis/codiac-relay-nats/gen/contracts.ng.js.map +1 -1
- package/dist/bootstrapper-for-api-clients.js +14 -2
- package/dist/bootstrapper-for-api-clients.js.map +1 -1
- package/dist/cli-common/built-in-cli-user-input.d.ts +2 -1
- package/dist/cli-common/built-in-cli-user-input.js +52 -1
- package/dist/cli-common/built-in-cli-user-input.js.map +1 -1
- package/dist/cli-common/entities/prompt-choice.d.ts +2 -7
- package/dist/cli-common/mock-ui.d.ts +2 -1
- package/dist/cli-common/mock-ui.js +3 -0
- package/dist/cli-common/mock-ui.js.map +1 -1
- package/dist/codiac-constants.d.ts +3 -0
- package/dist/codiac-constants.js +3 -0
- package/dist/codiac-constants.js.map +1 -1
- package/dist/command-base-enterprise.d.ts +23 -2
- package/dist/command-base-enterprise.js +82 -26
- package/dist/command-base-enterprise.js.map +1 -1
- package/dist/command-base-exec.js +4 -2
- package/dist/command-base-exec.js.map +1 -1
- package/dist/commands/asset/deploy.d.ts +2 -1
- package/dist/commands/asset/deploy.js +3 -2
- package/dist/commands/asset/deploy.js.map +1 -1
- package/dist/commands/asset/list.d.ts +26 -7
- package/dist/commands/asset/list.js +127 -112
- package/dist/commands/asset/list.js.map +1 -1
- package/dist/commands/asset/probe/create.d.ts +26 -5
- package/dist/commands/asset/probe/create.js +182 -164
- package/dist/commands/asset/probe/create.js.map +1 -1
- package/dist/commands/asset/recycle.js +3 -4
- package/dist/commands/asset/recycle.js.map +1 -1
- package/dist/commands/asset/undeploy.d.ts +24 -9
- package/dist/commands/asset/undeploy.js +162 -161
- package/dist/commands/asset/undeploy.js.map +1 -1
- package/dist/commands/asset/view.js +1 -1
- package/dist/commands/asset/view.js.map +1 -1
- package/dist/commands/asset/volume/create.d.ts +24 -13
- package/dist/commands/asset/volume/create.js +153 -158
- package/dist/commands/asset/volume/create.js.map +1 -1
- package/dist/commands/asset/volume/delete.d.ts +21 -7
- package/dist/commands/asset/volume/delete.js +107 -101
- package/dist/commands/asset/volume/delete.js.map +1 -1
- package/dist/commands/asset/volume/list.d.ts +23 -9
- package/dist/commands/asset/volume/list.js +74 -54
- package/dist/commands/asset/volume/list.js.map +1 -1
- package/dist/commands/cabinet/cluster/attach.d.ts +32 -0
- package/dist/commands/cabinet/cluster/attach.js +144 -0
- package/dist/commands/cabinet/cluster/attach.js.map +1 -0
- package/dist/commands/cabinet/create.d.ts +1 -0
- package/dist/commands/cabinet/create.js +5 -1
- package/dist/commands/cabinet/create.js.map +1 -1
- package/dist/commands/cabinet/list.d.ts +27 -6
- package/dist/commands/cabinet/list.js +130 -121
- package/dist/commands/cabinet/list.js.map +1 -1
- package/dist/commands/cabinet/obliterate.d.ts +1 -0
- package/dist/commands/cabinet/obliterate.js +5 -1
- package/dist/commands/cabinet/obliterate.js.map +1 -1
- package/dist/commands/cabinet/restore.d.ts +36 -0
- package/dist/commands/cabinet/restore.js +186 -0
- package/dist/commands/cabinet/restore.js.map +1 -0
- package/dist/commands/cluster/agent/configure.d.ts +47 -0
- package/dist/commands/cluster/agent/configure.js +320 -0
- package/dist/commands/cluster/agent/configure.js.map +1 -0
- package/dist/commands/cluster/agent/install.d.ts +32 -0
- package/dist/commands/cluster/agent/install.js +152 -0
- package/dist/commands/cluster/agent/install.js.map +1 -0
- package/dist/commands/cluster/agent/uninstall.d.ts +29 -0
- package/dist/commands/cluster/agent/uninstall.js +130 -0
- package/dist/commands/cluster/agent/uninstall.js.map +1 -0
- package/dist/commands/cluster/bootstrap.d.ts +50 -0
- package/dist/commands/cluster/bootstrap.js +310 -0
- package/dist/commands/cluster/bootstrap.js.map +1 -0
- package/dist/commands/cluster/connect.d.ts +0 -5
- package/dist/commands/cluster/connect.js +1 -26
- package/dist/commands/cluster/connect.js.map +1 -1
- package/dist/commands/cluster/install.d.ts +45 -0
- package/dist/commands/cluster/install.js +224 -0
- package/dist/commands/cluster/install.js.map +1 -0
- package/dist/commands/cluster/stack/capture.js +0 -2
- package/dist/commands/cluster/stack/capture.js.map +1 -1
- package/dist/commands/cluster/stack/install.d.ts +40 -0
- package/dist/commands/cluster/stack/install.js +196 -0
- package/dist/commands/cluster/stack/install.js.map +1 -0
- package/dist/commands/cluster/start.d.ts +0 -5
- package/dist/commands/cluster/start.js +1 -27
- package/dist/commands/cluster/start.js.map +1 -1
- package/dist/commands/cluster/stop.d.ts +0 -5
- package/dist/commands/cluster/stop.js +1 -27
- package/dist/commands/cluster/stop.js.map +1 -1
- package/dist/commands/config/add.d.ts +9 -11
- package/dist/commands/config/add.js +59 -125
- package/dist/commands/config/add.js.map +1 -1
- package/dist/commands/config/delete.d.ts +22 -11
- package/dist/commands/config/delete.js +28 -83
- package/dist/commands/config/delete.js.map +1 -1
- package/dist/commands/config/deploy.d.ts +26 -8
- package/dist/commands/config/deploy.js +169 -198
- package/dist/commands/config/deploy.js.map +1 -1
- package/dist/commands/config/import.d.ts +27 -22
- package/dist/commands/config/import.js +222 -253
- package/dist/commands/config/import.js.map +1 -1
- package/dist/commands/config/settings/get.d.ts +25 -14
- package/dist/commands/config/settings/get.js +30 -123
- package/dist/commands/config/settings/get.js.map +1 -1
- package/dist/commands/config/view.d.ts +26 -6
- package/dist/commands/config/view.js +112 -95
- package/dist/commands/config/view.js.map +1 -1
- package/dist/commands/csp/logout.d.ts +23 -6
- package/dist/commands/csp/logout.js +86 -63
- package/dist/commands/csp/logout.js.map +1 -1
- package/dist/commands/deploy.d.ts +31 -14
- package/dist/commands/deploy.js +264 -385
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/enterprise/list.d.ts +22 -4
- package/dist/commands/enterprise/list.js +97 -67
- package/dist/commands/enterprise/list.js.map +1 -1
- package/dist/commands/env/add.d.ts +26 -7
- package/dist/commands/env/add.js +182 -179
- package/dist/commands/env/add.js.map +1 -1
- package/dist/commands/environment/cluster/attach.d.ts +1 -0
- package/dist/commands/environment/cluster/attach.js +5 -1
- package/dist/commands/environment/cluster/attach.js.map +1 -1
- package/dist/commands/environment/cluster/detach.d.ts +1 -0
- package/dist/commands/environment/cluster/detach.js +5 -1
- package/dist/commands/environment/cluster/detach.js.map +1 -1
- package/dist/commands/environment/create.d.ts +1 -0
- package/dist/commands/environment/create.js +5 -1
- package/dist/commands/environment/create.js.map +1 -1
- package/dist/commands/environment/delete.d.ts +39 -0
- package/dist/commands/environment/delete.js +135 -0
- package/dist/commands/environment/delete.js.map +1 -0
- package/dist/commands/environment/list.d.ts +28 -9
- package/dist/commands/environment/list.js +128 -167
- package/dist/commands/environment/list.js.map +1 -1
- package/dist/commands/host/map.d.ts +29 -19
- package/dist/commands/host/map.js +263 -324
- package/dist/commands/host/map.js.map +1 -1
- package/dist/commands/imageRegistry/capture.d.ts +12 -11
- package/dist/commands/imageRegistry/capture.js +49 -113
- package/dist/commands/imageRegistry/capture.js.map +1 -1
- package/dist/commands/imageRegistry/forget.d.ts +12 -11
- package/dist/commands/imageRegistry/forget.js +53 -114
- package/dist/commands/imageRegistry/forget.js.map +1 -1
- package/dist/commands/imageRegistry/pullSecret/set.d.ts +21 -11
- package/dist/commands/imageRegistry/pullSecret/set.js +184 -278
- package/dist/commands/imageRegistry/pullSecret/set.js.map +1 -1
- package/dist/commands/imageRegistry/pullSecret/unset.d.ts +19 -11
- package/dist/commands/imageRegistry/pullSecret/unset.js +117 -190
- package/dist/commands/imageRegistry/pullSecret/unset.js.map +1 -1
- package/dist/commands/images/add.d.ts +19 -6
- package/dist/commands/images/add.js +63 -53
- package/dist/commands/images/add.js.map +1 -1
- package/dist/commands/kit/create.d.ts +22 -10
- package/dist/commands/kit/create.js +119 -121
- package/dist/commands/kit/create.js.map +1 -1
- package/dist/commands/logout.d.ts +21 -5
- package/dist/commands/logout.js +44 -25
- package/dist/commands/logout.js.map +1 -1
- package/dist/commands/noc/cluster/create.js +22 -10
- package/dist/commands/noc/cluster/create.js.map +1 -1
- package/dist/commands/noc/cluster/credentials-set.d.ts +38 -0
- package/dist/commands/noc/cluster/credentials-set.js +174 -0
- package/dist/commands/noc/cluster/credentials-set.js.map +1 -0
- package/dist/commands/noc/cluster/define.d.ts +46 -0
- package/dist/commands/noc/cluster/define.js +305 -0
- package/dist/commands/noc/cluster/define.js.map +1 -0
- package/dist/commands/noc/cluster/deinit.d.ts +22 -5
- package/dist/commands/noc/cluster/deinit.js +99 -106
- package/dist/commands/noc/cluster/deinit.js.map +1 -1
- package/dist/commands/noc/cluster/forget.js +2 -4
- package/dist/commands/noc/cluster/forget.js.map +1 -1
- package/dist/commands/noc/cluster/grant.d.ts +20 -11
- package/dist/commands/noc/cluster/grant.js +94 -132
- package/dist/commands/noc/cluster/grant.js.map +1 -1
- package/dist/commands/noc/cluster/init.d.ts +25 -7
- package/dist/commands/noc/cluster/init.js +121 -133
- package/dist/commands/noc/cluster/init.js.map +1 -1
- package/dist/commands/noc/cluster/journal.d.ts +0 -5
- package/dist/commands/noc/cluster/journal.js +1 -26
- package/dist/commands/noc/cluster/journal.js.map +1 -1
- package/dist/commands/noc/cluster/list.d.ts +23 -5
- package/dist/commands/noc/cluster/list.js +107 -111
- package/dist/commands/noc/cluster/list.js.map +1 -1
- package/dist/commands/noc/cluster/restore.d.ts +36 -0
- package/dist/commands/noc/cluster/restore.js +196 -0
- package/dist/commands/noc/cluster/restore.js.map +1 -0
- package/dist/commands/portal.d.ts +21 -5
- package/dist/commands/portal.js +37 -36
- package/dist/commands/portal.js.map +1 -1
- package/dist/commands/secretStore/capture.d.ts +13 -11
- package/dist/commands/secretStore/capture.js +63 -123
- package/dist/commands/secretStore/capture.js.map +1 -1
- package/dist/commands/secretStore/forget.d.ts +13 -11
- package/dist/commands/secretStore/forget.js +55 -111
- package/dist/commands/secretStore/forget.js.map +1 -1
- package/dist/commands/shell/init.d.ts +15 -0
- package/dist/commands/shell/init.js +96 -0
- package/dist/commands/shell/init.js.map +1 -0
- package/dist/commands/snapshot/deploy.d.ts +22 -42
- package/dist/commands/snapshot/deploy.js +173 -269
- package/dist/commands/snapshot/deploy.js.map +1 -1
- package/dist/commands/snapshot/list.d.ts +26 -5
- package/dist/commands/snapshot/list.js +116 -109
- package/dist/commands/snapshot/list.js.map +1 -1
- package/dist/commands/tenant/create.d.ts +18 -13
- package/dist/commands/tenant/create.js +69 -69
- package/dist/commands/tenant/create.js.map +1 -1
- package/dist/commands/tenant/switch.d.ts +18 -12
- package/dist/commands/tenant/switch.js +65 -59
- package/dist/commands/tenant/switch.js.map +1 -1
- package/dist/commands/whereami.d.ts +18 -8
- package/dist/commands/whereami.js +67 -102
- package/dist/commands/whereami.js.map +1 -1
- package/dist/commands/whoami.d.ts +19 -3
- package/dist/commands/whoami.js +44 -13
- package/dist/commands/whoami.js.map +1 -1
- package/dist/ops/i-user-input-provider.d.ts +20 -1
- package/dist/ops/i-user-input-provider.js.map +1 -1
- package/dist/ops/test/mock-ui.d.ts +2 -1
- package/dist/ops/test/mock-ui.js +3 -0
- package/dist/ops/test/mock-ui.js.map +1 -1
- package/dist/ops/throwing-user-input-provider.d.ts +2 -1
- package/dist/ops/throwing-user-input-provider.js +3 -0
- package/dist/ops/throwing-user-input-provider.js.map +1 -1
- package/dist/relay/relay-container.js +1 -1
- package/dist/sdk-adapters/other/other-cluster-configurator.d.ts +24 -0
- package/dist/sdk-adapters/other/other-cluster-configurator.js +80 -0
- package/dist/sdk-adapters/other/other-cluster-configurator.js.map +1 -0
- package/dist/sdk-adapters/other/other-login-configurator.d.ts +24 -0
- package/dist/sdk-adapters/other/other-login-configurator.js +68 -0
- package/dist/sdk-adapters/other/other-login-configurator.js.map +1 -0
- package/dist/uilogic/cloud-resource-configurator-factory.js +12 -0
- package/dist/uilogic/cloud-resource-configurator-factory.js.map +1 -1
- package/dist/uilogic/lrp-watcher-predef.d.ts +2 -1
- package/dist/uilogic/lrp-watcher-predef.js +31 -17
- package/dist/uilogic/lrp-watcher-predef.js.map +1 -1
- package/dist/uilogic/lrp-watcher-utils.d.ts +2 -0
- package/dist/uilogic/lrp-watcher-utils.js +2 -0
- package/dist/uilogic/lrp-watcher-utils.js.map +1 -1
- package/dist/uilogic/rootmap-ui-utils.d.ts +18 -1
- package/dist/uilogic/rootmap-ui-utils.js +30 -0
- package/dist/uilogic/rootmap-ui-utils.js.map +1 -1
- package/dist/uilogic/tenant-contextualizer.js +11 -1
- package/dist/uilogic/tenant-contextualizer.js.map +1 -1
- package/dist/user-context-loader.d.ts +12 -7
- package/dist/user-context-loader.js +89 -43
- package/dist/user-context-loader.js.map +1 -1
- package/oclif.manifest.json +3984 -1453
- package/package.json +2 -2
- package/dist/commands/noc/cluster/recreate.d.ts +0 -28
- package/dist/commands/noc/cluster/recreate.js +0 -197
- package/dist/commands/noc/cluster/recreate.js.map +0 -1
|
@@ -4,110 +4,109 @@ exports.PROMPT_ME_DESIGNATOR = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const core_1 = require("@oclif/core");
|
|
6
6
|
const _ = require("lodash");
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
// const { selectFiles, COMPLETED, CANCELLED } = require('select-files-cli'); // gd js wo ts...
|
|
10
|
-
// const { selectFiles, COMPLETED, CANCELLED } = require('../../uilogic/file-selector'); // gd js wo ts...
|
|
7
|
+
const command_base_exec_1 = require("../../../command-base-exec");
|
|
8
|
+
const config_ui_utils_1 = require("../../../uilogic/config-ui-utils");
|
|
11
9
|
/** The value provided as input that indicates
|
|
12
10
|
* a user's desire to be prompted with a list from which choose the value(s),
|
|
13
11
|
* instead of entering them manually or taking a default. */
|
|
14
12
|
exports.PROMPT_ME_DESIGNATOR = "?";
|
|
15
|
-
class AssetVolumeDelete extends
|
|
16
|
-
|
|
17
|
-
var _a;
|
|
13
|
+
class AssetVolumeDelete extends command_base_exec_1.CommandBaseExec {
|
|
14
|
+
captureArgs() {
|
|
15
|
+
var _a, _b;
|
|
18
16
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
|
-
this.
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
let rootMap = yield this.getRootMap();
|
|
26
|
-
const interactionMode = this.getInteractionMode(flags.silent, flags.echo, flags['to-script']);
|
|
27
|
-
let enterprise = (yield this.establishEnterpriseContext(rootMap, flags.enterprise, interactionMode)).enterprise;
|
|
28
|
-
_.remove(rootMap.enterprises, e => e.name != enterprise.name); // trim down to match legacy conditions
|
|
29
|
-
let [assetName] = yield this.promptForAsset(enterprise.assets, flags.asset);
|
|
30
|
-
let asset = enterprise.assets.find(a => a.name == assetName);
|
|
31
|
-
if (!asset.reservedFolders || asset.reservedFolders.length == 0) {
|
|
32
|
-
this._ui.userMessage(`Asset [${asset.name}] in enteprise [${enterprise}] has no volume mounts defined.`);
|
|
33
|
-
this._ui.userMessage(`No work was done.`);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
let folderRes;
|
|
37
|
-
// Silent mode (throws if invalid)
|
|
38
|
-
if (flags.silent) {
|
|
39
|
-
if (!flags.name) {
|
|
40
|
-
throw new Error(`No name was provided for the volume mount.`);
|
|
41
|
-
}
|
|
42
|
-
folderRes = (_b = asset.reservedFolders) === null || _b === void 0 ? void 0 : _b.find(f => f.name == flags.name);
|
|
43
|
-
if (!folderRes) {
|
|
44
|
-
throw new Error(`No volume mount named [${flags.name}] is declared in asset [${asset.name}] in enterprise [${asset.enterprise}].`);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
let confirmed = false;
|
|
49
|
-
while (!confirmed || !folderRes) {
|
|
50
|
-
let choices = asset.reservedFolders.map(f => { return { name: `${f.name} (${f.path})`, value: f.name }; });
|
|
51
|
-
let selected = (yield this._ui.promptSelect("mountName", "Choose the volume mount to delete: ", choices, false));
|
|
52
|
-
folderRes = asset.reservedFolders.find(f => f.name == selected); // <--- guaranteed match
|
|
53
|
-
confirmed = yield this._ui.promptConfirm("confirm", `Delete Volume Mount [${this._styler.bold(folderRes.name)} (${folderRes.path})] from Asset [${asset.name}]?`, false);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
let resultPatch = yield this.deleteVolumeMountFromAsset(enterprise.name, asset, folderRes);
|
|
57
|
-
if (resultPatch.success) {
|
|
58
|
-
this.logger.notice(`Successfully deleted volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]`);
|
|
59
|
-
this._ui.userMessage(`Successfully deleted volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]`);
|
|
60
|
-
}
|
|
61
|
-
else if (resultPatch.error) {
|
|
62
|
-
this.logger.error(`Error deleting volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]: ${resultPatch.message || ""}; ${resultPatch.error.message || resultPatch.error.stack}`);
|
|
63
|
-
this._ui.userMessage(`Error deleting volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]: ${resultPatch.message || ""}; ${resultPatch.error.message || resultPatch.error.stack}`);
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
this.logger.warn(`Failed without error to delete volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]: ${resultPatch.message || ""}`);
|
|
67
|
-
this._ui.userMessage(`Failed without error to delete volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]: ${resultPatch.message || ""}`);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
catch (err) {
|
|
72
|
-
this.handleError(err);
|
|
73
|
-
}
|
|
74
|
-
finally {
|
|
75
|
-
yield this.closeConnections();
|
|
76
|
-
return;
|
|
77
|
-
}
|
|
78
|
-
}));
|
|
17
|
+
const { flags } = yield this.parse(AssetVolumeDelete);
|
|
18
|
+
let partial = {};
|
|
19
|
+
if (flags.enterprise)
|
|
20
|
+
partial.enterprise = flags.enterprise;
|
|
21
|
+
const interactionMode = (this.pipedInput) ? config_ui_utils_1.InteractionModes.silent : (_b = (_a = undefined !== null && undefined !== void 0 ? undefined : (flags.echo ? config_ui_utils_1.InteractionModes.echo : undefined)) !== null && _a !== void 0 ? _a : (flags["to-script"] ? config_ui_utils_1.InteractionModes.toscript : undefined)) !== null && _b !== void 0 ? _b : (flags.silent ? config_ui_utils_1.InteractionModes.silent : undefined);
|
|
22
|
+
return [partial, interactionMode, false];
|
|
79
23
|
});
|
|
80
24
|
}
|
|
81
|
-
|
|
25
|
+
buildCandidate_silently(partial, rootMap) {
|
|
26
|
+
var _a, _b, _c;
|
|
82
27
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
}
|
|
110
|
-
|
|
28
|
+
const { flags } = yield this.parse(AssetVolumeDelete);
|
|
29
|
+
if (!flags.name)
|
|
30
|
+
throw new Error(`Volume mount name (--name / -n) is required in silent mode.`);
|
|
31
|
+
const ent = rootMap.enterprises.find(e => e.name === partial.enterprise);
|
|
32
|
+
if (!ent)
|
|
33
|
+
throw new Error(`Enterprise "${partial.enterprise}" not found.`);
|
|
34
|
+
// const aCntx = await this.establishAssetContext(ent, true);
|
|
35
|
+
// const asset = ent.assets.find(a => a.name === aCntx[0]);
|
|
36
|
+
let [assetName] = yield this.promptForAsset(ent.assets, (_a = partial.asset) === null || _a === void 0 ? void 0 : _a.name);
|
|
37
|
+
let asset = ent.assets.find(a => a.name == assetName);
|
|
38
|
+
if (!asset)
|
|
39
|
+
throw new Error(`Asset "${(_c = (_b = partial.asset) === null || _b === void 0 ? void 0 : _b.name) !== null && _c !== void 0 ? _c : ""}" not found.`);
|
|
40
|
+
if (!asset.reservedFolders || asset.reservedFolders.length === 0) {
|
|
41
|
+
this._ui.userMessage(`Asset [${asset.name}] in enterprise [${partial.enterprise}] has no volume mounts defined.`);
|
|
42
|
+
return undefined;
|
|
43
|
+
}
|
|
44
|
+
const folderRes = asset.reservedFolders.find(f => f.name === flags.name);
|
|
45
|
+
if (!folderRes)
|
|
46
|
+
throw new Error(`No volume mount named [${flags.name}] is declared in asset [${asset.name}] in enterprise [${asset.enterprise}].`);
|
|
47
|
+
return { enterprise: partial.enterprise, asset, folderRes };
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
buildCandidate_interactively(partial, rootMap, takeDefaults) {
|
|
51
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
52
|
+
const ent = rootMap.enterprises.find(e => e.name === partial.enterprise);
|
|
53
|
+
if (!ent)
|
|
54
|
+
throw new Error(`Enterprise "${partial.enterprise}" not found.`);
|
|
55
|
+
const aCntx = yield this.establishAssetContext(ent, true);
|
|
56
|
+
const asset = ent.assets.find(a => a.name === aCntx[0]);
|
|
57
|
+
if (!asset)
|
|
58
|
+
throw new Error(`Asset "${aCntx[0]}" not found.`);
|
|
59
|
+
if (!asset.reservedFolders || asset.reservedFolders.length === 0) {
|
|
60
|
+
this._ui.userMessage(`Asset [${asset.name}] in enterprise [${partial.enterprise}] has no volume mounts defined.`);
|
|
61
|
+
this._ui.userMessage(`No work was done.`);
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
let folderRes;
|
|
65
|
+
let confirmed = false;
|
|
66
|
+
while (!confirmed || !folderRes) {
|
|
67
|
+
const choices = asset.reservedFolders.map(f => ({ name: `${f.name} (${f.path})`, value: f.name }));
|
|
68
|
+
const selected = (yield this._ui.promptSelect("mountName", "Choose the volume mount to delete: ", choices, false));
|
|
69
|
+
folderRes = asset.reservedFolders.find(f => f.name === selected);
|
|
70
|
+
confirmed = yield this._ui.promptConfirm("confirm", `Delete Volume Mount [${this._styler.bold(folderRes.name)} (${folderRes.path})] from Asset [${asset.name}]?`, false);
|
|
71
|
+
}
|
|
72
|
+
return { enterprise: partial.enterprise, asset, folderRes };
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
buildCommandString(candidate, cmd) {
|
|
76
|
+
cmd.push("-e", candidate.enterprise);
|
|
77
|
+
cmd.push("-n", candidate.folderRes.name);
|
|
78
|
+
cmd.push("--silent");
|
|
79
|
+
return cmd;
|
|
80
|
+
}
|
|
81
|
+
executeTask(candidate) {
|
|
82
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
const { asset, folderRes } = candidate;
|
|
84
|
+
if (!asset.reservedFolders || asset.reservedFolders.length === 0)
|
|
85
|
+
return;
|
|
86
|
+
_.remove(asset.reservedFolders, f => f.name === folderRes.name);
|
|
87
|
+
if (asset.reservedFolders.length > 0) {
|
|
88
|
+
asset.reservedFolders = _.sortBy(asset.reservedFolders, f => f.path);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
delete asset.reservedFolders;
|
|
92
|
+
}
|
|
93
|
+
this.logger.trace("Asset update", asset);
|
|
94
|
+
const result = yield this._codiacApi.Asset.tryUpdate(asset);
|
|
95
|
+
if (result.success) {
|
|
96
|
+
this.logger.notice(`Successfully deleted volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]`);
|
|
97
|
+
this._ui.userMessage(`Successfully deleted volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]`);
|
|
98
|
+
}
|
|
99
|
+
else if (result.error) {
|
|
100
|
+
this.logger.error(`Error deleting volume mount [${folderRes.name}]: ${result.message || ""}`, result.error);
|
|
101
|
+
this._ui.userMessage(`Error deleting volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]: ${result.message || ""}; ${result.error.message || result.error.stack}`);
|
|
102
|
+
throw result.error;
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
const msg = `Failed without error to delete volume mount [${folderRes.name}]: ${result.message || ""}`;
|
|
106
|
+
this.logger.warn(msg);
|
|
107
|
+
this._ui.userMessage(`Failed without error to delete volume mount [${folderRes.name}] with path [${folderRes.path}] from asset [${asset.enterprise}/${asset.name}]: ${result.message || ""}`);
|
|
108
|
+
throw new Error(msg);
|
|
109
|
+
}
|
|
111
110
|
});
|
|
112
111
|
}
|
|
113
112
|
promptForAsset(assets, current) {
|
|
@@ -138,14 +137,21 @@ class AssetVolumeDelete extends command_base_enterprise_1.CommandBaseEnterprise
|
|
|
138
137
|
}
|
|
139
138
|
}
|
|
140
139
|
exports.default = AssetVolumeDelete;
|
|
141
|
-
AssetVolumeDelete.description = 'Deletes an existing volume mount in the asset';
|
|
140
|
+
AssetVolumeDelete.description = 'Deletes an existing volume mount in the asset.';
|
|
142
141
|
AssetVolumeDelete.aliases = ['asset:vol:delete', 'asset:volumes:delete', 'asset:volume:del', 'asset:vol:del', 'asset:volumes:del'];
|
|
143
|
-
AssetVolumeDelete.dependsOn = ["name"];
|
|
144
142
|
AssetVolumeDelete.flags = {
|
|
145
143
|
help: core_1.Flags.help({ char: 'h' }),
|
|
146
|
-
name: core_1.Flags.string({ char: 'n', required: false, description: "Moniker for identifying, retrieving, and accessing
|
|
144
|
+
name: core_1.Flags.string({ char: 'n', required: false, description: "Moniker for identifying, retrieving, and accessing the folder mapping to delete. Must be unique for the asset." }),
|
|
147
145
|
asset: core_1.Flags.string({ char: 'a', required: false, description: "The name of the asset from which to delete the volume mount." }),
|
|
148
|
-
enterprise: core_1.Flags.string({ char: 'e', description: '
|
|
149
|
-
silent: core_1.Flags.boolean({
|
|
146
|
+
enterprise: core_1.Flags.string({ char: 'e', description: 'The name of the enterprise to which the asset belongs (required only if more than one enterprise exists).' }),
|
|
147
|
+
silent: core_1.Flags.boolean({ exclusive: ["echo", "to-script"], description: 'Executes without any user interaction; fails on missing or invalid arguments.' }),
|
|
148
|
+
echo: core_1.Flags.boolean({ exclusive: ["to-script", "silent"], description: 'Renders the equivalent non-interactive command for future use before executing.' }),
|
|
149
|
+
"to-script": core_1.Flags.boolean({ exclusive: ["echo", "silent"], description: 'Renders the equivalent non-interactive command without executing it.' }),
|
|
150
150
|
};
|
|
151
|
+
AssetVolumeDelete.args = {};
|
|
152
|
+
AssetVolumeDelete.examples = [
|
|
153
|
+
{ description: "Select and delete a volume mount interactively.", command: "<%= config.bin %> <%= command.id %>" },
|
|
154
|
+
{ description: "Delete a named volume mount.", command: "<%= config.bin %> <%= command.id %> -e myEnterprise -n myMount --silent" },
|
|
155
|
+
{ description: "Renders the equivalent silent command without executing.", command: "<%= config.bin %> <%= command.id %> -e myEnterprise -n myMount --to-script" },
|
|
156
|
+
];
|
|
151
157
|
//# sourceMappingURL=delete.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../src/commands/asset/volume/delete.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../src/commands/asset/volume/delete.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,36 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
import { RootMap } from '../../../apis/codiac-api/contracts';
|
|
3
|
+
import { CommandBaseExec, IEnterpriseEntity } from '../../../command-base-exec';
|
|
4
|
+
import { AtLeast } from '@codiac.io/codiac-common/contracts';
|
|
5
|
+
import { InteractionModes } from '../../../uilogic/config-ui-utils';
|
|
6
|
+
type AssetVolumeListRequest = IEnterpriseEntity & {
|
|
7
|
+
enterprise: string;
|
|
8
|
+
reservedFolders: any[];
|
|
9
|
+
assetName: string;
|
|
10
|
+
};
|
|
11
|
+
export default class AssetVolumeList extends CommandBaseExec<AssetVolumeListRequest> {
|
|
7
12
|
static description: string;
|
|
8
13
|
static aliases: string[];
|
|
9
|
-
static dependsOn: string[];
|
|
10
14
|
static flags: {
|
|
11
15
|
help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
|
|
12
|
-
asset: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
13
16
|
enterprise: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
17
|
+
asset: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
14
18
|
name: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
15
19
|
path: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
16
20
|
output: import("@oclif/core/lib/interfaces").OptionFlag<string, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
17
21
|
silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
echo: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
23
|
+
"to-script": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
18
24
|
};
|
|
19
|
-
|
|
25
|
+
static args: {};
|
|
26
|
+
static examples: Command.Example[];
|
|
27
|
+
private _outputFormat;
|
|
28
|
+
captureArgs(): Promise<[Partial<AssetVolumeListRequest>, InteractionModes | undefined, boolean]>;
|
|
29
|
+
buildCandidate_silently(partial: AtLeast<AssetVolumeListRequest, "enterprise">, rootMap: RootMap): Promise<AssetVolumeListRequest | undefined>;
|
|
30
|
+
buildCandidate_interactively(partial: AtLeast<AssetVolumeListRequest, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<AssetVolumeListRequest | undefined>;
|
|
31
|
+
buildCommandString(candidate: AssetVolumeListRequest, cmd: string[]): string[];
|
|
32
|
+
executeTask(candidate: AssetVolumeListRequest): Promise<void>;
|
|
20
33
|
private renderAs;
|
|
21
34
|
private promptForAsset;
|
|
22
35
|
}
|
|
36
|
+
export {};
|
|
@@ -1,73 +1,85 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PROMPT_ME_DESIGNATOR = void 0;
|
|
4
3
|
const tslib_1 = require("tslib");
|
|
5
4
|
const core_1 = require("@oclif/core");
|
|
6
|
-
const _ = require("lodash");
|
|
7
5
|
const YAML = require("yaml");
|
|
8
|
-
const
|
|
6
|
+
const command_base_exec_1 = require("../../../command-base-exec");
|
|
9
7
|
const prettify_1 = require("../../../prettify");
|
|
10
8
|
const output_format_enum_1 = require("../../../cli-entities/output-format-enum");
|
|
11
9
|
const type_safety_utils_1 = require("../../../uilogic/type-safety-utils");
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
10
|
+
const config_ui_utils_1 = require("../../../uilogic/config-ui-utils");
|
|
11
|
+
class AssetVolumeList extends command_base_exec_1.CommandBaseExec {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this._outputFormat = output_format_enum_1.OutputFormatEnum.auto;
|
|
15
|
+
}
|
|
16
|
+
captureArgs() {
|
|
17
|
+
var _a, _b, _c;
|
|
18
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
const { flags } = yield this.parse(AssetVolumeList);
|
|
20
|
+
let partial = {};
|
|
21
|
+
if (flags.enterprise)
|
|
22
|
+
partial.enterprise = flags.enterprise;
|
|
23
|
+
this._outputFormat = (_a = type_safety_utils_1.TypeSafetyUtils.toEnum(output_format_enum_1.OutputFormatEnum, flags.output)) !== null && _a !== void 0 ? _a : output_format_enum_1.OutputFormatEnum.auto;
|
|
24
|
+
const interactionMode = (this.pipedInput) ? config_ui_utils_1.InteractionModes.silent : (_c = (_b = undefined !== null && undefined !== void 0 ? undefined : (flags.echo ? config_ui_utils_1.InteractionModes.echo : undefined)) !== null && _b !== void 0 ? _b : (flags["to-script"] ? config_ui_utils_1.InteractionModes.toscript : undefined)) !== null && _c !== void 0 ? _c : (flags.silent ? config_ui_utils_1.InteractionModes.silent : undefined);
|
|
25
|
+
return [partial, interactionMode, false];
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
buildCandidate_silently(partial, rootMap) {
|
|
20
29
|
var _a;
|
|
21
30
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
31
|
+
const ent = rootMap.enterprises.find(e => e.name === partial.enterprise);
|
|
32
|
+
if (!ent)
|
|
33
|
+
throw new Error(`Enterprise "${partial.enterprise}" not found.`);
|
|
34
|
+
const aCntx = yield this.establishAssetContext(ent, true);
|
|
35
|
+
const asset = ent.assets.find(a => a.name === aCntx[0]);
|
|
36
|
+
if (!asset)
|
|
37
|
+
throw new Error(`Asset "${aCntx[0]}" not found in enterprise "${partial.enterprise}".`);
|
|
38
|
+
return { enterprise: partial.enterprise, reservedFolders: (_a = asset.reservedFolders) !== null && _a !== void 0 ? _a : [], assetName: asset.name };
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
buildCandidate_interactively(partial, rootMap, takeDefaults) {
|
|
42
|
+
var _a;
|
|
43
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
44
|
+
const ent = rootMap.enterprises.find(e => e.name === partial.enterprise);
|
|
45
|
+
if (!ent)
|
|
46
|
+
throw new Error(`Enterprise "${partial.enterprise}" not found.`);
|
|
47
|
+
// const aCntx = await this.establishAssetContext(ent, true);
|
|
48
|
+
// const asset = ent.assets.find(a => a.name === aCntx[0]);
|
|
49
|
+
let [assetName] = yield this.promptForAsset(ent.assets, partial.assetName);
|
|
50
|
+
let asset = ent.assets.find(a => a.name == assetName);
|
|
51
|
+
if (!asset)
|
|
52
|
+
throw new Error(`Asset "${partial.assetName}" not found in enterprise "${partial.enterprise}".`);
|
|
53
|
+
return { enterprise: partial.enterprise, reservedFolders: (_a = asset.reservedFolders) !== null && _a !== void 0 ? _a : [], assetName: asset.name };
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
buildCommandString(candidate, cmd) {
|
|
57
|
+
cmd.push("-e", candidate.enterprise);
|
|
58
|
+
cmd.push("-o", this._outputFormat);
|
|
59
|
+
cmd.push("--silent");
|
|
60
|
+
return cmd;
|
|
61
|
+
}
|
|
62
|
+
executeTask(candidate) {
|
|
63
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
64
|
+
if (candidate.reservedFolders.length > 0) {
|
|
65
|
+
this._ui.userMessage(this.renderAs(candidate.reservedFolders, this._outputFormat));
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
this._ui.userMessage(`No volume mounts defined for asset [${candidate.assetName}] in enterprise [${candidate.enterprise}].`);
|
|
69
|
+
}
|
|
52
70
|
});
|
|
53
71
|
}
|
|
54
72
|
renderAs(object, format) {
|
|
55
|
-
let output = "";
|
|
56
73
|
switch (format) {
|
|
57
74
|
case output_format_enum_1.OutputFormatEnum.json:
|
|
58
|
-
|
|
59
|
-
break;
|
|
75
|
+
return JSON.stringify(object, undefined, 2);
|
|
60
76
|
case output_format_enum_1.OutputFormatEnum.yaml:
|
|
61
|
-
|
|
62
|
-
break;
|
|
77
|
+
return YAML.stringify(object, { indent: 2 });
|
|
63
78
|
case output_format_enum_1.OutputFormatEnum.pretty:
|
|
64
|
-
output = (0, prettify_1.prettify)(object);
|
|
65
|
-
break;
|
|
66
79
|
case output_format_enum_1.OutputFormatEnum.auto:
|
|
67
|
-
|
|
68
|
-
|
|
80
|
+
default:
|
|
81
|
+
return (0, prettify_1.prettify)(object);
|
|
69
82
|
}
|
|
70
|
-
return output;
|
|
71
83
|
}
|
|
72
84
|
promptForAsset(assets, current) {
|
|
73
85
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
@@ -99,14 +111,22 @@ class AssetVolumeList extends command_base_enterprise_1.CommandBaseEnterprise {
|
|
|
99
111
|
exports.default = AssetVolumeList;
|
|
100
112
|
AssetVolumeList.description = 'Renders the currently declared mount paths for the asset.';
|
|
101
113
|
AssetVolumeList.aliases = ['asset:vol:list', 'asset:volumes:list'];
|
|
102
|
-
AssetVolumeList.dependsOn = ["name"];
|
|
103
114
|
AssetVolumeList.flags = {
|
|
104
115
|
help: core_1.Flags.help({ char: 'h' }),
|
|
116
|
+
enterprise: core_1.Flags.string({ char: 'e', description: 'The name of the enterprise to which the asset belongs (required only if more than one enterprise exists).' }),
|
|
105
117
|
asset: core_1.Flags.string({ char: 'a', required: false, description: "The name of the asset whose volumes to list." }),
|
|
106
|
-
enterprise: core_1.Flags.string({ description: '(required only if more than one enterprise exists) The name of the enterprise to which the asset belongs.' }),
|
|
107
118
|
name: core_1.Flags.string({ char: 'n', required: false, description: "Filter volumes within the asset by mount name." }),
|
|
108
119
|
path: core_1.Flags.string({ char: 'p', required: false, description: "Filter volumes within the asset by mount path." }),
|
|
109
120
|
output: core_1.Flags.string({ char: 'o', required: false, default: output_format_enum_1.OutputFormatEnum.auto, options: [output_format_enum_1.OutputFormatEnum.pretty, output_format_enum_1.OutputFormatEnum.json, output_format_enum_1.OutputFormatEnum.yaml, output_format_enum_1.OutputFormatEnum.auto], description: "Output format of the actual settings data document." }),
|
|
110
|
-
silent: core_1.Flags.boolean({
|
|
121
|
+
silent: core_1.Flags.boolean({ exclusive: ["echo", "to-script"], description: 'Executes without any user interaction; fails on missing or invalid arguments.' }),
|
|
122
|
+
echo: core_1.Flags.boolean({ exclusive: ["to-script", "silent"], description: 'Renders the equivalent non-interactive command for future use before executing.' }),
|
|
123
|
+
"to-script": core_1.Flags.boolean({ exclusive: ["echo", "silent"], description: 'Renders the equivalent non-interactive command without executing it.' }),
|
|
111
124
|
};
|
|
125
|
+
AssetVolumeList.args = {};
|
|
126
|
+
AssetVolumeList.examples = [
|
|
127
|
+
{ description: "List all volume mounts for the current asset.", command: "<%= config.bin %> <%= command.id %>" },
|
|
128
|
+
{ description: "List volumes for a specific enterprise asset.", command: "<%= config.bin %> <%= command.id %> -e myEnterprise" },
|
|
129
|
+
{ description: "Export as JSON.", command: "<%= config.bin %> <%= command.id %> -o json" },
|
|
130
|
+
{ description: "Non-interactive (scripted) invocation.", command: "<%= config.bin %> <%= command.id %> -e myEnterprise --silent" },
|
|
131
|
+
];
|
|
112
132
|
//# sourceMappingURL=list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/asset/volume/list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/asset/volume/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
import { RootMap } from '../../../apis/codiac-api/contracts';
|
|
3
|
+
import { CommandBaseExec } from '../../../command-base-exec';
|
|
4
|
+
import { AtLeast } from '@codiac.io/codiac-common/contracts';
|
|
5
|
+
import { InteractionModes } from '../../../uilogic/config-ui-utils';
|
|
6
|
+
export type ICabinetClusterPair = {
|
|
7
|
+
enterprise: string;
|
|
8
|
+
cabinet: string;
|
|
9
|
+
environment: string;
|
|
10
|
+
cluster: string;
|
|
11
|
+
};
|
|
12
|
+
export default class CabinetClusterAttach extends CommandBaseExec<ICabinetClusterPair> {
|
|
13
|
+
static description: string;
|
|
14
|
+
static aliases: string[];
|
|
15
|
+
static examples: Command.Example[];
|
|
16
|
+
static flags: {
|
|
17
|
+
enterprise: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
18
|
+
cabinet: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
19
|
+
environment: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
20
|
+
cluster: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
|
|
21
|
+
silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
echo: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
23
|
+
"to-script": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
24
|
+
"take-defaults": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
|
|
25
|
+
};
|
|
26
|
+
static args: {};
|
|
27
|
+
captureArgs(): Promise<[Partial<ICabinetClusterPair>, InteractionModes | undefined, boolean]>;
|
|
28
|
+
buildCandidate_silently(partial: AtLeast<ICabinetClusterPair, 'enterprise'>, rootMap: RootMap): Promise<ICabinetClusterPair | undefined>;
|
|
29
|
+
buildCandidate_interactively(partial: AtLeast<ICabinetClusterPair, 'enterprise'>, rootMap: RootMap, takeDefaults: boolean): Promise<ICabinetClusterPair | undefined>;
|
|
30
|
+
buildCommandString(candidate: ICabinetClusterPair, cmd: string[]): string[];
|
|
31
|
+
executeTask(candidate: ICabinetClusterPair): Promise<void>;
|
|
32
|
+
}
|