@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.
Files changed (276) hide show
  1. package/README.md +1 -1
  2. package/dist/apis/codiac-api/gen/client.d.ts +5 -1
  3. package/dist/apis/codiac-api/gen/client.js +12 -0
  4. package/dist/apis/codiac-api/gen/client.js.map +1 -1
  5. package/dist/apis/codiac-api/gen/contracts/types.gen.d.ts +25 -0
  6. package/dist/apis/codiac-api/gen/contracts/types.gen.js.map +1 -1
  7. package/dist/apis/codiac-api/i-client.d.ts +4 -0
  8. package/dist/apis/codiac-api-nats/gen/client.d.ts +4 -0
  9. package/dist/apis/codiac-api-nats/gen/client.js +17 -1
  10. package/dist/apis/codiac-api-nats/gen/client.js.map +1 -1
  11. package/dist/apis/codiac-api-nats/gen/contracts/types.gen.d.ts +25 -0
  12. package/dist/apis/codiac-api-nats/gen/contracts/types.gen.js.map +1 -1
  13. package/dist/apis/codiac-relay/gen/client.d.ts +16 -3
  14. package/dist/apis/codiac-relay/gen/client.js +58 -1
  15. package/dist/apis/codiac-relay/gen/client.js.map +1 -1
  16. package/dist/apis/codiac-relay/gen/contracts/types.gen.d.ts +173 -7
  17. package/dist/apis/codiac-relay/gen/contracts/types.gen.js.map +1 -1
  18. package/dist/apis/codiac-relay/i-client.d.ts +8 -0
  19. package/dist/apis/codiac-relay-nats/gen/client.d.ts +15 -7
  20. package/dist/apis/codiac-relay-nats/gen/client.js +86 -19
  21. package/dist/apis/codiac-relay-nats/gen/client.js.map +1 -1
  22. package/dist/apis/codiac-relay-nats/gen/contracts/types.gen.d.ts +151 -15
  23. package/dist/apis/codiac-relay-nats/gen/contracts/types.gen.js +4 -4
  24. package/dist/apis/codiac-relay-nats/gen/contracts/types.gen.js.map +1 -1
  25. package/dist/apis/codiac-relay-nats/gen/contracts.ng.d.ts +6 -0
  26. package/dist/apis/codiac-relay-nats/gen/contracts.ng.js +1 -0
  27. package/dist/apis/codiac-relay-nats/gen/contracts.ng.js.map +1 -1
  28. package/dist/bootstrapper-for-api-clients.js +14 -2
  29. package/dist/bootstrapper-for-api-clients.js.map +1 -1
  30. package/dist/cli-common/built-in-cli-user-input.d.ts +2 -1
  31. package/dist/cli-common/built-in-cli-user-input.js +52 -1
  32. package/dist/cli-common/built-in-cli-user-input.js.map +1 -1
  33. package/dist/cli-common/entities/prompt-choice.d.ts +2 -7
  34. package/dist/cli-common/mock-ui.d.ts +2 -1
  35. package/dist/cli-common/mock-ui.js +3 -0
  36. package/dist/cli-common/mock-ui.js.map +1 -1
  37. package/dist/codiac-constants.d.ts +3 -0
  38. package/dist/codiac-constants.js +3 -0
  39. package/dist/codiac-constants.js.map +1 -1
  40. package/dist/command-base-enterprise.d.ts +23 -2
  41. package/dist/command-base-enterprise.js +82 -26
  42. package/dist/command-base-enterprise.js.map +1 -1
  43. package/dist/command-base-exec.js +4 -2
  44. package/dist/command-base-exec.js.map +1 -1
  45. package/dist/commands/asset/deploy.d.ts +2 -1
  46. package/dist/commands/asset/deploy.js +3 -2
  47. package/dist/commands/asset/deploy.js.map +1 -1
  48. package/dist/commands/asset/list.d.ts +26 -7
  49. package/dist/commands/asset/list.js +127 -112
  50. package/dist/commands/asset/list.js.map +1 -1
  51. package/dist/commands/asset/probe/create.d.ts +26 -5
  52. package/dist/commands/asset/probe/create.js +182 -164
  53. package/dist/commands/asset/probe/create.js.map +1 -1
  54. package/dist/commands/asset/recycle.js +3 -4
  55. package/dist/commands/asset/recycle.js.map +1 -1
  56. package/dist/commands/asset/undeploy.d.ts +24 -9
  57. package/dist/commands/asset/undeploy.js +162 -161
  58. package/dist/commands/asset/undeploy.js.map +1 -1
  59. package/dist/commands/asset/view.js +1 -1
  60. package/dist/commands/asset/view.js.map +1 -1
  61. package/dist/commands/asset/volume/create.d.ts +24 -13
  62. package/dist/commands/asset/volume/create.js +153 -158
  63. package/dist/commands/asset/volume/create.js.map +1 -1
  64. package/dist/commands/asset/volume/delete.d.ts +21 -7
  65. package/dist/commands/asset/volume/delete.js +107 -101
  66. package/dist/commands/asset/volume/delete.js.map +1 -1
  67. package/dist/commands/asset/volume/list.d.ts +23 -9
  68. package/dist/commands/asset/volume/list.js +74 -54
  69. package/dist/commands/asset/volume/list.js.map +1 -1
  70. package/dist/commands/cabinet/cluster/attach.d.ts +32 -0
  71. package/dist/commands/cabinet/cluster/attach.js +144 -0
  72. package/dist/commands/cabinet/cluster/attach.js.map +1 -0
  73. package/dist/commands/cabinet/create.d.ts +1 -0
  74. package/dist/commands/cabinet/create.js +5 -1
  75. package/dist/commands/cabinet/create.js.map +1 -1
  76. package/dist/commands/cabinet/list.d.ts +27 -6
  77. package/dist/commands/cabinet/list.js +130 -121
  78. package/dist/commands/cabinet/list.js.map +1 -1
  79. package/dist/commands/cabinet/obliterate.d.ts +1 -0
  80. package/dist/commands/cabinet/obliterate.js +5 -1
  81. package/dist/commands/cabinet/obliterate.js.map +1 -1
  82. package/dist/commands/cabinet/restore.d.ts +36 -0
  83. package/dist/commands/cabinet/restore.js +186 -0
  84. package/dist/commands/cabinet/restore.js.map +1 -0
  85. package/dist/commands/cluster/agent/configure.d.ts +47 -0
  86. package/dist/commands/cluster/agent/configure.js +320 -0
  87. package/dist/commands/cluster/agent/configure.js.map +1 -0
  88. package/dist/commands/cluster/agent/install.d.ts +32 -0
  89. package/dist/commands/cluster/agent/install.js +152 -0
  90. package/dist/commands/cluster/agent/install.js.map +1 -0
  91. package/dist/commands/cluster/agent/uninstall.d.ts +29 -0
  92. package/dist/commands/cluster/agent/uninstall.js +130 -0
  93. package/dist/commands/cluster/agent/uninstall.js.map +1 -0
  94. package/dist/commands/cluster/bootstrap.d.ts +50 -0
  95. package/dist/commands/cluster/bootstrap.js +310 -0
  96. package/dist/commands/cluster/bootstrap.js.map +1 -0
  97. package/dist/commands/cluster/connect.d.ts +0 -5
  98. package/dist/commands/cluster/connect.js +1 -26
  99. package/dist/commands/cluster/connect.js.map +1 -1
  100. package/dist/commands/cluster/install.d.ts +45 -0
  101. package/dist/commands/cluster/install.js +224 -0
  102. package/dist/commands/cluster/install.js.map +1 -0
  103. package/dist/commands/cluster/stack/capture.js +0 -2
  104. package/dist/commands/cluster/stack/capture.js.map +1 -1
  105. package/dist/commands/cluster/stack/install.d.ts +40 -0
  106. package/dist/commands/cluster/stack/install.js +196 -0
  107. package/dist/commands/cluster/stack/install.js.map +1 -0
  108. package/dist/commands/cluster/start.d.ts +0 -5
  109. package/dist/commands/cluster/start.js +1 -27
  110. package/dist/commands/cluster/start.js.map +1 -1
  111. package/dist/commands/cluster/stop.d.ts +0 -5
  112. package/dist/commands/cluster/stop.js +1 -27
  113. package/dist/commands/cluster/stop.js.map +1 -1
  114. package/dist/commands/config/add.d.ts +9 -11
  115. package/dist/commands/config/add.js +59 -125
  116. package/dist/commands/config/add.js.map +1 -1
  117. package/dist/commands/config/delete.d.ts +22 -11
  118. package/dist/commands/config/delete.js +28 -83
  119. package/dist/commands/config/delete.js.map +1 -1
  120. package/dist/commands/config/deploy.d.ts +26 -8
  121. package/dist/commands/config/deploy.js +169 -198
  122. package/dist/commands/config/deploy.js.map +1 -1
  123. package/dist/commands/config/import.d.ts +27 -22
  124. package/dist/commands/config/import.js +222 -253
  125. package/dist/commands/config/import.js.map +1 -1
  126. package/dist/commands/config/settings/get.d.ts +25 -14
  127. package/dist/commands/config/settings/get.js +30 -123
  128. package/dist/commands/config/settings/get.js.map +1 -1
  129. package/dist/commands/config/view.d.ts +26 -6
  130. package/dist/commands/config/view.js +112 -95
  131. package/dist/commands/config/view.js.map +1 -1
  132. package/dist/commands/csp/logout.d.ts +23 -6
  133. package/dist/commands/csp/logout.js +86 -63
  134. package/dist/commands/csp/logout.js.map +1 -1
  135. package/dist/commands/deploy.d.ts +31 -14
  136. package/dist/commands/deploy.js +264 -385
  137. package/dist/commands/deploy.js.map +1 -1
  138. package/dist/commands/enterprise/list.d.ts +22 -4
  139. package/dist/commands/enterprise/list.js +97 -67
  140. package/dist/commands/enterprise/list.js.map +1 -1
  141. package/dist/commands/env/add.d.ts +26 -7
  142. package/dist/commands/env/add.js +182 -179
  143. package/dist/commands/env/add.js.map +1 -1
  144. package/dist/commands/environment/cluster/attach.d.ts +1 -0
  145. package/dist/commands/environment/cluster/attach.js +5 -1
  146. package/dist/commands/environment/cluster/attach.js.map +1 -1
  147. package/dist/commands/environment/cluster/detach.d.ts +1 -0
  148. package/dist/commands/environment/cluster/detach.js +5 -1
  149. package/dist/commands/environment/cluster/detach.js.map +1 -1
  150. package/dist/commands/environment/create.d.ts +1 -0
  151. package/dist/commands/environment/create.js +5 -1
  152. package/dist/commands/environment/create.js.map +1 -1
  153. package/dist/commands/environment/delete.d.ts +39 -0
  154. package/dist/commands/environment/delete.js +135 -0
  155. package/dist/commands/environment/delete.js.map +1 -0
  156. package/dist/commands/environment/list.d.ts +28 -9
  157. package/dist/commands/environment/list.js +128 -167
  158. package/dist/commands/environment/list.js.map +1 -1
  159. package/dist/commands/host/map.d.ts +29 -19
  160. package/dist/commands/host/map.js +263 -324
  161. package/dist/commands/host/map.js.map +1 -1
  162. package/dist/commands/imageRegistry/capture.d.ts +12 -11
  163. package/dist/commands/imageRegistry/capture.js +49 -113
  164. package/dist/commands/imageRegistry/capture.js.map +1 -1
  165. package/dist/commands/imageRegistry/forget.d.ts +12 -11
  166. package/dist/commands/imageRegistry/forget.js +53 -114
  167. package/dist/commands/imageRegistry/forget.js.map +1 -1
  168. package/dist/commands/imageRegistry/pullSecret/set.d.ts +21 -11
  169. package/dist/commands/imageRegistry/pullSecret/set.js +184 -278
  170. package/dist/commands/imageRegistry/pullSecret/set.js.map +1 -1
  171. package/dist/commands/imageRegistry/pullSecret/unset.d.ts +19 -11
  172. package/dist/commands/imageRegistry/pullSecret/unset.js +117 -190
  173. package/dist/commands/imageRegistry/pullSecret/unset.js.map +1 -1
  174. package/dist/commands/images/add.d.ts +19 -6
  175. package/dist/commands/images/add.js +63 -53
  176. package/dist/commands/images/add.js.map +1 -1
  177. package/dist/commands/kit/create.d.ts +22 -10
  178. package/dist/commands/kit/create.js +119 -121
  179. package/dist/commands/kit/create.js.map +1 -1
  180. package/dist/commands/logout.d.ts +21 -5
  181. package/dist/commands/logout.js +44 -25
  182. package/dist/commands/logout.js.map +1 -1
  183. package/dist/commands/noc/cluster/create.js +22 -10
  184. package/dist/commands/noc/cluster/create.js.map +1 -1
  185. package/dist/commands/noc/cluster/credentials-set.d.ts +38 -0
  186. package/dist/commands/noc/cluster/credentials-set.js +174 -0
  187. package/dist/commands/noc/cluster/credentials-set.js.map +1 -0
  188. package/dist/commands/noc/cluster/define.d.ts +46 -0
  189. package/dist/commands/noc/cluster/define.js +305 -0
  190. package/dist/commands/noc/cluster/define.js.map +1 -0
  191. package/dist/commands/noc/cluster/deinit.d.ts +22 -5
  192. package/dist/commands/noc/cluster/deinit.js +99 -106
  193. package/dist/commands/noc/cluster/deinit.js.map +1 -1
  194. package/dist/commands/noc/cluster/forget.js +2 -4
  195. package/dist/commands/noc/cluster/forget.js.map +1 -1
  196. package/dist/commands/noc/cluster/grant.d.ts +20 -11
  197. package/dist/commands/noc/cluster/grant.js +94 -132
  198. package/dist/commands/noc/cluster/grant.js.map +1 -1
  199. package/dist/commands/noc/cluster/init.d.ts +25 -7
  200. package/dist/commands/noc/cluster/init.js +121 -133
  201. package/dist/commands/noc/cluster/init.js.map +1 -1
  202. package/dist/commands/noc/cluster/journal.d.ts +0 -5
  203. package/dist/commands/noc/cluster/journal.js +1 -26
  204. package/dist/commands/noc/cluster/journal.js.map +1 -1
  205. package/dist/commands/noc/cluster/list.d.ts +23 -5
  206. package/dist/commands/noc/cluster/list.js +107 -111
  207. package/dist/commands/noc/cluster/list.js.map +1 -1
  208. package/dist/commands/noc/cluster/restore.d.ts +36 -0
  209. package/dist/commands/noc/cluster/restore.js +196 -0
  210. package/dist/commands/noc/cluster/restore.js.map +1 -0
  211. package/dist/commands/portal.d.ts +21 -5
  212. package/dist/commands/portal.js +37 -36
  213. package/dist/commands/portal.js.map +1 -1
  214. package/dist/commands/secretStore/capture.d.ts +13 -11
  215. package/dist/commands/secretStore/capture.js +63 -123
  216. package/dist/commands/secretStore/capture.js.map +1 -1
  217. package/dist/commands/secretStore/forget.d.ts +13 -11
  218. package/dist/commands/secretStore/forget.js +55 -111
  219. package/dist/commands/secretStore/forget.js.map +1 -1
  220. package/dist/commands/shell/init.d.ts +15 -0
  221. package/dist/commands/shell/init.js +96 -0
  222. package/dist/commands/shell/init.js.map +1 -0
  223. package/dist/commands/snapshot/deploy.d.ts +22 -42
  224. package/dist/commands/snapshot/deploy.js +173 -269
  225. package/dist/commands/snapshot/deploy.js.map +1 -1
  226. package/dist/commands/snapshot/list.d.ts +26 -5
  227. package/dist/commands/snapshot/list.js +116 -109
  228. package/dist/commands/snapshot/list.js.map +1 -1
  229. package/dist/commands/tenant/create.d.ts +18 -13
  230. package/dist/commands/tenant/create.js +69 -69
  231. package/dist/commands/tenant/create.js.map +1 -1
  232. package/dist/commands/tenant/switch.d.ts +18 -12
  233. package/dist/commands/tenant/switch.js +65 -59
  234. package/dist/commands/tenant/switch.js.map +1 -1
  235. package/dist/commands/whereami.d.ts +18 -8
  236. package/dist/commands/whereami.js +67 -102
  237. package/dist/commands/whereami.js.map +1 -1
  238. package/dist/commands/whoami.d.ts +19 -3
  239. package/dist/commands/whoami.js +44 -13
  240. package/dist/commands/whoami.js.map +1 -1
  241. package/dist/ops/i-user-input-provider.d.ts +20 -1
  242. package/dist/ops/i-user-input-provider.js.map +1 -1
  243. package/dist/ops/test/mock-ui.d.ts +2 -1
  244. package/dist/ops/test/mock-ui.js +3 -0
  245. package/dist/ops/test/mock-ui.js.map +1 -1
  246. package/dist/ops/throwing-user-input-provider.d.ts +2 -1
  247. package/dist/ops/throwing-user-input-provider.js +3 -0
  248. package/dist/ops/throwing-user-input-provider.js.map +1 -1
  249. package/dist/relay/relay-container.js +1 -1
  250. package/dist/sdk-adapters/other/other-cluster-configurator.d.ts +24 -0
  251. package/dist/sdk-adapters/other/other-cluster-configurator.js +80 -0
  252. package/dist/sdk-adapters/other/other-cluster-configurator.js.map +1 -0
  253. package/dist/sdk-adapters/other/other-login-configurator.d.ts +24 -0
  254. package/dist/sdk-adapters/other/other-login-configurator.js +68 -0
  255. package/dist/sdk-adapters/other/other-login-configurator.js.map +1 -0
  256. package/dist/uilogic/cloud-resource-configurator-factory.js +12 -0
  257. package/dist/uilogic/cloud-resource-configurator-factory.js.map +1 -1
  258. package/dist/uilogic/lrp-watcher-predef.d.ts +2 -1
  259. package/dist/uilogic/lrp-watcher-predef.js +31 -17
  260. package/dist/uilogic/lrp-watcher-predef.js.map +1 -1
  261. package/dist/uilogic/lrp-watcher-utils.d.ts +2 -0
  262. package/dist/uilogic/lrp-watcher-utils.js +2 -0
  263. package/dist/uilogic/lrp-watcher-utils.js.map +1 -1
  264. package/dist/uilogic/rootmap-ui-utils.d.ts +18 -1
  265. package/dist/uilogic/rootmap-ui-utils.js +30 -0
  266. package/dist/uilogic/rootmap-ui-utils.js.map +1 -1
  267. package/dist/uilogic/tenant-contextualizer.js +11 -1
  268. package/dist/uilogic/tenant-contextualizer.js.map +1 -1
  269. package/dist/user-context-loader.d.ts +12 -7
  270. package/dist/user-context-loader.js +89 -43
  271. package/dist/user-context-loader.js.map +1 -1
  272. package/oclif.manifest.json +3984 -1453
  273. package/package.json +2 -2
  274. package/dist/commands/noc/cluster/recreate.d.ts +0 -28
  275. package/dist/commands/noc/cluster/recreate.js +0 -197
  276. package/dist/commands/noc/cluster/recreate.js.map +0 -1
@@ -5,127 +5,129 @@ const tslib_1 = require("tslib");
5
5
  require("reflect-metadata");
6
6
  const core_1 = require("@oclif/core");
7
7
  const _ = require("lodash");
8
- const autocomplete = require("inquirer-autocomplete-prompt");
9
8
  const contracts_1 = require("../../apis/codiac-api/contracts");
10
- const command_base_enterprise_1 = require("../../command-base-enterprise");
9
+ const command_base_exec_1 = require("../../command-base-exec");
11
10
  const codiac_utils_1 = require("../../codiac-utils");
11
+ const config_ui_utils_1 = require("../../uilogic/config-ui-utils");
12
12
  /** The value provided as input that indicates
13
13
  * a user's desire to be prompted with a list from which choose the value(s),
14
14
  * instead of entering them manually or taking a default. */
15
15
  exports.PROMPT_ME_DESIGNATOR = "?";
16
- class ConfigDeploy extends command_base_enterprise_1.CommandBaseEnterprise {
17
- run() {
16
+ class ConfigDeploy extends command_base_exec_1.CommandBaseExec {
17
+ captureArgs() {
18
+ var _a, _b;
18
19
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
19
- return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
20
- var _a;
21
- try {
22
- this.bootstrap();
23
- const { args, flags } = yield this.parse(ConfigDeploy);
24
- (_a = this._relayContainer) === null || _a === void 0 ? void 0 : _a.ready$.subscribe(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
25
- var _b, _c;
26
- try {
27
- this._userCntx = yield this.establishTenantContext(this._userCntx);
28
- let rootMap = yield this.getRootMap();
29
- const interactionMode = this.getInteractionMode(flags.silent, flags.echo, flags['to-script']);
30
- let enterprise = (yield this.establishEnterpriseContext(rootMap, flags.enterpriseCode, interactionMode)).enterprise;
31
- _.remove(rootMap.enterprises, e => e.name != enterprise.name); // trim down to match legacy conditions
32
- let enterpriseCode = enterprise.name;
33
- const isInfrxEnterprise = codiac_utils_1.CodiacUtils.isInfrxEnterprise(enterprise.name);
34
- let entRoot = rootMap.enterprises.find(e => e.name == enterpriseCode); // Assertion operator ok bc we already validated the enterprise a few lines above.
35
- if (entRoot == undefined) {
36
- throw new Error("Enterprise not found.");
37
- }
38
- else if (!entRoot.assets || entRoot.assets.length == 0) {
39
- throw new Error(`The current enterprise [${entRoot.name}] has no assets defined.`);
40
- }
41
- // Select the asset(s) to deploy
42
- let assets;
43
- let assetVersions;
44
- const helmFilter = (a) => { var _a; return ((_a = a.type) === null || _a === void 0 ? void 0 : _a.toString()) != contracts_1.AssetTypesEnum.helm.toString(); };
45
- if (flags.asset == undefined || flags.asset == exports.PROMPT_ME_DESIGNATOR) {
46
- let asset = yield this.promptForAsset(entRoot, undefined, helmFilter);
47
- assets = [asset];
48
- // let selected = await this.promptForVersion(enterpriseCode, asset, flags.version);
49
- assetVersions = [{ a: asset.name }];
50
- }
51
- else if (flags.asset) {
52
- let asset = yield this.promptForAsset(entRoot, flags.asset, helmFilter);
53
- assets = [asset];
54
- // let selected = await this.promptForVersion(enterpriseCode, asset, flags.version);
55
- assetVersions = [{ a: asset.name }];
56
- // if (!flags.version || flags.version == PROMPT_ME_DESIGNATOR) {
57
- // }
58
- }
59
- else {
60
- // -----------------------------------------------------------------
61
- // DEVNOTE: We're skipping this block bc the contextualizer's UI logic is clumsy
62
- // (doesnt filter out the invalids from the select list,
63
- // and then after selection the error feels like entrapment,
64
- // and its err message is wierd).
65
- // -----------------------------------------------------------------
66
- // TODO: Revamp the contextualizers: use a given RootMap, expose means to filter out invalids, react to flags["take-defaults"], render defaulted selection...
67
- // -----------------------------------------------------------------
68
- // Update sync codiac with what we've got here in the project.
69
- let requestedAssets = yield this.establishAssetContext(enterprise, flags.silent);
70
- assets = entRoot.assets.filter(a => requestedAssets.includes(a.name));
71
- if (assets.length == 0)
72
- throw new Error("No assets found with the given name(s).");
73
- assets = assets.filter(a => helmFilter(a));
74
- if (assets.length == 0)
75
- throw new Error("No assets found that qualify for deploying configs."); // <-- consider a non-error condition here
76
- assetVersions = requestedAssets.map(a => { return { a: a }; });
77
- // let versions = await this.declareAssetVersions(requestedAssets, enterpriseCode);
78
- // // We've updated Codiac. Now trigger the deploy.
79
- // assetVersions = requestedAssets.map(a => {
80
- // let version = versions.find(v => v.assetName == a);
81
- // return { a: a, v: version ? version.assetVersion : undefined };
82
- // });
83
- }
84
- // let cabinet = await this.establishCabinet(flags.cabinetName);
85
- const cabinet = yield this.setCabinet(enterprise, rootMap, flags.cabinetName, (_b = this._userCntx.currentEnterprise) === null || _b === void 0 ? void 0 : _b.cabinet, assetVersions.map(a => a.a));
86
- let cabCntx = {
87
- enterprise: cabinet.enterprise,
88
- environment: cabinet.environment,
89
- cabinet: cabinet.name
90
- };
91
- // Get the clusterdef so we can get cloud pvd creds
92
- let cluster = (_c = cabinet.cluster) !== null && _c !== void 0 ? _c : ((rootMap.clusters.length === 1) ? rootMap.clusters[0].name : undefined); // fall back to the one and only.
93
- if (cluster === undefined) {
94
- this.logger.warn(`Cannot confirm cloud provider credentials: cabinet has no cluster specified. Process will rely on cached credentials.`);
95
- // throw new Error(`Cannot determine cloud provider: cabinet has no cluster specified.`);
96
- }
97
- else {
98
- yield this.establishCloudProviderCreds(rootMap, cluster, flags.silent);
99
- }
100
- const target = isInfrxEnterprise ? "cluster ".concat(cabCntx.environment) : cabCntx.environment.concat("/", cabCntx.cabinet);
101
- this._ui.startSpinner("Deploying configs to ".concat(target, "..."));
102
- // const response = await this.relayClient.deployConfigsFor(cabCntx, assetVersions);
103
- const response = yield this.genRelayClient.Call.postExecuteDeployConfigsFor({ destination: cabCntx, assets: assetVersions });
104
- this._ui.stopSpinner("done.");
105
- }
106
- catch (err) {
107
- reject(err);
108
- }
109
- finally {
110
- resolve();
111
- }
112
- }));
113
- }
114
- catch (err) {
115
- this.handleError(err);
116
- resolve();
117
- // reject(err);
118
- }
119
- finally {
120
- yield this.closeConnections();
20
+ const { flags } = yield this.parse(ConfigDeploy);
21
+ let partial = {};
22
+ if (flags.enterpriseCode)
23
+ partial.enterprise = flags.enterpriseCode;
24
+ if (flags.asset)
25
+ partial.assetName = flags.asset;
26
+ if (flags.cabinetName)
27
+ partial.cabinetName = flags.cabinetName;
28
+ 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);
29
+ return [partial, interactionMode, false];
30
+ });
31
+ }
32
+ buildCandidate_silently(partial, rootMap) {
33
+ var _a;
34
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
35
+ if (!partial.cabinetName)
36
+ throw new Error("Cabinet name (--cabinetName or -c) is required in silent mode.");
37
+ if (!partial.assetName)
38
+ throw new Error("Asset name (--asset or -a) is required in silent mode.");
39
+ const entRoot = rootMap.enterprises.find(e => e.name === partial.enterprise);
40
+ if (!entRoot)
41
+ throw new Error(`Enterprise "${partial.enterprise}" not found.`);
42
+ if (!entRoot.assets || entRoot.assets.length === 0)
43
+ throw new Error(`Enterprise "${partial.enterprise}" has no assets.`);
44
+ const helmFilter = (a) => { var _a; return ((_a = a.type) === null || _a === void 0 ? void 0 : _a.toString()) !== contracts_1.AssetTypesEnum.helm.toString(); };
45
+ const asset = entRoot.assets.filter(helmFilter).find(a => a.name === partial.assetName);
46
+ if (!asset)
47
+ throw new Error(`Asset "${partial.assetName}" not found or not eligible for config deploy.`);
48
+ const assetVersions = [{ a: asset.name }];
49
+ let cabinet;
50
+ for (const env of entRoot.environments) {
51
+ const cab = env.cabinets.find(c => c.name === partial.cabinetName);
52
+ if (cab) {
53
+ cabinet = cab;
54
+ break;
121
55
  }
122
- }));
56
+ }
57
+ if (!cabinet)
58
+ throw new Error(`Cabinet "${partial.cabinetName}" not found in enterprise "${partial.enterprise}".`);
59
+ const cabCntx = { enterprise: cabinet.enterprise, environment: cabinet.environment, cabinet: cabinet.name };
60
+ const cluster = (_a = cabinet.cluster) !== null && _a !== void 0 ? _a : (rootMap.clusters.length === 1 ? rootMap.clusters[0].name : undefined);
61
+ if (cluster) {
62
+ yield this.establishCloudProviderCreds(rootMap, cluster, true);
63
+ }
64
+ else {
65
+ this.logger.warn(`Cannot confirm cloud provider credentials: cabinet has no cluster specified.`);
66
+ }
67
+ return { enterprise: partial.enterprise, assetName: partial.assetName, cabinetName: partial.cabinetName, assetVersions, cabinet, cabCntx };
68
+ });
69
+ }
70
+ buildCandidate_interactively(partial, rootMap, takeDefaults) {
71
+ var _a;
72
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
73
+ const entRoot = rootMap.enterprises.find(e => e.name === partial.enterprise);
74
+ if (!entRoot)
75
+ throw new Error(`Enterprise "${partial.enterprise}" not found.`);
76
+ if (!entRoot.assets || entRoot.assets.length === 0)
77
+ throw new Error(`Enterprise "${partial.enterprise}" has no assets.`);
78
+ const helmFilter = (a) => { var _a; return ((_a = a.type) === null || _a === void 0 ? void 0 : _a.toString()) !== contracts_1.AssetTypesEnum.helm.toString(); };
79
+ // Select asset
80
+ let assetVersions;
81
+ if (partial.assetName === undefined || partial.assetName === exports.PROMPT_ME_DESIGNATOR) {
82
+ const asset = yield this.promptForAsset(entRoot, undefined, helmFilter);
83
+ assetVersions = [{ a: asset.name }];
84
+ }
85
+ else {
86
+ const asset = yield this.promptForAsset(entRoot, partial.assetName, helmFilter);
87
+ assetVersions = [{ a: asset.name }];
88
+ }
89
+ // Select cabinet
90
+ const cabinet = yield this.selectCabinet(entRoot, rootMap, partial.cabinetName, undefined, assetVersions.map(a => a.a));
91
+ const cabCntx = { enterprise: cabinet.enterprise, environment: cabinet.environment, cabinet: cabinet.name };
92
+ // CSP credentials
93
+ const cluster = (_a = cabinet.cluster) !== null && _a !== void 0 ? _a : (rootMap.clusters.length === 1 ? rootMap.clusters[0].name : undefined);
94
+ if (cluster) {
95
+ yield this.establishCloudProviderCreds(rootMap, cluster, false);
96
+ }
97
+ else {
98
+ this.logger.warn(`Cannot confirm cloud provider credentials: cabinet has no cluster specified.`);
99
+ }
100
+ return { enterprise: partial.enterprise, assetName: partial.assetName, cabinetName: partial.cabinetName, assetVersions, cabinet, cabCntx };
123
101
  });
124
102
  }
125
- setCabinet(enterprise, rootMap, userProvidedCabinetName, originalDefaultCabinet, assets) {
103
+ buildCommandString(candidate, cmd) {
104
+ cmd.push("-e", candidate.enterprise);
105
+ if (candidate.assetVersions.length > 0)
106
+ cmd.push("-a", candidate.assetVersions[0].a);
107
+ cmd.push("-c", candidate.cabinet.name);
108
+ cmd.push("--silent");
109
+ return cmd;
110
+ }
111
+ executeTask(candidate) {
112
+ var _a;
113
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
114
+ const isInfrxEnterprise = codiac_utils_1.CodiacUtils.isInfrxEnterprise(candidate.enterprise);
115
+ const target = isInfrxEnterprise
116
+ ? "cluster ".concat(candidate.cabCntx.environment)
117
+ : candidate.cabCntx.environment.concat("/", candidate.cabCntx.cabinet);
118
+ yield this._ui.startSpinner("Deploying configs to ".concat(target, "..."));
119
+ const response = yield this.genRelayClient.Call.postExecuteDeployConfigsFor({ destination: candidate.cabCntx, assets: candidate.assetVersions });
120
+ yield this._ui.stopSpinner("done.");
121
+ if (!response.success) {
122
+ if (response.error)
123
+ throw response.error;
124
+ throw new Error((_a = response.message) !== null && _a !== void 0 ? _a : "Config deploy failed.");
125
+ }
126
+ });
127
+ }
128
+ selectCabinet(enterprise, rootMap, userProvidedCabinetName, originalDefaultCabinet, assets) {
126
129
  var _a, _b, _c;
127
130
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
128
- // Embellisher
129
131
  let embellisher;
130
132
  const deployedStateResult = yield this.genRelayClient.Call.getDeployedState({ enterprise: enterprise.name });
131
133
  if (deployedStateResult.output) {
@@ -135,43 +137,37 @@ class ConfigDeploy extends command_base_enterprise_1.CommandBaseEnterprise {
135
137
  else {
136
138
  this.logger.debug("Failed loading deployed state: ".concat((_c = (_a = deployedStateResult.message) !== null && _a !== void 0 ? _a : (_b = deployedStateResult.error) === null || _b === void 0 ? void 0 : _b.message) !== null && _c !== void 0 ? _c : "(check logs for details)"), deployedStateResult.error);
137
139
  }
138
- // Prompt
139
- const [cabinet, enviroName] = yield this.rootMapUtils.promptForCabinet(enterprise.name, rootMap, originalDefaultCabinet, undefined, embellisher, userProvidedCabinetName);
140
+ const [cabinet] = yield this.rootMapUtils.promptForCabinet(enterprise.name, rootMap, originalDefaultCabinet, undefined, embellisher, userProvidedCabinetName);
140
141
  return cabinet;
141
142
  });
142
143
  }
143
144
  createEmbellisherForConfigDeploy(name, deployedState, isInfrxEnterprise, assets) {
144
145
  var _a;
145
- let embellisher;
146
146
  try {
147
- embellisher = {
148
- eachEnterprise: (entBranch, ent, rootMap) => {
149
- // Do nothing
150
- },
151
- eachEnviro: (envBranch, env, ent, rootMap) => {
152
- // Do nothing
153
- },
147
+ return {
148
+ eachEnterprise: (entBranch, ent, rootMap) => { },
149
+ eachEnviro: (envBranch, env, ent, rootMap) => { },
154
150
  eachCabinet: (cabBranch, cab, env, ent, rootMap) => {
155
151
  var _a;
156
- // TODO:
157
- if (((assets == undefined) || _.isEmpty(assets))) {
152
+ if (!assets || _.isEmpty(assets)) {
158
153
  cabBranch.text = this._styler.dim(cabBranch.text);
159
154
  }
160
155
  else {
161
- const envState = deployedState.environmentsAsArray.find(e => e.code == env.code);
162
- const cabState = (_a = envState === null || envState === void 0 ? void 0 : envState.cabinets) === null || _a === void 0 ? void 0 : _a.find(c => c.name == cab.name);
163
- const entVersion = (cabState === null || cabState === void 0 ? void 0 : cabState.version) ? deployedState.enterpriseVersions.find(v => v.version == (cabState === null || cabState === void 0 ? void 0 : cabState.version)) : undefined;
164
- // for navigating contents tree, see: executeTask() in src\commands\cabinet\contents.ts
156
+ const envState = deployedState.environmentsAsArray.find(e => e.code === env.code);
157
+ const cabState = (_a = envState === null || envState === void 0 ? void 0 : envState.cabinets) === null || _a === void 0 ? void 0 : _a.find(c => c.name === cab.name);
158
+ const entVersion = (cabState === null || cabState === void 0 ? void 0 : cabState.version)
159
+ ? deployedState.enterpriseVersions.find(v => v.version === cabState.version)
160
+ : undefined;
165
161
  if (entVersion === null || entVersion === void 0 ? void 0 : entVersion.contents) {
166
162
  const found = this.extractAssetVersions(entVersion, assets);
167
- if (found.length == 0) {
163
+ if (found.length === 0) {
168
164
  cabBranch.text = this._styler.dim(cabBranch.text);
169
165
  }
170
- else if (found.length == 1) {
166
+ else if (found.length === 1) {
171
167
  const av = found[0];
172
168
  cabBranch.text = cabBranch.text.concat(" (", av.a, av.v ? `:${av.v}` : "", ")");
173
169
  }
174
- else if (found.length > 1) {
170
+ else {
175
171
  cabBranch.text = cabBranch.text.concat(" (", found.length.toString(), " assets)");
176
172
  }
177
173
  }
@@ -180,95 +176,70 @@ class ConfigDeploy extends command_base_enterprise_1.CommandBaseEnterprise {
180
176
  };
181
177
  }
182
178
  catch (err) {
183
- this.logger.warn("Error assembling cabinet tree embellisher for config deploy command: ".concat((_a = err.message) !== null && _a !== void 0 ? _a : "(no details provided)"), err);
179
+ this.logger.warn("Error assembling cabinet tree embellisher for config deploy command: ".concat((_a = err.message) !== null && _a !== void 0 ? _a : "(no details)"), err);
180
+ return undefined;
184
181
  }
185
- return embellisher;
186
182
  }
187
- /** Recurses to find the given assets */
188
183
  extractAssetVersions(versionRef, assets) {
189
- var _a;
190
- let found = [];
184
+ const found = [];
191
185
  if (versionRef.contents) {
192
- // assets at this level
193
- const foundHere = (_a = versionRef.contents) === null || _a === void 0 ? void 0 : _a.filter(v => v.entityType == "asset" && assets.includes(v.entityName)).map(v => { return { a: v.entityName, v: v.version }; });
186
+ const foundHere = versionRef.contents
187
+ .filter(v => v.entityType === "asset" && assets.includes(v.entityName))
188
+ .map(v => ({ a: v.entityName, v: v.version }));
194
189
  if (foundHere)
195
190
  found.push(...foundHere);
196
- // Recurse collections of assets
197
- for (let nonAsset of versionRef.contents.filter(v => v.entityType != "asset")) {
198
- const foundUnder = this.extractAssetVersions(nonAsset, assets);
191
+ for (const nonAsset of versionRef.contents.filter(v => v.entityType !== "asset")) {
192
+ found.push(...this.extractAssetVersions(nonAsset, assets));
199
193
  }
200
194
  }
201
195
  return found;
202
196
  }
203
197
  promptForAsset(enterprise, assetName, assetSearch) {
204
- return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
205
- try {
206
- // // let ecrit = new EnterpriseCriteria();
207
- // // ecrit.code = new StringFilter();
208
- // // ecrit.code.$eq = enterprise;
209
- // let ecrit = <EnterpriseCriteria>{ code: enterprise };
210
- // let readResult = await this._codiacApi.Enterprise.tryReadMany(ecrit /* { code: { $eq: enterprise } } */);
211
- // if (!readResult.output || readResult.output.length == 0) {
212
- // throw new Error(`Could not find enterprise [${enterprise}].`);
213
- // } else if (!readResult.output[0].assets || readResult.output[0].assets.length == 0) {
214
- // throw new Error(`The current enterprise [${enterprise}] has no assets defined.`);
215
- // }
216
- if (!enterprise.assets || enterprise.assets.length == 0) {
217
- throw new Error(`The current enterprise [${enterprise.name}] has no assets defined.`);
218
- }
219
- // console.log(`${readResult.output[0].assets.length} assets found`)
220
- // Select from assets in the current enterprise
221
- let assets = enterprise.assets;
222
- let selected;
223
- if (assetName && assetName != exports.PROMPT_ME_DESIGNATOR) {
224
- assets = assets.filter(a => a.name.startsWith(assetName));
225
- if (assets.length == 0) {
226
- throw new Error("No assets found with the given name(s).");
227
- }
228
- }
229
- if (assetSearch) {
230
- assets = assets.filter(a => assetSearch(a));
231
- if (assets.length == 0) {
232
- if (assetName) {
233
- throw new Error("That asset does not qualify for deploying configs.");
234
- }
235
- else {
236
- throw new Error("No assets found that qualify for deploying configs."); // <-- consider a non-error condition here.
237
- }
238
- }
239
- }
240
- if (assets.length == 1) {
241
- selected = assets[0];
242
- this._ui.userMessage("Asset: ".concat(this._styler.hilite(selected.name)));
243
- }
244
- else {
245
- // (Empty condition was already handled above).
246
- // console.log(`${assets.length} assets found`)
247
- // let assSelect = await inquirer.prompt({ type: 'list', name: 'asset', message: 'Select an Asset:', choices: assets.map(a => a.name) });
248
- let assName = yield this._ui.promptSelect('asset', 'Select an Asset:', assets.map(a => { return { name: a.name, value: a.name }; }));
249
- if (!assName)
250
- throw new Error(`User failed to select a valid asset for a config deploy.`);
251
- selected = assets.find(a => a.name == assName); // Assertion ok bc selections originated from this list.
198
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
199
+ if (!enterprise.assets || enterprise.assets.length === 0) {
200
+ throw new Error(`The current enterprise [${enterprise.name}] has no assets defined.`);
201
+ }
202
+ let assets = enterprise.assets;
203
+ if (assetName && assetName !== exports.PROMPT_ME_DESIGNATOR) {
204
+ assets = assets.filter(a => a.name.startsWith(assetName));
205
+ if (assets.length === 0)
206
+ throw new Error("No assets found with the given name(s).");
207
+ }
208
+ if (assetSearch) {
209
+ assets = assets.filter(a => assetSearch(a));
210
+ if (assets.length === 0) {
211
+ throw new Error(assetName ? "That asset does not qualify for deploying configs." : "No assets found that qualify for deploying configs.");
252
212
  }
253
- resolve(selected);
254
213
  }
255
- catch (err) {
256
- reject(err);
214
+ if (assets.length === 1) {
215
+ this._ui.userMessage("Asset: ".concat(this._styler.hilite(assets[0].name)));
216
+ return assets[0];
257
217
  }
258
- }));
218
+ const choices = assets.map(a => ({ name: a.name, value: a.name }));
219
+ const assName = yield this._ui.promptSelectFuzzy('asset', 'Select an Asset:', () => tslib_1.__awaiter(this, void 0, void 0, function* () { return choices; }));
220
+ if (!assName)
221
+ throw new Error(`User failed to select a valid asset for a config deploy.`);
222
+ return assets.find(a => a.name === assName);
223
+ });
259
224
  }
260
225
  }
261
226
  exports.default = ConfigDeploy;
262
- ConfigDeploy.description = 'Deploys a given asset to a given cabinet. Defaults to current version.';
263
- ConfigDeploy.dependsOn = ["enterpriseCode", "cabinetName"];
227
+ ConfigDeploy.description = 'Deploys a given asset config to a given cabinet.';
264
228
  ConfigDeploy.flags = {
265
- // ...commandBase.globalFlags,
266
229
  help: core_1.Flags.help({ char: 'h' }),
267
- enterpriseCode: core_1.Flags.string({ char: 'e', required: false, description: `Code (name) of the enterprise to deploy` }),
268
- cabinetName: core_1.Flags.string({ char: 'c', required: false, description: `Target cabinet name you want deploy` }),
269
- asset: core_1.Flags.string({ char: 'a', required: false, description: `Search string for the name of the asset to deploy (use ${exports.PROMPT_ME_DESIGNATOR} to be prompted).` }),
270
- version: core_1.Flags.string({ char: 'v', required: false, description: `Search string for the version of the asset to deploy (use ${exports.PROMPT_ME_DESIGNATOR} to be prompted).` }),
271
- silent: core_1.Flags.boolean({ char: 'y', dependsOn: ConfigDeploy.dependsOn, required: false, description: `(Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs. Requires: ${ConfigDeploy.dependsOn}` })
230
+ enterpriseCode: core_1.Flags.string({ char: 'e', required: false, description: 'Code name of the enterprise to target.' }),
231
+ cabinetName: core_1.Flags.string({ char: 'c', required: false, description: 'Target cabinet name to deploy configs to.' }),
232
+ asset: core_1.Flags.string({ char: 'a', required: false, description: `Name of the asset to deploy configs for (use ${exports.PROMPT_ME_DESIGNATOR} to be prompted).` }),
233
+ version: core_1.Flags.string({ char: 'v', required: false, description: 'Version of the asset to deploy configs for.' }),
234
+ silent: core_1.Flags.boolean({ exclusive: ["echo", "to-script"], description: 'Executes without any user interaction; fails on missing or invalid arguments.' }),
235
+ echo: core_1.Flags.boolean({ exclusive: ["to-script", "silent"], description: 'Renders the equivalent non-interactive command for future use before executing.' }),
236
+ "to-script": core_1.Flags.boolean({ exclusive: ["echo", "silent"], description: 'Renders the equivalent non-interactive command without executing it.' }),
272
237
  };
273
238
  ConfigDeploy.args = {};
239
+ ConfigDeploy.examples = [
240
+ { description: "Deploy configs interactively.", command: "<%= config.bin %> <%= command.id %>" },
241
+ { description: "Deploy configs for a specific asset.", command: "<%= config.bin %> <%= command.id %> -e myEnterprise -a myApi -c dev" },
242
+ { description: "Non-interactive (scripted) invocation.", command: "<%= config.bin %> <%= command.id %> -e myEnterprise -a myApi -c dev --silent" },
243
+ { description: "Renders the equivalent silent command without executing.", command: "<%= config.bin %> <%= command.id %> -e myEnterprise -a myApi -c dev --to-script" },
244
+ ];
274
245
  //# sourceMappingURL=deploy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/commands/config/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/commands/config/deploy.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
- import { ScopeLevel, ConfigDefTypesEnum } from '../../apis/codiac-api/contracts';
2
- import { Result } from '@codiac.io/codiac-common/contracts';
3
- import { CommandBaseEnterprise } from '../../command-base-enterprise';
1
+ import { Command } from '@oclif/core';
2
+ import { ScopeLevel, ConfigDefTypesEnum, 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';
4
6
  /** The value provided as input that indicates
5
7
  * a user's desire to be prompted with a list from which choose the value(s),
6
8
  * instead of entering them manually or taking a default. */
@@ -9,7 +11,16 @@ export type TargetFileDef = {
9
11
  relativePathName: string;
10
12
  appRootPathInContainer: string;
11
13
  };
12
- export default class ConfigAdd extends CommandBaseEnterprise {
14
+ type ConfigImportRequest = IEnterpriseEntity & {
15
+ enterprise: string;
16
+ assetName: string;
17
+ fqImportFilePath: string;
18
+ configType: ConfigDefTypesEnum;
19
+ runtimeTargetFile?: string;
20
+ scopeLevel: ScopeLevel;
21
+ scopeName: string;
22
+ };
23
+ export default class ConfigImport extends CommandBaseExec<ConfigImportRequest> {
13
24
  static description: string;
14
25
  static aliases: string[];
15
26
  static flags: {
@@ -19,24 +30,18 @@ export default class ConfigAdd extends CommandBaseEnterprise {
19
30
  asset: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
20
31
  cabinet: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
21
32
  sourceFile: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
22
- runtimePathName: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
33
+ "runtime-path": import("@oclif/core/lib/interfaces").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser").CustomOptions>;
34
+ silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
35
+ echo: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
36
+ "to-script": import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
23
37
  };
24
38
  static args: {};
25
- private _appConfig;
26
- run(): Promise<void>;
27
- /**
28
- *
29
- * @param enterprise
30
- * @param assetName
31
- * @param configType
32
- * @param runtimeTargetFile Required only when `ConfigType == ConfigDefTypesEnum.file`
33
- * @param fqImportFilePath Fully Qualified local pathname to the file being imported
34
- * @param scopeLevel
35
- * @param scopeName
36
- * @returns
37
- */
38
- importConfigDoc(fqImportFilePath: string, enterprise: string, assetName: string, configType: ConfigDefTypesEnum, runtimeTargetFile: string | undefined, scopeLevel: ScopeLevel, scopeName: string): Promise<Result>;
39
- writeSetting_Api(enterprise: string, assetName: string, configName: string, setting: string, scopeLevel: ScopeLevel, scopeName: string, val: any): Promise<void>;
40
- writeSetting_local(setting: string, value: any): void;
41
- isNullOrWhitespace(candidate: string): boolean;
39
+ static examples: Command.Example[];
40
+ captureArgs(): Promise<[Partial<ConfigImportRequest>, InteractionModes | undefined, boolean]>;
41
+ buildCandidate_silently(partial: AtLeast<ConfigImportRequest, "enterprise">, rootMap: RootMap): Promise<ConfigImportRequest | undefined>;
42
+ buildCandidate_interactively(partial: AtLeast<ConfigImportRequest, "enterprise">, rootMap: RootMap, takeDefaults: boolean): Promise<ConfigImportRequest | undefined>;
43
+ buildCommandString(candidate: ConfigImportRequest, cmd: string[]): string[];
44
+ executeTask(candidate: ConfigImportRequest): Promise<void>;
45
+ private isNullOrWhitespace;
42
46
  }
47
+ export {};