@codiac.io/codiac-cli 1.2.210 → 1.2.211

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 (1267) hide show
  1. package/README.md +4651 -4636
  2. package/bin/dev +16 -16
  3. package/bin/dev.cmd +2 -2
  4. package/bin/run +3 -3
  5. package/bin/run.cmd +3 -3
  6. package/codiac.json +9 -9
  7. package/dist/apis/codiac-api/common/api-client-base.d.ts +165 -165
  8. package/dist/apis/codiac-api/common/api-client-base.js +547 -547
  9. package/dist/apis/codiac-api/common/api-user-creds.d.ts +7 -7
  10. package/dist/apis/codiac-api/common/api-user-creds.js +18 -18
  11. package/dist/apis/codiac-api/common/config-loader.d.ts +6 -6
  12. package/dist/apis/codiac-api/common/config-loader.js +18 -18
  13. package/dist/apis/codiac-api/common/endpoint-spec.d.ts +17 -17
  14. package/dist/apis/codiac-api/common/endpoint-spec.js +27 -27
  15. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +87 -87
  16. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.js +367 -367
  17. package/dist/apis/codiac-api/common/security/auth-constants.d.ts +15 -15
  18. package/dist/apis/codiac-api/common/security/auth-constants.js +21 -21
  19. package/dist/apis/codiac-api/common/security/i-auth-client.d.ts +44 -44
  20. package/dist/apis/codiac-api/common/security/i-auth-client.js +2 -2
  21. package/dist/apis/codiac-api/common/security/token-holder.d.ts +13 -13
  22. package/dist/apis/codiac-api/common/security/token-holder.js +17 -17
  23. package/dist/apis/codiac-api/common/utils.d.ts +23 -23
  24. package/dist/apis/codiac-api/common/utils.js +82 -82
  25. package/dist/apis/codiac-api/contracts/index.d.ts +1 -1
  26. package/dist/apis/codiac-api/contracts/index.js +4 -4
  27. package/dist/apis/codiac-api/gen/client-config.d.ts +10 -10
  28. package/dist/apis/codiac-api/gen/client-config.js +28 -28
  29. package/dist/apis/codiac-api/gen/client.d.ts +1663 -1663
  30. package/dist/apis/codiac-api/gen/client.js +15629 -15629
  31. package/dist/apis/codiac-api/gen/contracts.d.ts +2722 -2722
  32. package/dist/apis/codiac-api/gen/contracts.js +402 -402
  33. package/dist/apis/codiac-api/index.d.ts +3 -3
  34. package/dist/apis/codiac-api/index.js +8 -8
  35. package/dist/apis/codiac-relay/common/api-client-base.d.ts +165 -165
  36. package/dist/apis/codiac-relay/common/api-client-base.js +547 -547
  37. package/dist/apis/codiac-relay/common/api-user-creds.d.ts +7 -7
  38. package/dist/apis/codiac-relay/common/api-user-creds.js +18 -18
  39. package/dist/apis/codiac-relay/common/config-loader.d.ts +6 -6
  40. package/dist/apis/codiac-relay/common/config-loader.js +18 -18
  41. package/dist/apis/codiac-relay/common/endpoint-spec.d.ts +17 -17
  42. package/dist/apis/codiac-relay/common/endpoint-spec.js +27 -27
  43. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +87 -87
  44. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.js +367 -367
  45. package/dist/apis/codiac-relay/common/security/auth-constants.d.ts +15 -15
  46. package/dist/apis/codiac-relay/common/security/auth-constants.js +21 -21
  47. package/dist/apis/codiac-relay/common/security/i-auth-client.d.ts +44 -44
  48. package/dist/apis/codiac-relay/common/security/i-auth-client.js +2 -2
  49. package/dist/apis/codiac-relay/common/security/token-holder.d.ts +13 -13
  50. package/dist/apis/codiac-relay/common/security/token-holder.js +17 -17
  51. package/dist/apis/codiac-relay/common/utils.d.ts +23 -23
  52. package/dist/apis/codiac-relay/common/utils.js +82 -82
  53. package/dist/apis/codiac-relay/contracts/index.d.ts +1 -1
  54. package/dist/apis/codiac-relay/contracts/index.js +4 -4
  55. package/dist/apis/codiac-relay/gen/client-config.d.ts +10 -10
  56. package/dist/apis/codiac-relay/gen/client-config.js +28 -28
  57. package/dist/apis/codiac-relay/gen/client.d.ts +244 -244
  58. package/dist/apis/codiac-relay/gen/client.js +1862 -1862
  59. package/dist/apis/codiac-relay/gen/contracts.d.ts +3113 -3113
  60. package/dist/apis/codiac-relay/gen/contracts.js +434 -434
  61. package/dist/apis/codiac-relay/index.d.ts +3 -3
  62. package/dist/apis/codiac-relay/index.js +8 -8
  63. package/dist/cli-common/ImagesList.js +66 -66
  64. package/dist/cli-common/argument-manager.d.ts +28 -28
  65. package/dist/cli-common/argument-manager.js +194 -194
  66. package/dist/cli-common/built-in-cli-user-input.d.ts +18 -18
  67. package/dist/cli-common/built-in-cli-user-input.js +309 -309
  68. package/dist/cli-common/cli-interfaces.js +6 -6
  69. package/dist/cli-common/command-base.d.ts +72 -72
  70. package/dist/cli-common/command-base.js +182 -182
  71. package/dist/cli-common/entities/index.d.ts +1 -1
  72. package/dist/cli-common/entities/index.js +4 -4
  73. package/dist/cli-common/entities/prompt-choice.d.ts +7 -7
  74. package/dist/cli-common/entities/prompt-choice.js +2 -2
  75. package/dist/cli-common/file-selector.d.ts +48 -48
  76. package/dist/cli-common/file-selector.js +186 -186
  77. package/dist/cli-common/i-user-input-provider.js +18 -18
  78. package/dist/cli-common/index.d.ts +4 -4
  79. package/dist/cli-common/index.js +10 -10
  80. package/dist/cli-common/mock-ui.d.ts +27 -27
  81. package/dist/cli-common/mock-ui.js +82 -82
  82. package/dist/cli-common/prompt-select-fuzzy.d.ts +19 -19
  83. package/dist/cli-common/prompt-select-fuzzy.js +118 -118
  84. package/dist/cli-common/tenant-contextualizer.js +435 -435
  85. package/dist/cli-common/test/tenant-contextualizer.spec.js +142 -142
  86. package/dist/cli-entities/output-format-enum.d.ts +7 -7
  87. package/dist/cli-entities/output-format-enum.js +11 -11
  88. package/dist/cli-entities/prompt-choice.js +5 -5
  89. package/dist/codiac-constants.d.ts +35 -35
  90. package/dist/codiac-constants.js +40 -40
  91. package/dist/codiac-entities/asset-binding.d.ts +12 -12
  92. package/dist/codiac-entities/asset-binding.js +17 -17
  93. package/dist/codiac-entities/azure-container-registry.d.ts +4 -4
  94. package/dist/codiac-entities/azure-container-registry.js +2 -2
  95. package/dist/codiac-entities/azure-service-principal.d.ts +23 -23
  96. package/dist/codiac-entities/azure-service-principal.js +23 -23
  97. package/dist/codiac-entities/cloud-account-ref.d.ts +28 -28
  98. package/dist/codiac-entities/cloud-account-ref.js +36 -36
  99. package/dist/codiac-entities/deployment-temp.js +132 -132
  100. package/dist/codiac-entities/i-cloud-account-ref.d.ts +5 -5
  101. package/dist/codiac-entities/i-cloud-account-ref.js +2 -2
  102. package/dist/command-base-enterprise.d.ts +121 -121
  103. package/dist/command-base-enterprise.js +523 -523
  104. package/dist/command-base-tenantless.d.ts +44 -44
  105. package/dist/command-base-tenantless.js +179 -179
  106. package/dist/commands/asset/create.d.ts +42 -42
  107. package/dist/commands/asset/create.js +475 -475
  108. package/dist/commands/asset/destroy.d.ts +20 -20
  109. package/dist/commands/asset/destroy.js +128 -128
  110. package/dist/commands/asset/helm.d.ts +23 -23
  111. package/dist/commands/asset/helm.js +152 -152
  112. package/dist/commands/asset/list.d.ts +28 -28
  113. package/dist/commands/asset/list.js +171 -171
  114. package/dist/commands/asset/probe/create.d.ts +38 -38
  115. package/dist/commands/asset/probe/create.js +186 -186
  116. package/dist/commands/asset/recycle.d.ts +23 -23
  117. package/dist/commands/asset/recycle.js +174 -174
  118. package/dist/commands/asset/view.d.ts +188 -188
  119. package/dist/commands/asset/view.js +1364 -1364
  120. package/dist/commands/asset/volume/create.d.ts +23 -23
  121. package/dist/commands/asset/volume/create.js +175 -175
  122. package/dist/commands/asset/volume/delete.d.ts +19 -19
  123. package/dist/commands/asset/volume/delete.js +111 -111
  124. package/dist/commands/asset/volume/list.d.ts +19 -19
  125. package/dist/commands/asset/volume/list.js +69 -69
  126. package/dist/commands/branch/current.d.ts +10 -10
  127. package/dist/commands/branch/current.js +33 -33
  128. package/dist/commands/branch/list.d.ts +15 -15
  129. package/dist/commands/branch/list.js +55 -55
  130. package/dist/commands/branch.d.ts +12 -12
  131. package/dist/commands/branch.js +41 -41
  132. package/dist/commands/build.d.ts +38 -38
  133. package/dist/commands/build.js +119 -119
  134. package/dist/commands/cabinet/create.d.ts +21 -21
  135. package/dist/commands/cabinet/create.js +107 -107
  136. package/dist/commands/cabinet/list.d.ts +23 -23
  137. package/dist/commands/cabinet/list.js +133 -133
  138. package/dist/commands/cabinet/obliterate.d.ts +20 -20
  139. package/dist/commands/cabinet/obliterate.js +82 -82
  140. package/dist/commands/cli.d.ts +10 -10
  141. package/dist/commands/cli.js +99 -99
  142. package/dist/commands/commit.d.ts +11 -11
  143. package/dist/commands/commit.js +39 -39
  144. package/dist/commands/config/add.d.ts +78 -78
  145. package/dist/commands/config/add.js +559 -559
  146. package/dist/commands/config/delete.d.ts +18 -18
  147. package/dist/commands/config/delete.js +118 -118
  148. package/dist/commands/config/deploy.d.ts +22 -22
  149. package/dist/commands/config/deploy.js +124 -124
  150. package/dist/commands/config/import.d.ts +27 -27
  151. package/dist/commands/config/import.js +195 -195
  152. package/dist/commands/config/view.d.ts +25 -25
  153. package/dist/commands/config/view.js +120 -120
  154. package/dist/commands/csp/login.d.ts +18 -18
  155. package/dist/commands/csp/login.js +122 -122
  156. package/dist/commands/csp/logout.d.ts +15 -15
  157. package/dist/commands/csp/logout.js +73 -73
  158. package/dist/commands/dep/create.d.ts +13 -13
  159. package/dist/commands/dep/create.js +40 -40
  160. package/dist/commands/dep/install.d.ts +9 -9
  161. package/dist/commands/dep/install.js +29 -29
  162. package/dist/commands/dep/list.d.ts +55 -55
  163. package/dist/commands/dep/list.js +97 -97
  164. package/dist/commands/dep/remove.d.ts +12 -12
  165. package/dist/commands/dep/remove.js +61 -61
  166. package/dist/commands/dep/source.d.ts +13 -13
  167. package/dist/commands/dep/source.js +82 -82
  168. package/dist/commands/dep/syncup.d.ts +11 -11
  169. package/dist/commands/dep/syncup.js +53 -53
  170. package/dist/commands/dep/unsource.d.ts +14 -14
  171. package/dist/commands/dep/unsource.js +67 -67
  172. package/dist/commands/dep/upgrade.d.ts +44 -44
  173. package/dist/commands/dep/upgrade.js +243 -243
  174. package/dist/commands/dep.d.ts +12 -12
  175. package/dist/commands/dep.js +50 -50
  176. package/dist/commands/deploy.d.ts +38 -38
  177. package/dist/commands/deploy.js +385 -385
  178. package/dist/commands/enterprise/create.d.ts +20 -20
  179. package/dist/commands/enterprise/create.js +97 -97
  180. package/dist/commands/enterprise/list.d.ts +14 -14
  181. package/dist/commands/enterprise/list.js +83 -83
  182. package/dist/commands/env/add.d.ts +22 -22
  183. package/dist/commands/env/add.js +199 -199
  184. package/dist/commands/environment/create.d.ts +19 -19
  185. package/dist/commands/environment/create.js +88 -88
  186. package/dist/commands/environment/list.d.ts +25 -25
  187. package/dist/commands/environment/list.js +157 -157
  188. package/dist/commands/filestore/capture.d.ts +31 -31
  189. package/dist/commands/filestore/capture.js +341 -341
  190. package/dist/commands/host/map.d.ts +33 -33
  191. package/dist/commands/host/map.js +346 -346
  192. package/dist/commands/identity/delete.d.ts +15 -15
  193. package/dist/commands/identity/delete.js +82 -82
  194. package/dist/commands/identity/list.d.ts +11 -11
  195. package/dist/commands/identity/list.js +42 -42
  196. package/dist/commands/identity.d.ts +22 -22
  197. package/dist/commands/identity.js +76 -76
  198. package/dist/commands/imageRegistry/capture.d.ts +27 -27
  199. package/dist/commands/imageRegistry/capture.js +159 -159
  200. package/dist/commands/imageRegistry/forget.d.ts +23 -23
  201. package/dist/commands/imageRegistry/forget.js +160 -160
  202. package/dist/commands/imageRegistry/pullSecret/set.d.ts +27 -27
  203. package/dist/commands/imageRegistry/pullSecret/set.js +299 -299
  204. package/dist/commands/imageRegistry/pullSecret/unset.d.ts +24 -24
  205. package/dist/commands/imageRegistry/pullSecret/unset.js +242 -242
  206. package/dist/commands/images/add.d.ts +25 -25
  207. package/dist/commands/images/add.js +75 -75
  208. package/dist/commands/images/list.d.ts +14 -14
  209. package/dist/commands/images/list.js +71 -71
  210. package/dist/commands/images/patch.d.ts +14 -14
  211. package/dist/commands/images/patch.js +92 -92
  212. package/dist/commands/images/remove.d.ts +12 -12
  213. package/dist/commands/images/remove.js +37 -37
  214. package/dist/commands/images/version/bump.d.ts +18 -18
  215. package/dist/commands/images/version/bump.js +60 -60
  216. package/dist/commands/images/version.d.ts +16 -16
  217. package/dist/commands/images/version.js +64 -64
  218. package/dist/commands/init.d.ts +17 -17
  219. package/dist/commands/init.js +130 -130
  220. package/dist/commands/kit/create.d.ts +25 -25
  221. package/dist/commands/kit/create.js +141 -141
  222. package/dist/commands/login.d.ts +22 -22
  223. package/dist/commands/login.js +92 -92
  224. package/dist/commands/logout.d.ts +8 -8
  225. package/dist/commands/logout.js +36 -36
  226. package/dist/commands/merge.d.ts +12 -12
  227. package/dist/commands/merge.js +42 -42
  228. package/dist/commands/noc/cluster/create.d.ts +28 -28
  229. package/dist/commands/noc/cluster/create.js +132 -132
  230. package/dist/commands/noc/cluster/deinit.d.ts +17 -17
  231. package/dist/commands/noc/cluster/deinit.js +116 -116
  232. package/dist/commands/noc/cluster/destroy.d.ts +20 -20
  233. package/dist/commands/noc/cluster/destroy.js +137 -137
  234. package/dist/commands/noc/cluster/forget.d.ts +16 -16
  235. package/dist/commands/noc/cluster/forget.js +136 -136
  236. package/dist/commands/noc/cluster/grant.d.ts +24 -24
  237. package/dist/commands/noc/cluster/grant.js +159 -159
  238. package/dist/commands/noc/cluster/init.d.ts +17 -17
  239. package/dist/commands/noc/cluster/init.js +116 -116
  240. package/dist/commands/noc/cluster/list.d.ts +21 -21
  241. package/dist/commands/noc/cluster/list.js +83 -83
  242. package/dist/commands/noc/cluster/recreate.d.ts +28 -28
  243. package/dist/commands/noc/cluster/recreate.js +185 -185
  244. package/dist/commands/pkg/add.d.ts +15 -15
  245. package/dist/commands/pkg/add.js +42 -42
  246. package/dist/commands/pkg/list.d.ts +9 -9
  247. package/dist/commands/pkg/list.js +32 -32
  248. package/dist/commands/pkg/patch.d.ts +13 -13
  249. package/dist/commands/pkg/patch.js +78 -78
  250. package/dist/commands/pkg/remove.d.ts +12 -12
  251. package/dist/commands/pkg/remove.js +69 -69
  252. package/dist/commands/portal.d.ts +11 -11
  253. package/dist/commands/portal.js +81 -81
  254. package/dist/commands/publish.d.ts +21 -21
  255. package/dist/commands/publish.js +51 -51
  256. package/dist/commands/pull.d.ts +13 -13
  257. package/dist/commands/pull.js +29 -29
  258. package/dist/commands/push.d.ts +13 -13
  259. package/dist/commands/push.js +29 -29
  260. package/dist/commands/run.d.ts +35 -35
  261. package/dist/commands/run.js +193 -193
  262. package/dist/commands/secretStore/capture.d.ts +27 -27
  263. package/dist/commands/secretStore/capture.js +174 -174
  264. package/dist/commands/secretStore/forget.d.ts +20 -20
  265. package/dist/commands/secretStore/forget.js +146 -146
  266. package/dist/commands/stage.d.ts +13 -13
  267. package/dist/commands/stage.js +64 -64
  268. package/dist/commands/stash.d.ts +13 -13
  269. package/dist/commands/stash.js +30 -30
  270. package/dist/commands/status.d.ts +12 -12
  271. package/dist/commands/status.js +48 -48
  272. package/dist/commands/stop.d.ts +10 -10
  273. package/dist/commands/stop.js +51 -51
  274. package/dist/commands/switch.d.ts +11 -11
  275. package/dist/commands/switch.js +41 -41
  276. package/dist/commands/sync.d.ts +14 -14
  277. package/dist/commands/sync.js +20 -20
  278. package/dist/commands/tenant/create.d.ts +27 -27
  279. package/dist/commands/tenant/create.js +119 -119
  280. package/dist/commands/tenant/switch.d.ts +24 -24
  281. package/dist/commands/tenant/switch.js +108 -108
  282. package/dist/commands/unstage.d.ts +12 -12
  283. package/dist/commands/unstage.js +57 -57
  284. package/dist/commands/whereami.d.ts +15 -15
  285. package/dist/commands/whereami.js +122 -122
  286. package/dist/commands/whoami.d.ts +8 -8
  287. package/dist/commands/whoami.js +39 -39
  288. package/dist/errors/NoMembershipError.d.ts +8 -8
  289. package/dist/errors/NoMembershipError.js +14 -14
  290. package/dist/index.d.ts +1 -1
  291. package/dist/index.js +16 -16
  292. package/dist/log-update-wrapper.d.ts +24 -24
  293. package/dist/log-update-wrapper.js +28 -28
  294. package/dist/log4js-logger.d.ts +26 -26
  295. package/dist/log4js-logger.js +137 -137
  296. package/dist/ops/INTERFACES_CLI.d.ts +3 -3
  297. package/dist/ops/INTERFACES_CLI.js +7 -7
  298. package/dist/ops/LocalOps.d.ts +417 -417
  299. package/dist/ops/LocalOps.js +3121 -3121
  300. package/dist/ops/azure-container-registry-client/azure-container-registry-client.js +147 -147
  301. package/dist/ops/cli-path-walker.js +54 -54
  302. package/dist/ops/codiac-entities/dependency.d.ts +5 -5
  303. package/dist/ops/codiac-entities/dependency.js +10 -10
  304. package/dist/ops/codiac-entities/index.d.ts +1 -1
  305. package/dist/ops/codiac-entities/index.js +4 -4
  306. package/dist/ops/composite-image-registry-client.js +73 -73
  307. package/dist/ops/data/cli-context-repo.d.ts +61 -61
  308. package/dist/ops/data/cli-context-repo.js +269 -269
  309. package/dist/ops/data/index.d.ts +2 -2
  310. package/dist/ops/data/index.js +5 -5
  311. package/dist/ops/data/npm-config-repo.d.ts +13 -13
  312. package/dist/ops/data/npm-config-repo.js +64 -64
  313. package/dist/ops/docker-config.js +130 -130
  314. package/dist/ops/docker-constants.js +21 -21
  315. package/dist/ops/docker-credentials-store.js +237 -237
  316. package/dist/ops/docker-registry-api-client/docker-registry-api-client.js +288 -288
  317. package/dist/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -7
  318. package/dist/ops/docker-registry-api-client/entities/blob-sum.js +12 -12
  319. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -5
  320. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +9 -9
  321. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -30
  322. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +35 -35
  323. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -55
  324. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.js +51 -51
  325. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -7
  326. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.js +2 -2
  327. package/dist/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -31
  328. package/dist/ops/docker-registry-api-client/entities/image-repository.js +29 -29
  329. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -8
  330. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.js +13 -13
  331. package/dist/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -7
  332. package/dist/ops/docker-registry-api-client/entities/image-tag-list.js +12 -12
  333. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -9
  334. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.js +14 -14
  335. package/dist/ops/docker-registry-api-client/entities/manifest.d.ts +15 -15
  336. package/dist/ops/docker-registry-api-client/entities/manifest.js +20 -20
  337. package/dist/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -16
  338. package/dist/ops/docker-registry-api-client/entities/repository-criteria.js +23 -23
  339. package/dist/ops/docker-registry-api-client/entities/token-response.d.ts +15 -15
  340. package/dist/ops/docker-registry-api-client/entities/token-response.js +14 -14
  341. package/dist/ops/docker-registry-api-client/entities/token.d.ts +17 -17
  342. package/dist/ops/docker-registry-api-client/entities/token.js +21 -21
  343. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -4
  344. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.js +9 -9
  345. package/dist/ops/dx-constants.d.ts +26 -26
  346. package/dist/ops/dx-constants.js +42 -42
  347. package/dist/ops/entities/ImageBuildContext.d.ts +12 -12
  348. package/dist/ops/entities/ImageBuildContext.js +18 -18
  349. package/dist/ops/entities/PipelineContext.d.ts +21 -21
  350. package/dist/ops/entities/PipelineContext.js +22 -22
  351. package/dist/ops/entities/TenantContext.d.ts +10 -10
  352. package/dist/ops/entities/TenantContext.js +15 -15
  353. package/dist/ops/entities/ThaulConfig.js +29 -29
  354. package/dist/ops/entities/azure-service-principal.d.ts +23 -23
  355. package/dist/ops/entities/azure-service-principal.js +23 -23
  356. package/dist/ops/entities/better-logger.js +1 -1
  357. package/dist/ops/entities/branch.d.ts +13 -13
  358. package/dist/ops/entities/branch.js +15 -15
  359. package/dist/ops/entities/cli-config.d.ts +48 -48
  360. package/dist/ops/entities/cli-config.js +60 -60
  361. package/dist/ops/entities/docker-image.d.ts +60 -60
  362. package/dist/ops/entities/docker-image.js +2 -2
  363. package/dist/ops/entities/helm-spec.d.ts +15 -15
  364. package/dist/ops/entities/helm-spec.js +22 -22
  365. package/dist/ops/entities/index.d.ts +4 -4
  366. package/dist/ops/entities/index.js +11 -11
  367. package/dist/ops/entities/operation-meta.d.ts +8 -8
  368. package/dist/ops/entities/operation-meta.js +18 -18
  369. package/dist/ops/entities/scaffolding.d.ts +19 -19
  370. package/dist/ops/entities/scaffolding.js +20 -20
  371. package/dist/ops/extensions/azart-identity-adapter.d.ts +19 -19
  372. package/dist/ops/extensions/azart-identity-adapter.js +96 -96
  373. package/dist/ops/extensions/npm-identity-adapter-base.d.ts +13 -13
  374. package/dist/ops/extensions/npm-identity-adapter-base.js +2 -2
  375. package/dist/ops/extensions/npmjs-identity-adapter.d.ts +13 -13
  376. package/dist/ops/extensions/npmjs-identity-adapter.js +63 -63
  377. package/dist/ops/git-ops.d.ts +8 -8
  378. package/dist/ops/git-ops.js +13 -13
  379. package/dist/ops/i-client-for-image-registry.js +16 -16
  380. package/dist/ops/i-identity-handler.d.ts +33 -33
  381. package/dist/ops/i-identity-handler.js +164 -164
  382. package/dist/ops/i-output-styler.js +16 -16
  383. package/dist/ops/index.d.ts +12 -12
  384. package/dist/ops/index.js +14 -14
  385. package/dist/ops/json-utils.js +58 -58
  386. package/dist/ops/no-style-output-styler.js +29 -29
  387. package/dist/ops/oauth2-client.ts/oauth2-client.d.ts +23 -23
  388. package/dist/ops/oauth2-client.ts/oauth2-client.js +63 -63
  389. package/dist/ops/project-initializer.d.ts +36 -36
  390. package/dist/ops/project-initializer.js +218 -218
  391. package/dist/ops/scaffolding/base-scaffolding.d.ts +7 -7
  392. package/dist/ops/scaffolding/base-scaffolding.js +20 -20
  393. package/dist/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -7
  394. package/dist/ops/scaffolding/codiac-api-scaffolding.js +63 -63
  395. package/dist/ops/scaffolding/typescript-scaffolding.d.ts +15 -15
  396. package/dist/ops/scaffolding/typescript-scaffolding.js +162 -162
  397. package/dist/ops/test/mock-ui.d.ts +26 -26
  398. package/dist/ops/test/mock-ui.js +87 -87
  399. package/dist/ops/test/test-extensions.d.ts +13 -13
  400. package/dist/ops/test/test-extensions.js +70 -70
  401. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -2
  402. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.js +54 -54
  403. package/dist/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -2
  404. package/dist/ops/test/when-git-branchline-is-attempted.spec.js +37 -37
  405. package/dist/ops/test/when-versions-are-parsed.spec.d.ts +2 -2
  406. package/dist/ops/test/when-versions-are-parsed.spec.js +61 -61
  407. package/dist/ops/throwing-user-input-provider.js +36 -36
  408. package/dist/ops/workspace-versioner.d.ts +122 -122
  409. package/dist/ops/workspace-versioner.js +291 -291
  410. package/dist/prettify.d.ts +7 -7
  411. package/dist/prettify.js +23 -23
  412. package/dist/read-stdin.d.ts +2 -2
  413. package/dist/read-stdin.js +28 -28
  414. package/dist/relay/contracts/contracts.d.ts +207 -207
  415. package/dist/relay/contracts/contracts.js +229 -229
  416. package/dist/relay/extended-relay-client.d.ts +27 -27
  417. package/dist/relay/extended-relay-client.js +27 -27
  418. package/dist/relay/relay-container.d.ts +41 -41
  419. package/dist/relay/relay-container.js +297 -297
  420. package/dist/relay/wsclient/relay-socket-listener.d.ts +68 -68
  421. package/dist/relay/wsclient/relay-socket-listener.js +164 -164
  422. package/dist/relay/wsclient/relay-websocket-client.d.ts +33 -33
  423. package/dist/relay/wsclient/relay-websocket-client.js +178 -178
  424. package/dist/relay/wsclient/rx-websocket-subject.d.ts +25 -25
  425. package/dist/relay/wsclient/rx-websocket-subject.js +133 -133
  426. package/dist/relay/wsclient/socket-contracts.d.ts +22 -22
  427. package/dist/relay/wsclient/socket-contracts.js +2 -2
  428. package/dist/standard-probes.d.ts +5 -5
  429. package/dist/standard-probes.js +21 -21
  430. package/dist/uilogic/build-configurator.d.ts +21 -21
  431. package/dist/uilogic/build-configurator.js +110 -110
  432. package/dist/uilogic/cloud-provider-contextualizer.d.ts +46 -46
  433. package/dist/uilogic/cloud-provider-contextualizer.js +193 -193
  434. package/dist/uilogic/cloud-resource-configurator-factory.d.ts +41 -41
  435. package/dist/uilogic/cloud-resource-configurator-factory.js +157 -157
  436. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +38 -38
  437. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js +347 -347
  438. package/dist/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +77 -77
  439. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +42 -42
  440. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +247 -247
  441. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +110 -110
  442. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js +781 -781
  443. package/dist/uilogic/cloud-resource-configurators/azure-types.js +9 -9
  444. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +24 -24
  445. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +105 -105
  446. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +16 -16
  447. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js +44 -44
  448. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +18 -18
  449. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +61 -61
  450. package/dist/uilogic/enterprise-contextualizer.d.ts +76 -76
  451. package/dist/uilogic/enterprise-contextualizer.js +670 -670
  452. package/dist/uilogic/environment-contextualizer.d.ts +15 -15
  453. package/dist/uilogic/environment-contextualizer.js +42 -42
  454. package/dist/uilogic/i-cluster-configurator.d.ts +9 -9
  455. package/dist/uilogic/i-cluster-configurator.js +2 -2
  456. package/dist/uilogic/i-login-configurator.d.ts +6 -6
  457. package/dist/uilogic/i-login-configurator.js +2 -2
  458. package/dist/uilogic/i-registry-configurator.d.ts +6 -6
  459. package/dist/uilogic/i-registry-configurator.js +2 -2
  460. package/dist/uilogic/i-secret-store-configurator.d.ts +7 -7
  461. package/dist/uilogic/i-secret-store-configurator.js +2 -2
  462. package/dist/uilogic/image-configurator.d.ts +133 -133
  463. package/dist/uilogic/image-configurator.js +577 -577
  464. package/dist/uilogic/image-contextualizer.d.ts +24 -24
  465. package/dist/uilogic/image-contextualizer.js +89 -89
  466. package/dist/uilogic/image-registry-contextualizer.d.ts +28 -28
  467. package/dist/uilogic/image-registry-contextualizer.js +126 -126
  468. package/dist/uilogic/index.d.ts +9 -9
  469. package/dist/uilogic/index.js +13 -13
  470. package/dist/uilogic/prompt-select-fuzzy.js +138 -138
  471. package/dist/uilogic/render-methods.d.ts +12 -12
  472. package/dist/uilogic/render-methods.js +64 -64
  473. package/dist/uilogic/tenant-contextualizer.d.ts +79 -79
  474. package/dist/uilogic/tenant-contextualizer.js +577 -577
  475. package/dist/user-context-loader.d.ts +60 -60
  476. package/dist/user-context-loader.js +183 -183
  477. package/lib/api-command-base.d.ts +0 -0
  478. package/lib/api-command-base.js +52 -0
  479. package/lib/api-command-base.js.map +1 -0
  480. package/lib/apis/codiac-api/common/api-client-base.d.ts +165 -0
  481. package/lib/apis/codiac-api/common/api-client-base.js +548 -0
  482. package/lib/apis/codiac-api/common/api-client-base.js.map +1 -0
  483. package/lib/apis/codiac-api/common/api-user-creds.d.ts +7 -0
  484. package/lib/apis/codiac-api/common/api-user-creds.js +19 -0
  485. package/lib/apis/codiac-api/common/api-user-creds.js.map +1 -0
  486. package/lib/apis/codiac-api/common/config-loader.d.ts +6 -0
  487. package/lib/apis/codiac-api/common/config-loader.js +19 -0
  488. package/lib/apis/codiac-api/common/config-loader.js.map +1 -0
  489. package/lib/apis/codiac-api/common/endpoint-spec.d.ts +17 -0
  490. package/lib/apis/codiac-api/common/endpoint-spec.js +28 -0
  491. package/lib/apis/codiac-api/common/endpoint-spec.js.map +1 -0
  492. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +87 -0
  493. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js +368 -0
  494. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js.map +1 -0
  495. package/lib/apis/codiac-api/common/security/auth-constants.d.ts +15 -0
  496. package/lib/apis/codiac-api/common/security/auth-constants.js +22 -0
  497. package/lib/apis/codiac-api/common/security/auth-constants.js.map +1 -0
  498. package/lib/apis/codiac-api/common/security/i-auth-client.d.ts +44 -0
  499. package/lib/apis/codiac-api/common/security/i-auth-client.js +3 -0
  500. package/lib/apis/codiac-api/common/security/i-auth-client.js.map +1 -0
  501. package/lib/apis/codiac-api/common/security/token-holder.d.ts +13 -0
  502. package/lib/apis/codiac-api/common/security/token-holder.js +18 -0
  503. package/lib/apis/codiac-api/common/security/token-holder.js.map +1 -0
  504. package/lib/apis/codiac-api/common/utils.d.ts +23 -0
  505. package/lib/apis/codiac-api/common/utils.js +83 -0
  506. package/lib/apis/codiac-api/common/utils.js.map +1 -0
  507. package/lib/apis/codiac-api/contracts/index.d.ts +1 -0
  508. package/lib/apis/codiac-api/contracts/index.js +5 -0
  509. package/lib/apis/codiac-api/contracts/index.js.map +1 -0
  510. package/lib/apis/codiac-api/gen/client-config.d.ts +10 -0
  511. package/lib/apis/codiac-api/gen/client-config.js +29 -0
  512. package/lib/apis/codiac-api/gen/client-config.js.map +1 -0
  513. package/lib/apis/codiac-api/gen/client.d.ts +1663 -0
  514. package/lib/apis/codiac-api/gen/client.js +15630 -0
  515. package/lib/apis/codiac-api/gen/client.js.map +1 -0
  516. package/lib/apis/codiac-api/gen/contracts.d.ts +2722 -0
  517. package/lib/apis/codiac-api/gen/contracts.js +403 -0
  518. package/lib/apis/codiac-api/gen/contracts.js.map +1 -0
  519. package/lib/apis/codiac-api/index.d.ts +3 -0
  520. package/lib/apis/codiac-api/index.js +9 -0
  521. package/lib/apis/codiac-api/index.js.map +1 -0
  522. package/lib/apis/codiac-relay/common/api-client-base.d.ts +165 -0
  523. package/lib/apis/codiac-relay/common/api-client-base.js +548 -0
  524. package/lib/apis/codiac-relay/common/api-client-base.js.map +1 -0
  525. package/lib/apis/codiac-relay/common/api-user-creds.d.ts +7 -0
  526. package/lib/apis/codiac-relay/common/api-user-creds.js +19 -0
  527. package/lib/apis/codiac-relay/common/api-user-creds.js.map +1 -0
  528. package/lib/apis/codiac-relay/common/config-loader.d.ts +6 -0
  529. package/lib/apis/codiac-relay/common/config-loader.js +19 -0
  530. package/lib/apis/codiac-relay/common/config-loader.js.map +1 -0
  531. package/lib/apis/codiac-relay/common/endpoint-spec.d.ts +17 -0
  532. package/lib/apis/codiac-relay/common/endpoint-spec.js +28 -0
  533. package/lib/apis/codiac-relay/common/endpoint-spec.js.map +1 -0
  534. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +87 -0
  535. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js +368 -0
  536. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js.map +1 -0
  537. package/lib/apis/codiac-relay/common/security/auth-constants.d.ts +15 -0
  538. package/lib/apis/codiac-relay/common/security/auth-constants.js +22 -0
  539. package/lib/apis/codiac-relay/common/security/auth-constants.js.map +1 -0
  540. package/lib/apis/codiac-relay/common/security/i-auth-client.d.ts +44 -0
  541. package/lib/apis/codiac-relay/common/security/i-auth-client.js +3 -0
  542. package/lib/apis/codiac-relay/common/security/i-auth-client.js.map +1 -0
  543. package/lib/apis/codiac-relay/common/security/token-holder.d.ts +13 -0
  544. package/lib/apis/codiac-relay/common/security/token-holder.js +18 -0
  545. package/lib/apis/codiac-relay/common/security/token-holder.js.map +1 -0
  546. package/lib/apis/codiac-relay/common/utils.d.ts +23 -0
  547. package/lib/apis/codiac-relay/common/utils.js +83 -0
  548. package/lib/apis/codiac-relay/common/utils.js.map +1 -0
  549. package/lib/apis/codiac-relay/contracts/index.d.ts +1 -0
  550. package/lib/apis/codiac-relay/contracts/index.js +5 -0
  551. package/lib/apis/codiac-relay/contracts/index.js.map +1 -0
  552. package/lib/apis/codiac-relay/gen/client-config.d.ts +10 -0
  553. package/lib/apis/codiac-relay/gen/client-config.js +29 -0
  554. package/lib/apis/codiac-relay/gen/client-config.js.map +1 -0
  555. package/lib/apis/codiac-relay/gen/client.d.ts +244 -0
  556. package/lib/apis/codiac-relay/gen/client.js +1863 -0
  557. package/lib/apis/codiac-relay/gen/client.js.map +1 -0
  558. package/lib/apis/codiac-relay/gen/contracts.d.ts +3111 -0
  559. package/lib/apis/codiac-relay/gen/contracts.js +435 -0
  560. package/lib/apis/codiac-relay/gen/contracts.js.map +1 -0
  561. package/lib/apis/codiac-relay/index.d.ts +3 -0
  562. package/lib/apis/codiac-relay/index.js +9 -0
  563. package/lib/apis/codiac-relay/index.js.map +1 -0
  564. package/lib/azure-rest-client.d.ts +6 -0
  565. package/lib/azure-rest-client.js +36 -0
  566. package/lib/azure-rest-client.js.map +1 -0
  567. package/lib/cli-common/ImagesList.d.ts +0 -0
  568. package/lib/cli-common/ImagesList.js +67 -0
  569. package/lib/cli-common/ImagesList.js.map +1 -0
  570. package/lib/cli-common/argument-manager.d.ts +28 -0
  571. package/lib/cli-common/argument-manager.js +195 -0
  572. package/lib/cli-common/argument-manager.js.map +1 -0
  573. package/lib/cli-common/built-in-cli-user-input.d.ts +18 -0
  574. package/lib/cli-common/built-in-cli-user-input.js +310 -0
  575. package/lib/cli-common/built-in-cli-user-input.js.map +1 -0
  576. package/lib/cli-common/cli-interfaces.d.ts +0 -0
  577. package/lib/cli-common/cli-interfaces.js +7 -0
  578. package/lib/cli-common/cli-interfaces.js.map +1 -0
  579. package/lib/cli-common/command-base.d.ts +72 -0
  580. package/lib/cli-common/command-base.js +182 -0
  581. package/lib/cli-common/command-base.js.map +1 -0
  582. package/lib/cli-common/entities/index.d.ts +1 -0
  583. package/lib/cli-common/entities/index.js +5 -0
  584. package/lib/cli-common/entities/index.js.map +1 -0
  585. package/lib/cli-common/entities/prompt-choice.d.ts +7 -0
  586. package/lib/cli-common/entities/prompt-choice.js +3 -0
  587. package/lib/cli-common/entities/prompt-choice.js.map +1 -0
  588. package/lib/cli-common/file-selector.d.ts +48 -0
  589. package/lib/cli-common/file-selector.js +187 -0
  590. package/lib/cli-common/file-selector.js.map +1 -0
  591. package/lib/cli-common/i-user-input-provider.d.ts +0 -0
  592. package/lib/cli-common/i-user-input-provider.js +19 -0
  593. package/lib/cli-common/i-user-input-provider.js.map +1 -0
  594. package/lib/cli-common/index.d.ts +4 -0
  595. package/lib/cli-common/index.js +11 -0
  596. package/lib/cli-common/index.js.map +1 -0
  597. package/lib/cli-common/mock-ui.d.ts +27 -0
  598. package/lib/cli-common/mock-ui.js +83 -0
  599. package/lib/cli-common/mock-ui.js.map +1 -0
  600. package/lib/cli-common/prompt-select-fuzzy.d.ts +19 -0
  601. package/lib/cli-common/prompt-select-fuzzy.js +119 -0
  602. package/lib/cli-common/prompt-select-fuzzy.js.map +1 -0
  603. package/lib/cli-common/tenant-contextualizer.d.ts +0 -0
  604. package/lib/cli-common/tenant-contextualizer.js +436 -0
  605. package/lib/cli-common/tenant-contextualizer.js.map +1 -0
  606. package/lib/cli-common/test/tenant-contextualizer.spec.d.ts +0 -0
  607. package/lib/cli-common/test/tenant-contextualizer.spec.js +143 -0
  608. package/lib/cli-common/test/tenant-contextualizer.spec.js.map +1 -0
  609. package/lib/cli-entities/output-format-enum.d.ts +7 -0
  610. package/lib/cli-entities/output-format-enum.js +12 -0
  611. package/lib/cli-entities/output-format-enum.js.map +1 -0
  612. package/lib/cli-entities/prompt-choice.d.ts +0 -0
  613. package/lib/cli-entities/prompt-choice.js +6 -0
  614. package/lib/cli-entities/prompt-choice.js.map +1 -0
  615. package/lib/codiac-constants.d.ts +35 -0
  616. package/lib/codiac-constants.js +41 -0
  617. package/lib/codiac-constants.js.map +1 -0
  618. package/lib/codiac-entities/asset-binding.d.ts +12 -0
  619. package/lib/codiac-entities/asset-binding.js +18 -0
  620. package/lib/codiac-entities/asset-binding.js.map +1 -0
  621. package/lib/codiac-entities/azure-container-registry.d.ts +4 -0
  622. package/lib/codiac-entities/azure-container-registry.js +3 -0
  623. package/lib/codiac-entities/azure-container-registry.js.map +1 -0
  624. package/lib/codiac-entities/azure-service-principal.d.ts +23 -0
  625. package/lib/codiac-entities/azure-service-principal.js +24 -0
  626. package/lib/codiac-entities/azure-service-principal.js.map +1 -0
  627. package/lib/codiac-entities/cloud-account-ref.d.ts +28 -0
  628. package/lib/codiac-entities/cloud-account-ref.js +37 -0
  629. package/lib/codiac-entities/cloud-account-ref.js.map +1 -0
  630. package/lib/codiac-entities/deployment-temp.d.ts +0 -0
  631. package/lib/codiac-entities/deployment-temp.js +133 -0
  632. package/lib/codiac-entities/deployment-temp.js.map +1 -0
  633. package/lib/codiac-entities/i-cloud-account-ref.d.ts +5 -0
  634. package/lib/codiac-entities/i-cloud-account-ref.js +3 -0
  635. package/lib/codiac-entities/i-cloud-account-ref.js.map +1 -0
  636. package/lib/command-base-enterprise.d.ts +121 -0
  637. package/lib/command-base-enterprise.js +524 -0
  638. package/lib/command-base-enterprise.js.map +1 -0
  639. package/lib/command-base-tenantless.d.ts +44 -0
  640. package/lib/command-base-tenantless.js +180 -0
  641. package/lib/command-base-tenantless.js.map +1 -0
  642. package/lib/commands/asset/create.d.ts +42 -0
  643. package/lib/commands/asset/create.js +467 -0
  644. package/lib/commands/asset/create.js.map +1 -0
  645. package/lib/commands/asset/destroy.d.ts +20 -0
  646. package/lib/commands/asset/destroy.js +129 -0
  647. package/lib/commands/asset/destroy.js.map +1 -0
  648. package/lib/commands/asset/helm.d.ts +23 -0
  649. package/lib/commands/asset/helm.js +153 -0
  650. package/lib/commands/asset/helm.js.map +1 -0
  651. package/lib/commands/asset/list.d.ts +28 -0
  652. package/lib/commands/asset/list.js +172 -0
  653. package/lib/commands/asset/list.js.map +1 -0
  654. package/lib/commands/asset/probe/create.d.ts +38 -0
  655. package/lib/commands/asset/probe/create.js +187 -0
  656. package/lib/commands/asset/probe/create.js.map +1 -0
  657. package/lib/commands/asset/recycle.d.ts +23 -0
  658. package/lib/commands/asset/recycle.js +175 -0
  659. package/lib/commands/asset/recycle.js.map +1 -0
  660. package/lib/commands/asset/view.d.ts +188 -0
  661. package/lib/commands/asset/view.js +1365 -0
  662. package/lib/commands/asset/view.js.map +1 -0
  663. package/lib/commands/asset/volume/create.d.ts +23 -0
  664. package/lib/commands/asset/volume/create.js +176 -0
  665. package/lib/commands/asset/volume/create.js.map +1 -0
  666. package/lib/commands/asset/volume/delete.d.ts +19 -0
  667. package/lib/commands/asset/volume/delete.js +112 -0
  668. package/lib/commands/asset/volume/delete.js.map +1 -0
  669. package/lib/commands/asset/volume/list.d.ts +19 -0
  670. package/lib/commands/asset/volume/list.js +70 -0
  671. package/lib/commands/asset/volume/list.js.map +1 -0
  672. package/lib/commands/branch/current.d.ts +10 -0
  673. package/lib/commands/branch/current.js +34 -0
  674. package/lib/commands/branch/current.js.map +1 -0
  675. package/lib/commands/branch/list.d.ts +15 -0
  676. package/lib/commands/branch/list.js +56 -0
  677. package/lib/commands/branch/list.js.map +1 -0
  678. package/lib/commands/branch.d.ts +12 -0
  679. package/lib/commands/branch.js +42 -0
  680. package/lib/commands/branch.js.map +1 -0
  681. package/lib/commands/build.d.ts +38 -0
  682. package/lib/commands/build.js +120 -0
  683. package/lib/commands/build.js.map +1 -0
  684. package/lib/commands/cabinet/create.d.ts +21 -0
  685. package/lib/commands/cabinet/create.js +108 -0
  686. package/lib/commands/cabinet/create.js.map +1 -0
  687. package/lib/commands/cabinet/list.d.ts +23 -0
  688. package/lib/commands/cabinet/list.js +134 -0
  689. package/lib/commands/cabinet/list.js.map +1 -0
  690. package/lib/commands/cabinet/obliterate.d.ts +20 -0
  691. package/lib/commands/cabinet/obliterate.js +83 -0
  692. package/lib/commands/cabinet/obliterate.js.map +1 -0
  693. package/lib/commands/cli.d.ts +10 -0
  694. package/lib/commands/cli.js +100 -0
  695. package/lib/commands/cli.js.map +1 -0
  696. package/lib/commands/commit.d.ts +11 -0
  697. package/lib/commands/commit.js +40 -0
  698. package/lib/commands/commit.js.map +1 -0
  699. package/lib/commands/config/add.d.ts +78 -0
  700. package/lib/commands/config/add.js +560 -0
  701. package/lib/commands/config/add.js.map +1 -0
  702. package/lib/commands/config/delete.d.ts +18 -0
  703. package/lib/commands/config/delete.js +119 -0
  704. package/lib/commands/config/delete.js.map +1 -0
  705. package/lib/commands/config/deploy.d.ts +22 -0
  706. package/lib/commands/config/deploy.js +125 -0
  707. package/lib/commands/config/deploy.js.map +1 -0
  708. package/lib/commands/config/import.d.ts +27 -0
  709. package/lib/commands/config/import.js +196 -0
  710. package/lib/commands/config/import.js.map +1 -0
  711. package/lib/commands/config/view.d.ts +25 -0
  712. package/lib/commands/config/view.js +121 -0
  713. package/lib/commands/config/view.js.map +1 -0
  714. package/lib/commands/csp/login.d.ts +18 -0
  715. package/lib/commands/csp/login.js +123 -0
  716. package/lib/commands/csp/login.js.map +1 -0
  717. package/lib/commands/csp/logout.d.ts +15 -0
  718. package/lib/commands/csp/logout.js +74 -0
  719. package/lib/commands/csp/logout.js.map +1 -0
  720. package/lib/commands/dep/create.d.ts +13 -0
  721. package/lib/commands/dep/create.js +41 -0
  722. package/lib/commands/dep/create.js.map +1 -0
  723. package/lib/commands/dep/install.d.ts +9 -0
  724. package/lib/commands/dep/install.js +30 -0
  725. package/lib/commands/dep/install.js.map +1 -0
  726. package/lib/commands/dep/list.d.ts +55 -0
  727. package/lib/commands/dep/list.js +98 -0
  728. package/lib/commands/dep/list.js.map +1 -0
  729. package/lib/commands/dep/remove.d.ts +12 -0
  730. package/lib/commands/dep/remove.js +62 -0
  731. package/lib/commands/dep/remove.js.map +1 -0
  732. package/lib/commands/dep/source.d.ts +13 -0
  733. package/lib/commands/dep/source.js +83 -0
  734. package/lib/commands/dep/source.js.map +1 -0
  735. package/lib/commands/dep/syncup.d.ts +11 -0
  736. package/lib/commands/dep/syncup.js +54 -0
  737. package/lib/commands/dep/syncup.js.map +1 -0
  738. package/lib/commands/dep/unsource.d.ts +14 -0
  739. package/lib/commands/dep/unsource.js +68 -0
  740. package/lib/commands/dep/unsource.js.map +1 -0
  741. package/lib/commands/dep/upgrade.d.ts +44 -0
  742. package/lib/commands/dep/upgrade.js +244 -0
  743. package/lib/commands/dep/upgrade.js.map +1 -0
  744. package/lib/commands/dep.d.ts +12 -0
  745. package/lib/commands/dep.js +51 -0
  746. package/lib/commands/dep.js.map +1 -0
  747. package/lib/commands/deploy.d.ts +38 -0
  748. package/lib/commands/deploy.js +386 -0
  749. package/lib/commands/deploy.js.map +1 -0
  750. package/lib/commands/enterprise/create.d.ts +20 -0
  751. package/lib/commands/enterprise/create.js +98 -0
  752. package/lib/commands/enterprise/create.js.map +1 -0
  753. package/lib/commands/enterprise/list.d.ts +14 -0
  754. package/lib/commands/enterprise/list.js +84 -0
  755. package/lib/commands/enterprise/list.js.map +1 -0
  756. package/lib/commands/env/add.d.ts +22 -0
  757. package/lib/commands/env/add.js +200 -0
  758. package/lib/commands/env/add.js.map +1 -0
  759. package/lib/commands/environment/create.d.ts +19 -0
  760. package/lib/commands/environment/create.js +89 -0
  761. package/lib/commands/environment/create.js.map +1 -0
  762. package/lib/commands/environment/list.d.ts +25 -0
  763. package/lib/commands/environment/list.js +158 -0
  764. package/lib/commands/environment/list.js.map +1 -0
  765. package/lib/commands/filestore/capture.d.ts +31 -0
  766. package/lib/commands/filestore/capture.js +342 -0
  767. package/lib/commands/filestore/capture.js.map +1 -0
  768. package/lib/commands/host/map.d.ts +33 -0
  769. package/lib/commands/host/map.js +347 -0
  770. package/lib/commands/host/map.js.map +1 -0
  771. package/lib/commands/identity/delete.d.ts +15 -0
  772. package/lib/commands/identity/delete.js +83 -0
  773. package/lib/commands/identity/delete.js.map +1 -0
  774. package/lib/commands/identity/list.d.ts +11 -0
  775. package/lib/commands/identity/list.js +43 -0
  776. package/lib/commands/identity/list.js.map +1 -0
  777. package/lib/commands/identity.d.ts +22 -0
  778. package/lib/commands/identity.js +77 -0
  779. package/lib/commands/identity.js.map +1 -0
  780. package/lib/commands/imageRegistry/capture.d.ts +27 -0
  781. package/lib/commands/imageRegistry/capture.js +160 -0
  782. package/lib/commands/imageRegistry/capture.js.map +1 -0
  783. package/lib/commands/imageRegistry/forget.d.ts +23 -0
  784. package/lib/commands/imageRegistry/forget.js +161 -0
  785. package/lib/commands/imageRegistry/forget.js.map +1 -0
  786. package/lib/commands/imageRegistry/pullSecret/set.d.ts +27 -0
  787. package/lib/commands/imageRegistry/pullSecret/set.js +300 -0
  788. package/lib/commands/imageRegistry/pullSecret/set.js.map +1 -0
  789. package/lib/commands/imageRegistry/pullSecret/unset.d.ts +24 -0
  790. package/lib/commands/imageRegistry/pullSecret/unset.js +243 -0
  791. package/lib/commands/imageRegistry/pullSecret/unset.js.map +1 -0
  792. package/lib/commands/images/add.d.ts +25 -0
  793. package/lib/commands/images/add.js +76 -0
  794. package/lib/commands/images/add.js.map +1 -0
  795. package/lib/commands/images/list.d.ts +14 -0
  796. package/lib/commands/images/list.js +72 -0
  797. package/lib/commands/images/list.js.map +1 -0
  798. package/lib/commands/images/patch.d.ts +14 -0
  799. package/lib/commands/images/patch.js +93 -0
  800. package/lib/commands/images/patch.js.map +1 -0
  801. package/lib/commands/images/remove.d.ts +12 -0
  802. package/lib/commands/images/remove.js +38 -0
  803. package/lib/commands/images/remove.js.map +1 -0
  804. package/lib/commands/images/version/bump.d.ts +18 -0
  805. package/lib/commands/images/version/bump.js +61 -0
  806. package/lib/commands/images/version/bump.js.map +1 -0
  807. package/lib/commands/images/version.d.ts +16 -0
  808. package/lib/commands/images/version.js +65 -0
  809. package/lib/commands/images/version.js.map +1 -0
  810. package/lib/commands/init.d.ts +17 -0
  811. package/lib/commands/init.js +131 -0
  812. package/lib/commands/init.js.map +1 -0
  813. package/lib/commands/kit/create.d.ts +25 -0
  814. package/lib/commands/kit/create.js +142 -0
  815. package/lib/commands/kit/create.js.map +1 -0
  816. package/lib/commands/login.d.ts +22 -0
  817. package/lib/commands/login.js +93 -0
  818. package/lib/commands/login.js.map +1 -0
  819. package/lib/commands/logout.d.ts +8 -0
  820. package/lib/commands/logout.js +37 -0
  821. package/lib/commands/logout.js.map +1 -0
  822. package/lib/commands/merge.d.ts +12 -0
  823. package/lib/commands/merge.js +43 -0
  824. package/lib/commands/merge.js.map +1 -0
  825. package/lib/commands/noc/cluster/create.d.ts +28 -0
  826. package/lib/commands/noc/cluster/create.js +133 -0
  827. package/lib/commands/noc/cluster/create.js.map +1 -0
  828. package/lib/commands/noc/cluster/deinit.d.ts +17 -0
  829. package/lib/commands/noc/cluster/deinit.js +117 -0
  830. package/lib/commands/noc/cluster/deinit.js.map +1 -0
  831. package/lib/commands/noc/cluster/destroy.d.ts +20 -0
  832. package/lib/commands/noc/cluster/destroy.js +138 -0
  833. package/lib/commands/noc/cluster/destroy.js.map +1 -0
  834. package/lib/commands/noc/cluster/forget.d.ts +16 -0
  835. package/lib/commands/noc/cluster/forget.js +137 -0
  836. package/lib/commands/noc/cluster/forget.js.map +1 -0
  837. package/lib/commands/noc/cluster/grant.d.ts +24 -0
  838. package/lib/commands/noc/cluster/grant.js +160 -0
  839. package/lib/commands/noc/cluster/grant.js.map +1 -0
  840. package/lib/commands/noc/cluster/init.d.ts +17 -0
  841. package/lib/commands/noc/cluster/init.js +117 -0
  842. package/lib/commands/noc/cluster/init.js.map +1 -0
  843. package/lib/commands/noc/cluster/list.d.ts +21 -0
  844. package/lib/commands/noc/cluster/list.js +84 -0
  845. package/lib/commands/noc/cluster/list.js.map +1 -0
  846. package/lib/commands/noc/cluster/recreate.d.ts +28 -0
  847. package/lib/commands/noc/cluster/recreate.js +186 -0
  848. package/lib/commands/noc/cluster/recreate.js.map +1 -0
  849. package/lib/commands/pkg/add.d.ts +15 -0
  850. package/lib/commands/pkg/add.js +43 -0
  851. package/lib/commands/pkg/add.js.map +1 -0
  852. package/lib/commands/pkg/list.d.ts +9 -0
  853. package/lib/commands/pkg/list.js +33 -0
  854. package/lib/commands/pkg/list.js.map +1 -0
  855. package/lib/commands/pkg/patch.d.ts +13 -0
  856. package/lib/commands/pkg/patch.js +79 -0
  857. package/lib/commands/pkg/patch.js.map +1 -0
  858. package/lib/commands/pkg/remove.d.ts +12 -0
  859. package/lib/commands/pkg/remove.js +70 -0
  860. package/lib/commands/pkg/remove.js.map +1 -0
  861. package/lib/commands/portal.d.ts +11 -0
  862. package/lib/commands/portal.js +82 -0
  863. package/lib/commands/portal.js.map +1 -0
  864. package/lib/commands/publish.d.ts +21 -0
  865. package/lib/commands/publish.js +52 -0
  866. package/lib/commands/publish.js.map +1 -0
  867. package/lib/commands/pull.d.ts +13 -0
  868. package/lib/commands/pull.js +30 -0
  869. package/lib/commands/pull.js.map +1 -0
  870. package/lib/commands/push.d.ts +13 -0
  871. package/lib/commands/push.js +30 -0
  872. package/lib/commands/push.js.map +1 -0
  873. package/lib/commands/run.d.ts +35 -0
  874. package/lib/commands/run.js +194 -0
  875. package/lib/commands/run.js.map +1 -0
  876. package/lib/commands/secretStore/capture.d.ts +27 -0
  877. package/lib/commands/secretStore/capture.js +175 -0
  878. package/lib/commands/secretStore/capture.js.map +1 -0
  879. package/lib/commands/secretStore/forget.d.ts +20 -0
  880. package/lib/commands/secretStore/forget.js +147 -0
  881. package/lib/commands/secretStore/forget.js.map +1 -0
  882. package/lib/commands/stage.d.ts +13 -0
  883. package/lib/commands/stage.js +65 -0
  884. package/lib/commands/stage.js.map +1 -0
  885. package/lib/commands/stash.d.ts +13 -0
  886. package/lib/commands/stash.js +31 -0
  887. package/lib/commands/stash.js.map +1 -0
  888. package/lib/commands/status.d.ts +12 -0
  889. package/lib/commands/status.js +49 -0
  890. package/lib/commands/status.js.map +1 -0
  891. package/lib/commands/stop.d.ts +10 -0
  892. package/lib/commands/stop.js +52 -0
  893. package/lib/commands/stop.js.map +1 -0
  894. package/lib/commands/switch.d.ts +11 -0
  895. package/lib/commands/switch.js +42 -0
  896. package/lib/commands/switch.js.map +1 -0
  897. package/lib/commands/sync.d.ts +14 -0
  898. package/lib/commands/sync.js +21 -0
  899. package/lib/commands/sync.js.map +1 -0
  900. package/lib/commands/tenant/create.d.ts +27 -0
  901. package/lib/commands/tenant/create.js +120 -0
  902. package/lib/commands/tenant/create.js.map +1 -0
  903. package/lib/commands/tenant/switch.d.ts +24 -0
  904. package/lib/commands/tenant/switch.js +109 -0
  905. package/lib/commands/tenant/switch.js.map +1 -0
  906. package/lib/commands/unstage.d.ts +12 -0
  907. package/lib/commands/unstage.js +58 -0
  908. package/lib/commands/unstage.js.map +1 -0
  909. package/lib/commands/view/dashboard.d.ts +17 -0
  910. package/lib/commands/view/dashboard.js +88 -0
  911. package/lib/commands/view/dashboard.js.map +1 -0
  912. package/lib/commands/view/pods.d.ts +14 -0
  913. package/lib/commands/view/pods.js +88 -0
  914. package/lib/commands/view/pods.js.map +1 -0
  915. package/lib/commands/whereami.d.ts +15 -0
  916. package/lib/commands/whereami.js +123 -0
  917. package/lib/commands/whereami.js.map +1 -0
  918. package/lib/commands/whoami.d.ts +8 -0
  919. package/lib/commands/whoami.js +40 -0
  920. package/lib/commands/whoami.js.map +1 -0
  921. package/lib/deployment.d.ts +2 -0
  922. package/lib/deployment.js +7 -0
  923. package/lib/deployment.js.map +1 -0
  924. package/lib/errors/NoMembershipError.d.ts +8 -0
  925. package/lib/errors/NoMembershipError.js +15 -0
  926. package/lib/errors/NoMembershipError.js.map +1 -0
  927. package/lib/index.d.ts +1 -0
  928. package/lib/index.js +17 -0
  929. package/lib/index.js.map +1 -0
  930. package/lib/k8s-command-base.d.ts +60 -0
  931. package/lib/k8s-command-base.js +204 -0
  932. package/lib/k8s-command-base.js.map +1 -0
  933. package/lib/log-update-wrapper.d.ts +24 -0
  934. package/lib/log-update-wrapper.js +29 -0
  935. package/lib/log-update-wrapper.js.map +1 -0
  936. package/lib/log4js-logger.d.ts +26 -0
  937. package/lib/log4js-logger.js +138 -0
  938. package/lib/log4js-logger.js.map +1 -0
  939. package/lib/ops/INTERFACES_CLI.d.ts +3 -0
  940. package/lib/ops/INTERFACES_CLI.js +8 -0
  941. package/lib/ops/INTERFACES_CLI.js.map +1 -0
  942. package/lib/ops/LocalOps.d.ts +417 -0
  943. package/lib/ops/LocalOps.js +3122 -0
  944. package/lib/ops/LocalOps.js.map +1 -0
  945. package/lib/ops/azure-container-registry-client/azure-container-registry-client.d.ts +0 -0
  946. package/lib/ops/azure-container-registry-client/azure-container-registry-client.js +148 -0
  947. package/lib/ops/azure-container-registry-client/azure-container-registry-client.js.map +1 -0
  948. package/lib/ops/cli-path-walker.d.ts +0 -0
  949. package/lib/ops/cli-path-walker.js +55 -0
  950. package/lib/ops/cli-path-walker.js.map +1 -0
  951. package/lib/ops/codiac-entities/dependency.d.ts +5 -0
  952. package/lib/ops/codiac-entities/dependency.js +11 -0
  953. package/lib/ops/codiac-entities/dependency.js.map +1 -0
  954. package/lib/ops/codiac-entities/index.d.ts +1 -0
  955. package/lib/ops/codiac-entities/index.js +5 -0
  956. package/lib/ops/codiac-entities/index.js.map +1 -0
  957. package/lib/ops/composite-image-registry-client.d.ts +0 -0
  958. package/lib/ops/composite-image-registry-client.js +74 -0
  959. package/lib/ops/composite-image-registry-client.js.map +1 -0
  960. package/lib/ops/data/cli-context-repo.d.ts +61 -0
  961. package/lib/ops/data/cli-context-repo.js +270 -0
  962. package/lib/ops/data/cli-context-repo.js.map +1 -0
  963. package/lib/ops/data/index.d.ts +2 -0
  964. package/lib/ops/data/index.js +6 -0
  965. package/lib/ops/data/index.js.map +1 -0
  966. package/lib/ops/data/npm-config-repo.d.ts +13 -0
  967. package/lib/ops/data/npm-config-repo.js +65 -0
  968. package/lib/ops/data/npm-config-repo.js.map +1 -0
  969. package/lib/ops/docker-config.d.ts +0 -0
  970. package/lib/ops/docker-config.js +131 -0
  971. package/lib/ops/docker-config.js.map +1 -0
  972. package/lib/ops/docker-constants.d.ts +0 -0
  973. package/lib/ops/docker-constants.js +22 -0
  974. package/lib/ops/docker-constants.js.map +1 -0
  975. package/lib/ops/docker-credentials-store.d.ts +0 -0
  976. package/lib/ops/docker-credentials-store.js +238 -0
  977. package/lib/ops/docker-credentials-store.js.map +1 -0
  978. package/lib/ops/docker-registry-api-client/docker-registry-api-client.d.ts +0 -0
  979. package/lib/ops/docker-registry-api-client/docker-registry-api-client.js +289 -0
  980. package/lib/ops/docker-registry-api-client/docker-registry-api-client.js.map +1 -0
  981. package/lib/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -0
  982. package/lib/ops/docker-registry-api-client/entities/blob-sum.js +13 -0
  983. package/lib/ops/docker-registry-api-client/entities/blob-sum.js.map +1 -0
  984. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -0
  985. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +10 -0
  986. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js.map +1 -0
  987. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -0
  988. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +36 -0
  989. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js.map +1 -0
  990. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -0
  991. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js +52 -0
  992. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js.map +1 -0
  993. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -0
  994. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js +3 -0
  995. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js.map +1 -0
  996. package/lib/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -0
  997. package/lib/ops/docker-registry-api-client/entities/image-repository.js +30 -0
  998. package/lib/ops/docker-registry-api-client/entities/image-repository.js.map +1 -0
  999. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -0
  1000. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js +14 -0
  1001. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js.map +1 -0
  1002. package/lib/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -0
  1003. package/lib/ops/docker-registry-api-client/entities/image-tag-list.js +13 -0
  1004. package/lib/ops/docker-registry-api-client/entities/image-tag-list.js.map +1 -0
  1005. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -0
  1006. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js +15 -0
  1007. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js.map +1 -0
  1008. package/lib/ops/docker-registry-api-client/entities/manifest.d.ts +15 -0
  1009. package/lib/ops/docker-registry-api-client/entities/manifest.js +21 -0
  1010. package/lib/ops/docker-registry-api-client/entities/manifest.js.map +1 -0
  1011. package/lib/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -0
  1012. package/lib/ops/docker-registry-api-client/entities/repository-criteria.js +24 -0
  1013. package/lib/ops/docker-registry-api-client/entities/repository-criteria.js.map +1 -0
  1014. package/lib/ops/docker-registry-api-client/entities/token-response.d.ts +15 -0
  1015. package/lib/ops/docker-registry-api-client/entities/token-response.js +15 -0
  1016. package/lib/ops/docker-registry-api-client/entities/token-response.js.map +1 -0
  1017. package/lib/ops/docker-registry-api-client/entities/token.d.ts +17 -0
  1018. package/lib/ops/docker-registry-api-client/entities/token.js +22 -0
  1019. package/lib/ops/docker-registry-api-client/entities/token.js.map +1 -0
  1020. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -0
  1021. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js +10 -0
  1022. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js.map +1 -0
  1023. package/lib/ops/dx-constants.d.ts +26 -0
  1024. package/lib/ops/dx-constants.js +43 -0
  1025. package/lib/ops/dx-constants.js.map +1 -0
  1026. package/lib/ops/entities/ImageBuildContext.d.ts +12 -0
  1027. package/lib/ops/entities/ImageBuildContext.js +19 -0
  1028. package/lib/ops/entities/ImageBuildContext.js.map +1 -0
  1029. package/lib/ops/entities/PipelineContext.d.ts +21 -0
  1030. package/lib/ops/entities/PipelineContext.js +23 -0
  1031. package/lib/ops/entities/PipelineContext.js.map +1 -0
  1032. package/lib/ops/entities/TenantContext.d.ts +10 -0
  1033. package/lib/ops/entities/TenantContext.js +16 -0
  1034. package/lib/ops/entities/TenantContext.js.map +1 -0
  1035. package/lib/ops/entities/ThaulConfig.d.ts +0 -0
  1036. package/lib/ops/entities/ThaulConfig.js +30 -0
  1037. package/lib/ops/entities/ThaulConfig.js.map +1 -0
  1038. package/lib/ops/entities/azure-service-principal.d.ts +23 -0
  1039. package/lib/ops/entities/azure-service-principal.js +24 -0
  1040. package/lib/ops/entities/azure-service-principal.js.map +1 -0
  1041. package/lib/ops/entities/better-logger.d.ts +0 -0
  1042. package/lib/ops/entities/better-logger.js +2 -0
  1043. package/lib/ops/entities/better-logger.js.map +1 -0
  1044. package/lib/ops/entities/branch.d.ts +13 -0
  1045. package/lib/ops/entities/branch.js +16 -0
  1046. package/lib/ops/entities/branch.js.map +1 -0
  1047. package/lib/ops/entities/cli-config.d.ts +48 -0
  1048. package/lib/ops/entities/cli-config.js +61 -0
  1049. package/lib/ops/entities/cli-config.js.map +1 -0
  1050. package/lib/ops/entities/docker-image.d.ts +60 -0
  1051. package/lib/ops/entities/docker-image.js +3 -0
  1052. package/lib/ops/entities/docker-image.js.map +1 -0
  1053. package/lib/ops/entities/helm-spec.d.ts +15 -0
  1054. package/lib/ops/entities/helm-spec.js +23 -0
  1055. package/lib/ops/entities/helm-spec.js.map +1 -0
  1056. package/lib/ops/entities/index.d.ts +4 -0
  1057. package/lib/ops/entities/index.js +12 -0
  1058. package/lib/ops/entities/index.js.map +1 -0
  1059. package/lib/ops/entities/operation-meta.d.ts +8 -0
  1060. package/lib/ops/entities/operation-meta.js +19 -0
  1061. package/lib/ops/entities/operation-meta.js.map +1 -0
  1062. package/lib/ops/entities/scaffolding.d.ts +19 -0
  1063. package/lib/ops/entities/scaffolding.js +21 -0
  1064. package/lib/ops/entities/scaffolding.js.map +1 -0
  1065. package/lib/ops/extensions/azart-identity-adapter.d.ts +19 -0
  1066. package/lib/ops/extensions/azart-identity-adapter.js +97 -0
  1067. package/lib/ops/extensions/azart-identity-adapter.js.map +1 -0
  1068. package/lib/ops/extensions/npm-identity-adapter-base.d.ts +13 -0
  1069. package/lib/ops/extensions/npm-identity-adapter-base.js +3 -0
  1070. package/lib/ops/extensions/npm-identity-adapter-base.js.map +1 -0
  1071. package/lib/ops/extensions/npmjs-identity-adapter.d.ts +13 -0
  1072. package/lib/ops/extensions/npmjs-identity-adapter.js +64 -0
  1073. package/lib/ops/extensions/npmjs-identity-adapter.js.map +1 -0
  1074. package/lib/ops/git-ops.d.ts +8 -0
  1075. package/lib/ops/git-ops.js +14 -0
  1076. package/lib/ops/git-ops.js.map +1 -0
  1077. package/lib/ops/i-client-for-image-registry.d.ts +0 -0
  1078. package/lib/ops/i-client-for-image-registry.js +17 -0
  1079. package/lib/ops/i-client-for-image-registry.js.map +1 -0
  1080. package/lib/ops/i-identity-handler.d.ts +33 -0
  1081. package/lib/ops/i-identity-handler.js +165 -0
  1082. package/lib/ops/i-identity-handler.js.map +1 -0
  1083. package/lib/ops/i-output-styler.d.ts +0 -0
  1084. package/lib/ops/i-output-styler.js +17 -0
  1085. package/lib/ops/i-output-styler.js.map +1 -0
  1086. package/lib/ops/index.d.ts +12 -0
  1087. package/lib/ops/index.js +15 -0
  1088. package/lib/ops/index.js.map +1 -0
  1089. package/lib/ops/json-utils.d.ts +0 -0
  1090. package/lib/ops/json-utils.js +59 -0
  1091. package/lib/ops/json-utils.js.map +1 -0
  1092. package/lib/ops/no-style-output-styler.d.ts +0 -0
  1093. package/lib/ops/no-style-output-styler.js +30 -0
  1094. package/lib/ops/no-style-output-styler.js.map +1 -0
  1095. package/lib/ops/oauth2-client.ts/oauth2-client.d.ts +23 -0
  1096. package/lib/ops/oauth2-client.ts/oauth2-client.js +64 -0
  1097. package/lib/ops/oauth2-client.ts/oauth2-client.js.map +1 -0
  1098. package/lib/ops/project-initializer.d.ts +36 -0
  1099. package/lib/ops/project-initializer.js +219 -0
  1100. package/lib/ops/project-initializer.js.map +1 -0
  1101. package/lib/ops/scaffolding/base-scaffolding.d.ts +7 -0
  1102. package/lib/ops/scaffolding/base-scaffolding.js +21 -0
  1103. package/lib/ops/scaffolding/base-scaffolding.js.map +1 -0
  1104. package/lib/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -0
  1105. package/lib/ops/scaffolding/codiac-api-scaffolding.js +64 -0
  1106. package/lib/ops/scaffolding/codiac-api-scaffolding.js.map +1 -0
  1107. package/lib/ops/scaffolding/typescript-scaffolding.d.ts +15 -0
  1108. package/lib/ops/scaffolding/typescript-scaffolding.js +163 -0
  1109. package/lib/ops/scaffolding/typescript-scaffolding.js.map +1 -0
  1110. package/lib/ops/test/mock-ui.d.ts +26 -0
  1111. package/lib/ops/test/mock-ui.js +88 -0
  1112. package/lib/ops/test/mock-ui.js.map +1 -0
  1113. package/lib/ops/test/test-extensions.d.ts +13 -0
  1114. package/lib/ops/test/test-extensions.js +71 -0
  1115. package/lib/ops/test/test-extensions.js.map +1 -0
  1116. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -0
  1117. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js +55 -0
  1118. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js.map +1 -0
  1119. package/lib/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -0
  1120. package/lib/ops/test/when-git-branchline-is-attempted.spec.js +38 -0
  1121. package/lib/ops/test/when-git-branchline-is-attempted.spec.js.map +1 -0
  1122. package/lib/ops/test/when-versions-are-parsed.spec.d.ts +2 -0
  1123. package/lib/ops/test/when-versions-are-parsed.spec.js +62 -0
  1124. package/lib/ops/test/when-versions-are-parsed.spec.js.map +1 -0
  1125. package/lib/ops/throwing-user-input-provider.d.ts +0 -0
  1126. package/lib/ops/throwing-user-input-provider.js +37 -0
  1127. package/lib/ops/throwing-user-input-provider.js.map +1 -0
  1128. package/lib/ops/workspace-versioner.d.ts +122 -0
  1129. package/lib/ops/workspace-versioner.js +292 -0
  1130. package/lib/ops/workspace-versioner.js.map +1 -0
  1131. package/lib/prettify.d.ts +7 -0
  1132. package/lib/prettify.js +24 -0
  1133. package/lib/prettify.js.map +1 -0
  1134. package/lib/read-stdin.d.ts +2 -0
  1135. package/lib/read-stdin.js +29 -0
  1136. package/lib/read-stdin.js.map +1 -0
  1137. package/lib/relay/contracts/contracts.d.ts +207 -0
  1138. package/lib/relay/contracts/contracts.js +230 -0
  1139. package/lib/relay/contracts/contracts.js.map +1 -0
  1140. package/lib/relay/data/aws-k8s-versions.d.ts +6 -0
  1141. package/lib/relay/data/aws-k8s-versions.js +16 -0
  1142. package/lib/relay/data/aws-k8s-versions.js.map +1 -0
  1143. package/lib/relay/data/aws-node-types.d.ts +37 -0
  1144. package/lib/relay/data/aws-node-types.js +4246 -0
  1145. package/lib/relay/data/aws-node-types.js.map +1 -0
  1146. package/lib/relay/data/aws-regions.d.ts +6 -0
  1147. package/lib/relay/data/aws-regions.js +34 -0
  1148. package/lib/relay/data/aws-regions.js.map +1 -0
  1149. package/lib/relay/extended-relay-client.d.ts +27 -0
  1150. package/lib/relay/extended-relay-client.js +28 -0
  1151. package/lib/relay/extended-relay-client.js.map +1 -0
  1152. package/lib/relay/relay-container.d.ts +41 -0
  1153. package/lib/relay/relay-container.js +298 -0
  1154. package/lib/relay/relay-container.js.map +1 -0
  1155. package/lib/relay/wsclient/relay-socket-listener.d.ts +68 -0
  1156. package/lib/relay/wsclient/relay-socket-listener.js +165 -0
  1157. package/lib/relay/wsclient/relay-socket-listener.js.map +1 -0
  1158. package/lib/relay/wsclient/relay-websocket-client.d.ts +33 -0
  1159. package/lib/relay/wsclient/relay-websocket-client.js +179 -0
  1160. package/lib/relay/wsclient/relay-websocket-client.js.map +1 -0
  1161. package/lib/relay/wsclient/rx-websocket-subject.d.ts +25 -0
  1162. package/lib/relay/wsclient/rx-websocket-subject.js +134 -0
  1163. package/lib/relay/wsclient/rx-websocket-subject.js.map +1 -0
  1164. package/lib/relay/wsclient/socket-contracts.d.ts +22 -0
  1165. package/lib/relay/wsclient/socket-contracts.js +3 -0
  1166. package/lib/relay/wsclient/socket-contracts.js.map +1 -0
  1167. package/lib/standard-probes.d.ts +5 -0
  1168. package/lib/standard-probes.js +22 -0
  1169. package/lib/standard-probes.js.map +1 -0
  1170. package/lib/uilogic/build-configurator.d.ts +21 -0
  1171. package/lib/uilogic/build-configurator.js +111 -0
  1172. package/lib/uilogic/build-configurator.js.map +1 -0
  1173. package/lib/uilogic/cloud-provider-contextualizer.d.ts +46 -0
  1174. package/lib/uilogic/cloud-provider-contextualizer.js +194 -0
  1175. package/lib/uilogic/cloud-provider-contextualizer.js.map +1 -0
  1176. package/lib/uilogic/cloud-resource-configurator-factory.d.ts +41 -0
  1177. package/lib/uilogic/cloud-resource-configurator-factory.js +158 -0
  1178. package/lib/uilogic/cloud-resource-configurator-factory.js.map +1 -0
  1179. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.d.ts +11 -0
  1180. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js +16 -0
  1181. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js.map +1 -0
  1182. package/lib/uilogic/cloud-resource-configurators/aws-node-types.d.ts +5 -0
  1183. package/lib/uilogic/cloud-resource-configurators/aws-node-types.js +536 -0
  1184. package/lib/uilogic/cloud-resource-configurators/aws-node-types.js.map +1 -0
  1185. package/lib/uilogic/cloud-resource-configurators/aws-regions.d.ts +10 -0
  1186. package/lib/uilogic/cloud-resource-configurators/aws-regions.js +34 -0
  1187. package/lib/uilogic/cloud-resource-configurators/aws-regions.js.map +1 -0
  1188. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +38 -0
  1189. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js +348 -0
  1190. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -0
  1191. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.d.ts +0 -0
  1192. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +78 -0
  1193. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js.map +1 -0
  1194. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +42 -0
  1195. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +248 -0
  1196. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js.map +1 -0
  1197. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +110 -0
  1198. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js +782 -0
  1199. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +1 -0
  1200. package/lib/uilogic/cloud-resource-configurators/azure-types.d.ts +0 -0
  1201. package/lib/uilogic/cloud-resource-configurators/azure-types.js +10 -0
  1202. package/lib/uilogic/cloud-resource-configurators/azure-types.js.map +1 -0
  1203. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +24 -0
  1204. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +106 -0
  1205. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +1 -0
  1206. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +16 -0
  1207. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js +45 -0
  1208. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js.map +1 -0
  1209. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +18 -0
  1210. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +62 -0
  1211. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js.map +1 -0
  1212. package/lib/uilogic/enterprise-contextualizer.d.ts +76 -0
  1213. package/lib/uilogic/enterprise-contextualizer.js +671 -0
  1214. package/lib/uilogic/enterprise-contextualizer.js.map +1 -0
  1215. package/lib/uilogic/environment-contextualizer.d.ts +15 -0
  1216. package/lib/uilogic/environment-contextualizer.js +43 -0
  1217. package/lib/uilogic/environment-contextualizer.js.map +1 -0
  1218. package/lib/uilogic/i-cluster-configurator.d.ts +9 -0
  1219. package/lib/uilogic/i-cluster-configurator.js +3 -0
  1220. package/lib/uilogic/i-cluster-configurator.js.map +1 -0
  1221. package/lib/uilogic/i-login-configurator.d.ts +6 -0
  1222. package/lib/uilogic/i-login-configurator.js +3 -0
  1223. package/lib/uilogic/i-login-configurator.js.map +1 -0
  1224. package/lib/uilogic/i-registry-configurator.d.ts +6 -0
  1225. package/lib/uilogic/i-registry-configurator.js +3 -0
  1226. package/lib/uilogic/i-registry-configurator.js.map +1 -0
  1227. package/lib/uilogic/i-secret-store-configurator.d.ts +7 -0
  1228. package/lib/uilogic/i-secret-store-configurator.js +3 -0
  1229. package/lib/uilogic/i-secret-store-configurator.js.map +1 -0
  1230. package/lib/uilogic/image-configurator.d.ts +133 -0
  1231. package/lib/uilogic/image-configurator.js +578 -0
  1232. package/lib/uilogic/image-configurator.js.map +1 -0
  1233. package/lib/uilogic/image-contextualizer.d.ts +24 -0
  1234. package/lib/uilogic/image-contextualizer.js +90 -0
  1235. package/lib/uilogic/image-contextualizer.js.map +1 -0
  1236. package/lib/uilogic/image-registry-contextualizer.d.ts +28 -0
  1237. package/lib/uilogic/image-registry-contextualizer.js +127 -0
  1238. package/lib/uilogic/image-registry-contextualizer.js.map +1 -0
  1239. package/lib/uilogic/index.d.ts +9 -0
  1240. package/lib/uilogic/index.js +14 -0
  1241. package/lib/uilogic/index.js.map +1 -0
  1242. package/lib/uilogic/prompt-select-fuzzy.d.ts +0 -0
  1243. package/lib/uilogic/prompt-select-fuzzy.js +139 -0
  1244. package/lib/uilogic/prompt-select-fuzzy.js.map +1 -0
  1245. package/lib/uilogic/render-methods.d.ts +12 -0
  1246. package/lib/uilogic/render-methods.js +65 -0
  1247. package/lib/uilogic/render-methods.js.map +1 -0
  1248. package/lib/uilogic/tenant-contextualizer.d.ts +79 -0
  1249. package/lib/uilogic/tenant-contextualizer.js +578 -0
  1250. package/lib/uilogic/tenant-contextualizer.js.map +1 -0
  1251. package/lib/user-context-loader.d.ts +60 -0
  1252. package/lib/user-context-loader.js +184 -0
  1253. package/lib/user-context-loader.js.map +1 -0
  1254. package/oclif.manifest.json +1 -1
  1255. package/package.json +151 -151
  1256. package/scaffolding/api/.gitignore-scaffolding +68 -68
  1257. package/scaffolding/api/.vscode/launch.json +16 -16
  1258. package/scaffolding/api/.vscode/settings.json +7 -7
  1259. package/scaffolding/api/.vscode/tasks.json +15 -15
  1260. package/scaffolding/api/src/app-config.json +2 -2
  1261. package/scaffolding/api/src/index.ts-scaffolding +13 -13
  1262. package/scaffolding/api/src/myApiDef.ts-scaffolding +25 -25
  1263. package/scaffolding/default/.gitignore-scaffolding +2 -2
  1264. package/scaffolding/typescript/.gitignore-scaffolding +69 -69
  1265. package/scaffolding/typescript/.vscode/launch.json +16 -16
  1266. package/scaffolding/typescript/.vscode/settings.json +7 -7
  1267. package/scaffolding/typescript/.vscode/tasks.json +15 -15
@@ -0,0 +1,671 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EnterpriseContextualizer = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const asset_binding_1 = require("../codiac-entities/asset-binding");
6
+ const _ = require("lodash");
7
+ const contracts_1 = require("../apis/codiac-api/contracts");
8
+ // import { Enterprise, Asset, Image, ImageRegistry, AssetCriteria, EnterpriseCriteria, Cabinet, CabinetCriteria, ImageOSTypesEnum, CloudProviderEnum, ImageRegistryTypes } from '@codiac.io/codiac-domain';
9
+ const codiac_relay_contracts_1 = require("@codiac.io/codiac-relay-contracts");
10
+ const codiac_relay_contracts_2 = require("@codiac.io/codiac-relay-contracts");
11
+ const contracts_2 = require("@codiac.io/codiac-common/contracts");
12
+ // export declare type EnterpriseContext = { enterpriseCode: string, assetBindings?: AssetContext[]|undefined };
13
+ // export declare type AssetContext = { image: ImageExport, incarnation: AssetBinding };
14
+ /** Establishes a single Enterprise Asset as which to deploy an ImageExport. */
15
+ class EnterpriseContextualizer {
16
+ constructor(_tenantCode, _ops, relayClient, _codiacApi, _projCfg, _projUserCfg, _projCfgRepo, userContext, userContextManager, ui, styler, exitCli, logger) {
17
+ this._tenantCode = _tenantCode;
18
+ this._ops = _ops;
19
+ this.relayClient = relayClient;
20
+ this._codiacApi = _codiacApi;
21
+ this._projCfg = _projCfg;
22
+ this._projUserCfg = _projUserCfg;
23
+ this._projCfgRepo = _projCfgRepo;
24
+ this.userContext = userContext;
25
+ this.userContextManager = userContextManager;
26
+ this.ui = ui;
27
+ this.styler = styler;
28
+ this.exitCli = exitCli;
29
+ this.logger = logger;
30
+ this.takeDefaults = false;
31
+ }
32
+ /** Interacts with user to select an existing enterprise (or create one if none exist),
33
+ * and persists it in the project user config.
34
+ * NOTE: Clears Asset context if the user switches enterprises,
35
+ * or keeps original with orignal asset context if user selects it. */
36
+ establishEnterprise(requestedEnterpriseCode) {
37
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
38
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
39
+ var _a, _b, _c, _d, _e;
40
+ try {
41
+ let eResult = yield this._codiacApi.Enterprise.tryReadMany({ all: true });
42
+ if (eResult.error)
43
+ throw new contracts_2.CodiacError(`Error reading enterprises: ${eResult.message}; ${eResult.error.message}`, eResult.error);
44
+ if (!eResult.output || eResult.output.length == 0) {
45
+ throw new contracts_2.CodiacError(`This tenant [${this._tenantCode}] does not have any enterprises defined. You need to create one to continue.`);
46
+ // TODO: The contextualizer should walk them thru the enterprise setup.
47
+ // eCode = await cli.prompt(`Enter a code for the enterprise (${eCode})`);
48
+ // eCode = eCode.toLowercase().replace(/[^A-Za-z0-9-_]/g, "");
49
+ // // TODO: We might use one more conf here to let em check for stray keystrokes (we enterprise codes are immutable)
50
+ // let ep = new Enterprise(eCode);
51
+ // let createResult = await this._codiacApi.Enterprise.tryCreate(ep);
52
+ // if (createResult.Error) throw new CodiacError(`Error creating new enterprise [${ep.code}]: ${createResult.message||""}; ${createResult.error.message}`, createResult.error);
53
+ }
54
+ // -------------------------------------------------------------------
55
+ // !!!! HELP !!!!
56
+ // We're drowning in IF statments here!!
57
+ //
58
+ // It's the end of a looong day of a LOT of coding solutions,
59
+ // and I cant summon an elegant path thru this...
60
+ //
61
+ // TODO: REFACTOR THIS INTO SOMETHING THAT LOOKS PROFESSIONAL.
62
+ // -------------------------------------------------------------------
63
+ // GET: proj THEN user
64
+ let originalCode = (_c = (_b = (_a = this._projUserCfg) === null || _a === void 0 ? void 0 : _a.enterprise) === null || _b === void 0 ? void 0 : _b.enterpriseCode) !== null && _c !== void 0 ? _c : (_e = (_d = this.userContext) === null || _d === void 0 ? void 0 : _d.currentEnterprise) === null || _e === void 0 ? void 0 : _e.enterprise;
65
+ // Validate the requested enterprise
66
+ let enterprise;
67
+ if (requestedEnterpriseCode) {
68
+ enterprise = eResult.output.find(e => e.code == requestedEnterpriseCode);
69
+ }
70
+ // Validate the enterprise set in the current project user context
71
+ if (!enterprise) {
72
+ if (originalCode !== undefined && originalCode !== "") {
73
+ enterprise = eResult.output.find(e => e.code == originalCode);
74
+ }
75
+ }
76
+ // Select the one and only
77
+ if (!enterprise && eResult.output.length === 1) {
78
+ enterprise = eResult.output[0];
79
+ }
80
+ // Prompt the user to select from the list of enterprises (for this tenant)
81
+ let attempts = 4;
82
+ while (!enterprise && attempts > 0) {
83
+ let eCode = yield this.ui.promptSelect("enterpriseCode", "Select a target enterprise:", eResult.output.map(e => e.code));
84
+ if (eCode)
85
+ enterprise = eResult.output.find(e => e.code == eCode);
86
+ attempts--;
87
+ }
88
+ if (!enterprise)
89
+ throw new Error("Failed to select a target enterprise.");
90
+ // We've got one now.
91
+ if (originalCode !== undefined && originalCode !== "" && enterprise.code == originalCode) {
92
+ // same as original. Do nothing
93
+ }
94
+ else {
95
+ // new enterprise context
96
+ this.userContext.currentEnterprise = { enterprise: enterprise.code };
97
+ this.userContext.enterpriseContexts[this._tenantCode] = this.userContext.currentEnterprise;
98
+ yield this.userContextManager.writeUserContext(this.userContext);
99
+ // SET: user THEN proj
100
+ if (this._projUserCfg && this._projCfgRepo) {
101
+ this._projUserCfg.enterprise = new codiac_relay_contracts_1.ProjectEnterpriseBinding(this.userContext.currentEnterprise.enterprise);
102
+ yield this._projCfgRepo.writeProjectUserConfig(this._projUserCfg);
103
+ }
104
+ }
105
+ resolve(enterprise);
106
+ }
107
+ catch (err) {
108
+ reject(err);
109
+ }
110
+ }));
111
+ });
112
+ }
113
+ establishEnterpriseAsset(enterprise, suppressConfirmations) {
114
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
115
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
116
+ var _a, _b;
117
+ try {
118
+ let assetName;
119
+ // TODO: Consider using asset.code instead.
120
+ // assetName = this._projUserCfg?.enterprise?.assetBindings ? this._projUserCfg?.enterprise?.assetBindings[0].incarnation?.assetName ?? this.userContext.currentEnterprise?.asset : this.userContext.currentEnterprise?.asset;
121
+ // WITH PROJECT CONTEXT
122
+ if (this._projCfg && this._projCfgRepo && (this._projCfg.images !== undefined && Object.keys(this._projCfg.images).length > 0)) {
123
+ let assetContext = yield this.establishProjectAssetBinding(enterprise.code, enterprise.assets, this._projCfg, this._projCfgRepo, suppressConfirmations, (_a = this.userContext.currentEnterprise) === null || _a === void 0 ? void 0 : _a.asset);
124
+ assetName = assetContext.incarnation.assetName;
125
+ yield this.validateImageOs(assetContext, enterprise.assets);
126
+ // TODO: This should come BEFORE establishBinding. This will require the new assetContextSwitching.
127
+ // TODO: validate that requested assets exist. Dont auto-create them.
128
+ // await this.validateAssetBinding(assetContext); // <---- BUT THIS SHD BE PART OF this.establishBinding()
129
+ // which should include:
130
+ // throw new CodiacError(`Requested Asset [${req.incarnation.assetName}] does not exist in the enterprise [${req.incarnation.enterprise}].`)
131
+ let assets = yield this.createMissingAssets(enterprise.code, [assetContext]);
132
+ }
133
+ // WITH USER CONTEXT
134
+ if (assetName === undefined || assetName === "") {
135
+ if (this.userContext.currentEnterprise == undefined || this.userContext.currentEnterprise.enterprise !== enterprise.code) {
136
+ // Make sure we are pointed to the given enterprise
137
+ this.userContext.currentEnterprise = new codiac_relay_contracts_1.EnterprisePointer(enterprise.code);
138
+ }
139
+ if (this.userContext.currentEnterprise.asset !== undefined && this.userContext.currentEnterprise.asset !== "") {
140
+ // Make sure current asset still exists in the enterprise record.
141
+ assetName = (_b = enterprise.assets.find(a => a.name === this.userContext.currentEnterprise.asset)) === null || _b === void 0 ? void 0 : _b.name;
142
+ }
143
+ if (assetName === undefined || assetName === "") {
144
+ // Prompt the user directly
145
+ let choices = enterprise.assets.map(a => { return { name: a.name, value: a.name }; });
146
+ assetName = (yield this.ui.promptSelect("assetName", "Asset: ", choices));
147
+ }
148
+ }
149
+ else {
150
+ // Save whatever was selected in the prject context
151
+ }
152
+ resolve(assetName);
153
+ }
154
+ catch (err) {
155
+ reject(err);
156
+ }
157
+ }));
158
+ });
159
+ }
160
+ /** This method WAS a copy from config:add */
161
+ promptForTargetFile(enterprise, asset, defaultValue) {
162
+ var _a;
163
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
164
+ try {
165
+ // 1. Build choices
166
+ let crit = {
167
+ asset: asset,
168
+ enterprise: enterprise,
169
+ type: contracts_1.ConfigDefTypesEnum.file
170
+ };
171
+ // let configs = await this._codiacApi.ConfigDef.readMany(crit, { throwNotFound: false, projection: { pathsExcluded: [], pathsIncluded: ["settings", "targetFile", "format"] } })
172
+ let cfgResult = yield this._codiacApi.Call.getConfigDefs(crit, { projection: { pathsExcluded: [], pathsIncluded: ["settings", "targetFile", "format"] } });
173
+ if (cfgResult.error)
174
+ throw cfgResult.error;
175
+ let configs = (_a = cfgResult.output) !== null && _a !== void 0 ? _a : [];
176
+ if (configs.length === 0) {
177
+ throw new Error(`The asset ${asset} has no config files defined.`);
178
+ }
179
+ let choices = configs.map(c => { return { name: c.targetFile, value: c.targetFile }; });
180
+ // 2. Select the one-and-only
181
+ /** If we changed the input they provided, we need their confirmation (whether or not they said takeDefaults) */
182
+ let changedUserInput = false;
183
+ if (choices.length === 1) {
184
+ if (defaultValue != choices[0].value) {
185
+ changedUserInput = !_.isEmpty(defaultValue);
186
+ defaultValue = choices[0].value;
187
+ this.ui.userMessage(`1 config file found: ${this.styler.hilite(defaultValue)}`);
188
+ }
189
+ }
190
+ // 3. Confirm and/or Select
191
+ let targetFile;
192
+ let keep = this.takeDefaults;
193
+ if (defaultValue && choices.find(x => x.value == defaultValue) && (changedUserInput || !this.takeDefaults)) {
194
+ keep = yield this.ui.promptConfirm("keepTargetFile", `File: ${this.styler.hilite(defaultValue)}`, true);
195
+ }
196
+ targetFile = (defaultValue && keep === true) ? defaultValue : (yield this.ui.promptSelect("fileExisting", "File: ", choices));
197
+ return targetFile;
198
+ }
199
+ catch (err) {
200
+ throw err;
201
+ }
202
+ });
203
+ }
204
+ /** Throws when the image os does not match that of the image in the remote enterprise asset record.
205
+ *
206
+ * Throws any errors. */
207
+ validateImageOs(localBinding, enterpriseAssets) {
208
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
209
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
210
+ var _a, _b, _c;
211
+ try {
212
+ let assetRecord = enterpriseAssets.find(a => a.name == localBinding.incarnation.assetName);
213
+ if ((assetRecord === null || assetRecord === void 0 ? void 0 : assetRecord.image) && assetRecord.image.os && (((_a = localBinding.image.os) === null || _a === void 0 ? void 0 : _a.toLowerCase()) != assetRecord.image.os.toLowerCase())) {
214
+ throw new Error(`The image callout in the official enterprise asset record [asset: ${assetRecord.name}, enterprise: ${assetRecord.enterprise}] is showing a different OS [${(_b = assetRecord.image.os) !== null && _b !== void 0 ? _b : "undefined"}] than the one in this project of [${(_c = localBinding.image.os) !== null && _c !== void 0 ? _c : "undefined"}]. Please reconcile this issue.`);
215
+ }
216
+ resolve();
217
+ }
218
+ catch (err) {
219
+ reject(err);
220
+ }
221
+ }));
222
+ });
223
+ }
224
+ /** TODO: Ensures that the given assets exist in the api. */
225
+ createMissingAssets(enterpriseCode, requestedAssets) {
226
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
227
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
228
+ try {
229
+ let assets = [];
230
+ let crit = { code: enterpriseCode };
231
+ let assetResult = yield this._codiacApi.Enterprise.tryReadMany(crit);
232
+ if (assetResult.error) {
233
+ throw new contracts_2.CodiacError(`Error querying enterprise to check for existing assets: ${assetResult.message || ""}; ${assetResult.error.message || ""}`, assetResult.error);
234
+ }
235
+ else if (!assetResult.success || !assetResult.output) {
236
+ throw new contracts_2.CodiacError(`Unable to verify assets: enterprise [${crit.code}] was not found.`);
237
+ }
238
+ else {
239
+ let enterprise = assetResult.output[0];
240
+ let assets = enterprise.assets; // Deploy all of em unless the caller requested specific ones.
241
+ if (requestedAssets && requestedAssets.length > 0) {
242
+ // Get only the requested ones...
243
+ // assets = enterprise.assets.filter(a => requestedAssets.find(ac => a.name == ac.incarnation.assetName));
244
+ assets = [];
245
+ let newAssets = [];
246
+ for (let req of requestedAssets) {
247
+ let epAsset = enterprise.assets.find(a => a.name == req.incarnation.assetName);
248
+ if (epAsset) {
249
+ assets.push(epAsset);
250
+ }
251
+ else {
252
+ let newAsset = yield this.hackBuildAsset(req, enterprise);
253
+ newAssets.push(newAsset);
254
+ enterprise.assets.push(...newAssets);
255
+ }
256
+ }
257
+ if (newAssets.length > 0) {
258
+ let saveResult = yield this._codiacApi.Asset.tryCreateMany(newAssets);
259
+ if (saveResult.error) {
260
+ throw new contracts_2.CodiacError(`Error inserting missing enterprise assets [${newAssets.map(a => a.name).join(',')}]: ${saveResult.error.message || saveResult.message || ""}`, saveResult.error);
261
+ }
262
+ else if (!saveResult.success || !saveResult.successes || saveResult.successes.length == 0) {
263
+ if (saveResult.failures && saveResult.failures.length > 0 && saveResult.failures.length < newAssets.length) {
264
+ this.logger.debug(`Saving new assets yielded a partial failure.`);
265
+ }
266
+ throw new contracts_2.CodiacError(`Unable to save missing enterprise assets [${newAssets.map(a => a.name).join(',')}]: Returned failure without error. ${saveResult.message}`);
267
+ }
268
+ else {
269
+ this.logger.debug(`Created missing assets: [${saveResult.successes.map(a => a.name).join(',')}]`);
270
+ assets.push(...saveResult.successes);
271
+ }
272
+ }
273
+ }
274
+ }
275
+ resolve(assets);
276
+ }
277
+ catch (err) {
278
+ reject(err);
279
+ }
280
+ }));
281
+ });
282
+ }
283
+ /** This is backwards - it should be impossible to have an asset binding to an asset that doesnt exist.
284
+ * If somehow the project was still pointed to a since-deleted asset,
285
+ * then it should still throw an error and allow the user to select an existing asset to bind/switch to.
286
+ */
287
+ hackBuildAsset(localDef, enterprise) {
288
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
289
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
290
+ var _a, _b;
291
+ try {
292
+ let newAsset;
293
+ let target;
294
+ // no record for this asset in the enterprise yet.
295
+ if (localDef.image.targets.length == 0) {
296
+ // TODO: Use the default image target registry.
297
+ // imgRegistry = new ImageRegistry("dockerhub", "https://index.docker.io/v1");
298
+ target = new codiac_relay_contracts_1.RegistryTarget("default", EnterpriseContextualizer.DEFAULT_REGISTRY_URL);
299
+ this.logger.detail(`No target image registry declared for image [${localDef.image.name}], using default at ${target.registryUrl}`);
300
+ localDef.image.targets.push(target);
301
+ }
302
+ else {
303
+ target = localDef.image.targets[0]; // <-- HACK!!! taking the first one. Confirm?
304
+ }
305
+ // COMMENTED OUT BECUASE let's just get it in there as a compositional entity
306
+ // Go fetch the registry obj from the api
307
+ // TODO: Consider making this a get-sert
308
+ // let regCrit = <ImageRegistryCriteria>{ url: localDef.image.targets[0].registryUrl };
309
+ // let imageRegResult = await this._codiacApi.ImageRegistry.tryReadMany(regCrit);
310
+ // if (imageRegResult.error) {
311
+ // throw new CodiacError(`Error retrieving ImageRegistry [${localDef.image.targets[0].registryUrl}] for image [${localDef.image.name}]: ${imageRegResult.error.message||imageRegResult.message||""}`, imageRegResult.error);
312
+ // } else if (!imageRegResult.success || imageRegResult.output == undefined || imageRegResult.output.length == 0) {
313
+ // throw new Error(`No registry currently exists with url: [${regCrit.url||""}] ${imageRegResult.message||""}`)
314
+ // } else {
315
+ // imgRegistry = imageRegResult.output[0];
316
+ // let imgRegistry = new ImageRegistry(`${this._tenantCode}-${CloudProviderEnum}`, target.registryUrl, CloudProviderEnum.dockerHub, ImageRegistryTypes.DockerHub);
317
+ let imgRegistry = {
318
+ code: `${this._tenantCode}-${contracts_1.CloudProviderEnum}`,
319
+ url: target.registryUrl,
320
+ provider: contracts_1.CloudProviderEnum.dockerHub,
321
+ type: contracts_1.ImageRegistryTypes.DockerHub
322
+ };
323
+ let audits = this.createAuditable();
324
+ let img = Object.assign({ name: localDef.image.name, registry: imgRegistry }, audits);
325
+ newAsset = Object.assign({ code: localDef.incarnation.assetName, name: localDef.incarnation.assetName, enterprise: enterprise.code, image: img, port: (_b = (_a = localDef.incarnation.port) !== null && _a !== void 0 ? _a : localDef.image.port) !== null && _b !== void 0 ? _b : 0, hasIngress: false, routedWithoutName: false }, audits);
326
+ // TODO: Write to the enterprise? or throw? or ask?
327
+ // }
328
+ resolve(newAsset);
329
+ }
330
+ catch (err) {
331
+ reject(err);
332
+ }
333
+ }));
334
+ });
335
+ }
336
+ /** Selects a single ImageExport and a single incarnation of that image (aka: AssetBinding).
337
+ * @param suppressConfirmations (Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs.
338
+ * @param preferredAssetName (Optional) Asset name to select if it applies to the given image and is currently remembered. User prompts will default to this if valid.
339
+ */
340
+ establishProjectAssetBinding(enterpriseCode, assets, projCfg, projCfgRepo, suppressConfirmations, preferredAssetName) {
341
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
342
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
343
+ var _a, _b, _c, _d;
344
+ try {
345
+ let allowAddingNewAssets = true;
346
+ // STEP 1: Establish the ImageExport to use.
347
+ let image;
348
+ if (projCfg.images && !_.isEmpty(projCfg.images)) {
349
+ let images = _.keysIn(projCfg.images);
350
+ if (images.length == 1) {
351
+ image = projCfg.images[images[0]];
352
+ }
353
+ else if (images.length > 0) {
354
+ // Prompt the user to select one.
355
+ // TODO: Default to the one selected in a previous execution,
356
+ // and remember the selection for next time.
357
+ let selection = yield this.ui.promptSelect('imageName', 'Image you are executing this command for...', images);
358
+ if (!selection)
359
+ throw new Error(`No image selected`);
360
+ image = projCfg.images[selection];
361
+ }
362
+ else {
363
+ // This clause is impossible to reach (bc we already did a _.isEmpty check).
364
+ throw new Error(`No image exports have been declared for this project; use "codiac images:add" to declare an image for export from this project.`);
365
+ }
366
+ }
367
+ else { // No image exports defined for the project
368
+ throw new Error(`No image exports have been declared for this project; use "codiac images:add" to declare an image for export from this project.`);
369
+ }
370
+ let validBindings = assets
371
+ .filter(a => a.image.name == image.name)
372
+ .map(a => new asset_binding_1.AssetBinding(enterpriseCode, a.name, a.port));
373
+ // STEP 2: Establish the AssetBinding
374
+ let binding;
375
+ // a: See if we've already got one selected (via the project user config)
376
+ let remembered;
377
+ let found = (_c = (_b = (_a = this._projUserCfg) === null || _a === void 0 ? void 0 : _a.enterprise) === null || _b === void 0 ? void 0 : _b.assetBindings) === null || _c === void 0 ? void 0 : _c.filter(ab => ab.image.name == image.name);
378
+ if (found && found.length > 0) {
379
+ // Try to use preferred...
380
+ if (preferredAssetName !== undefined && preferredAssetName !== "") {
381
+ remembered = (_d = found.find(a => a.incarnation.assetName === preferredAssetName)) === null || _d === void 0 ? void 0 : _d.incarnation;
382
+ }
383
+ if (!remembered) {
384
+ // Otherwise, just take the first valid binding we've remembered for that image
385
+ remembered = found[0].incarnation;
386
+ }
387
+ }
388
+ // a: Select and validate an existing binding
389
+ if (remembered) {
390
+ // We only care about the existing bindings we know are still valid in this enterprise
391
+ // let existings = image.incarnations.filter(i => validBindings.find(v => v.enterprise == i.enterprise && v.assetName == i.assetName));
392
+ if (validBindings.find(v => v.enterprise == remembered.enterprise && v.assetName == remembered.assetName)) {
393
+ // confirm the remembered one only if they requested a selection
394
+ if (!suppressConfirmations) {
395
+ if (yield this.ui.promptConfirm("assetBinding", `Targeting asset: ${this.styler.bold(this.styler.hilite(remembered.enterprise + '/' + remembered.assetName))} ?`)) {
396
+ binding = remembered;
397
+ }
398
+ }
399
+ else {
400
+ binding = remembered;
401
+ }
402
+ }
403
+ // if (existings.length == 1) {
404
+ // } else if (existings.length > 1) {
405
+ // // select from existing
406
+ // let choices = existings.map(e => e.assetName);
407
+ // let selection = await this.ui.promptSelect("assetBinding", `Target asset (in enterprise: ${enterprise.code})...`, choices);
408
+ // if (selection) binding = existings.find(a => a.assetName == selection);
409
+ // }
410
+ }
411
+ // use preferred if it's valid (even tho it's not currently in proj user cfg)
412
+ if (!binding) {
413
+ binding = validBindings.find(b => b.assetName === preferredAssetName);
414
+ }
415
+ // b: Create a new Asset binding
416
+ if (!binding) {
417
+ let choices = validBindings.map((e, idx) => { return { name: e.assetName, value: idx }; });
418
+ if (allowAddingNewAssets)
419
+ choices.push({ name: EnterpriseContextualizer.CHOICE_VALUE_FOR_NEW, value: -1 });
420
+ let selection = yield this.ui.promptSelect("assetBinding", `Target asset (in enterprise: ${enterpriseCode})...`, choices);
421
+ if (!selection)
422
+ throw new Error("Failed to select a target asset.");
423
+ if (selection >= 0) {
424
+ binding = validBindings[selection];
425
+ }
426
+ else {
427
+ // Create a new Asset
428
+ // TODO: Use the same UX code as asset:create
429
+ let assetName = yield this.ui.prompt("asset", "Name for the Asset to be made from this image:", true, image.name);
430
+ let assetCode = assetName; // TODO: Prompt with this default
431
+ let assetPort = image.port || this.selectAvailableAssetPort(assets); // TODO: Prompt with this default
432
+ let assetImg = yield this.createAssetImageRef(image);
433
+ let newAsset = Object.assign({ enterprise: enterpriseCode, code: assetCode, name: assetName, image: assetImg, port: assetPort }, this.createAuditable());
434
+ let createResult = yield this._codiacApi.Asset.tryCreate(newAsset);
435
+ if (createResult.error)
436
+ throw createResult.error;
437
+ else if (!createResult.success || !createResult.output)
438
+ throw new Error(`Failed creating new asset ${newAsset.name} in enterprise: ${newAsset.enterprise}: ${createResult.message}`);
439
+ newAsset = createResult.output;
440
+ this.logger.detail(`New Asset [${createResult.output.name}] Successfully created from image: [${createResult.output.image.name}] in enterprise [${createResult.output.enterprise}].`);
441
+ binding = new asset_binding_1.AssetBinding(enterpriseCode, newAsset.name, newAsset.port);
442
+ }
443
+ }
444
+ if (!binding)
445
+ throw new Error("No asset binding was established.");
446
+ // Write this selection to the proj user config
447
+ if (!this._projUserCfg) {
448
+ this._projUserCfg = new codiac_relay_contracts_1.ProjectUserConfig();
449
+ }
450
+ if (!this._projUserCfg.enterprise) {
451
+ this._projUserCfg.enterprise = new codiac_relay_contracts_1.ProjectEnterpriseBinding(enterpriseCode);
452
+ }
453
+ if (!this._projUserCfg.enterprise.assetBindings)
454
+ this._projUserCfg.enterprise.assetBindings = [];
455
+ _.remove(this._projUserCfg.enterprise.assetBindings, ac => ac.image.name == image.name);
456
+ this._projUserCfg.enterprise.assetBindings.push(new codiac_relay_contracts_1.AssetContext(image, binding));
457
+ projCfgRepo.writeProjectUserConfig(this._projUserCfg);
458
+ resolve({ image: image, incarnation: binding });
459
+ }
460
+ catch (err) {
461
+ reject(err);
462
+ }
463
+ }));
464
+ });
465
+ }
466
+ /** provdes a randpm port number that is not currently owned by any asset in the enterprise. */
467
+ selectAvailableAssetPort(existingAssets) {
468
+ let port = EnterpriseContextualizer.DEFAULT_ASSET_PORT_NUMBER;
469
+ while (!port || existingAssets.find(a => a.port == port)) {
470
+ port = _.random(1024, 65535, false);
471
+ }
472
+ return port;
473
+ }
474
+ /** Factory method for the image reference object on which an Asset is based. */
475
+ createAssetImageRef(projectImage, targetEnvironment) {
476
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
477
+ let registryEnv = targetEnvironment || "default";
478
+ let registryTarget = projectImage.targets.find(t => t.environment == registryEnv);
479
+ if (!registryTarget) {
480
+ throw new Error(`The image export [${projectImage.name}] in the local project does not have a target registry declared for the [${registryEnv}] environment.`);
481
+ }
482
+ let pvdResult = yield this.relayClient.Call.getRegistryType({ registryUrl: registryTarget.registryUrl });
483
+ if (pvdResult.error)
484
+ throw pvdResult.error;
485
+ if (pvdResult.output == undefined)
486
+ throw new Error(`Did not recogize registry domain [${registryTarget.registryUrl}].`);
487
+ let regInfo = pvdResult.output;
488
+ // let regClient = this.regClientFactory.createForDomain(registryTarget.registryUrl);
489
+ let regCode = "TODO-DERIVE-THE-IMAGE-REGISTRY-CODE"; // <----- HEY!!! We need to provide proper support of image registries by code name (eg: "dockerhub", "acr", "google", "amazon-ecr" etc)
490
+ let reg = Object.assign({ code: regCode, url: registryTarget.registryUrl, provider: regInfo.provider, type: regInfo.type }, this.createAuditable());
491
+ let scope = (projectImage.name.indexOf("/") >= 0) ? projectImage.name.split("/")[0] : undefined;
492
+ let img = Object.assign({ name: projectImage.name, registry: reg, scope: scope }, this.createAuditable());
493
+ return img;
494
+ });
495
+ }
496
+ /** Simply wraps establishCabinet() to return a CabinetScope.
497
+ * TODO: EITHER get rid of this method altogether and use Cabinet instead of CabinetScope
498
+ * OR Add ClusterName to CabinetScope (it's redundant, but it's important for gathering k8s cluster context without requerying the api)
499
+ * @param suppressConfirmations (Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs.
500
+ */
501
+ establishCabinetContext(requestedCabinet, suppressConfirmations, requestedEnviro) {
502
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
503
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
504
+ try {
505
+ let cabinet = yield this.establishCabinet(requestedCabinet, suppressConfirmations, requestedEnviro);
506
+ let cabCntx = new codiac_relay_contracts_1.CabinetScope(cabinet.enterpriseCode, cabinet.environment, cabinet.name);
507
+ this.logger.trace(`Cabinet context`, cabCntx);
508
+ resolve(cabCntx);
509
+ }
510
+ catch (err) {
511
+ reject(err);
512
+ }
513
+ }));
514
+ });
515
+ }
516
+ /** Selects from existing cabinets.
517
+ * Defaults to the cabinet declared in the project user config.
518
+ * DOES NOT lazily create new cabinets OR build cabinet infrastructure!
519
+ * This method only selects an existing cabinet
520
+ * (because cabinet scope - eg: enterprises, environments, and cabinets -
521
+ * should only be created deliberately and explicitly by their respective cli commands).
522
+ * @param suppressConfirmations (Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs.
523
+ */
524
+ establishCabinet(requestedCabinet, suppressConfirmations, requestedEnviro) {
525
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
526
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
527
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
528
+ try {
529
+ let enterpriseCode = (_c = (_b = (_a = this._projUserCfg) === null || _a === void 0 ? void 0 : _a.enterprise) === null || _b === void 0 ? void 0 : _b.enterpriseCode) !== null && _c !== void 0 ? _c : (_d = this.userContext.currentEnterprise) === null || _d === void 0 ? void 0 : _d.enterprise;
530
+ if (enterpriseCode === undefined) {
531
+ throw new contracts_2.CodiacError(`Cannot establish cabinet context: no enterprise is in context for the current user.`);
532
+ }
533
+ let current = (_h = (_g = (_f = (_e = this._projUserCfg) === null || _e === void 0 ? void 0 : _e.enterprise) === null || _f === void 0 ? void 0 : _f.cabinet) === null || _g === void 0 ? void 0 : _g.cabinet) !== null && _h !== void 0 ? _h : (_j = this.userContext.currentEnterprise) === null || _j === void 0 ? void 0 : _j.cabinet;
534
+ let cabName = requestedCabinet !== null && requestedCabinet !== void 0 ? requestedCabinet : current;
535
+ // -----------
536
+ // let eCntx = this._projUserCfg?.enterprise ?? this.userContext.currentEnterprise;
537
+ // if (eCntx == undefined || (<ProjectEnterpriseBinding>eCntx).enterpriseCode == undefined || (<EnterprisePointer>eCntx).enterprise == undefined) {
538
+ // throw new CodiacError(`Cannot establish cabinet context: no enterprise is in context for the current user.`);
539
+ // }
540
+ // // Remember any existing context...
541
+ // let enterpriseCode = eCntx.enterpriseCode;
542
+ // let current = eCntx.cabinet?.cabinet;
543
+ // let cabName: string | undefined = requestedCabinet;
544
+ // if (!cabName) { // THIS because we dont have the nullish operator...
545
+ // cabName = current;
546
+ // }
547
+ // -----------
548
+ // let env: Environment;
549
+ // let crit: EnvironmentCriteria = { all: true };
550
+ // let envResult = await this._codiacApi.Environment.tryReadMany(crit);
551
+ // if (envResult.error) {
552
+ // throw new CodiacError(`Error attempting to retrieve environments: ${envResult.error.message||envResult.message||""}`, envResult.error);
553
+ // } else if (envResult.count == 0 || !envResult.output || envResult.output.length == 0) {
554
+ // throw new CodiacError(`No environments found: ${envResult.message||""}`);
555
+ // } else if (envResult.output.length == 1) {
556
+ // env = envResult.output[0];
557
+ // } else {
558
+ // // TODO: Let the user select which one, and remember his choice as a default for next time.
559
+ // env = envResult.output[0]; // <--- HACK!!!!
560
+ // }
561
+ // if (env.cabinets.length == 0) {
562
+ // throw new CodiacError(`No cabinets found for environment [${env.code}]. Use 'cod cabinet:create' to create one.`);
563
+ // } else if (env.cabinets.length == 1) {
564
+ // cab = env.cabinets[0].name; // TODO: Consider a confirmation here that the -y attrib will skip
565
+ // } else {
566
+ // // TODO: Let the user select which one, and remember his choice as a default for next time.
567
+ // cab = env.cabinets[0].name; // <--- HACK!!!!
568
+ // }
569
+ let cabinet;
570
+ let crit = { enterpriseCode: enterpriseCode };
571
+ if (requestedEnviro !== undefined && requestedEnviro !== "") {
572
+ crit.environment = requestedEnviro;
573
+ }
574
+ let cabResult = yield this._codiacApi.Cabinet.tryReadMany(crit); // <--- TODO: Consider injecting a RootMap instance instead of making api hits.
575
+ if (cabResult.error) {
576
+ throw new contracts_2.CodiacError(`Error checking for cabinets in enterprise [${enterpriseCode}]: ${cabResult.message || ""}; ${cabResult.error.message || cabResult.error.stack}`, cabResult.error);
577
+ }
578
+ else if (!cabResult.output || cabResult.output.length == 0) {
579
+ throw new contracts_2.CodiacError(`No cabinets found for enterprise [${enterpriseCode}]. Use 'cod cabinet:create' to create a new cabinet. ${cabResult.message || ""}`);
580
+ }
581
+ else {
582
+ let cabs = cabResult.output;
583
+ // HERE'S THE UX GAUNTLET...
584
+ let selection;
585
+ if (cabName) {
586
+ // This is where we validate that the requested/remembered cabinet is indeed/still in the current enterprise.
587
+ // let found = cabs.find(c => c.name == cabName);
588
+ // let found = cabs.findIndex(c => c.name == cabName);
589
+ selection = cabs.findIndex(c => c.name == cabName);
590
+ if (selection < 0) {
591
+ this.logger.notice(`Cabinet [${cabName}] was not found in enterprise [${enterpriseCode}].`);
592
+ this.ui.userMessage(`Cabinet [${cabName}] was not found in enterprise [${enterpriseCode}].`);
593
+ }
594
+ }
595
+ // CI/CD support here
596
+ if (suppressConfirmations && cabName) {
597
+ cabinet = cabs.find(f => f.name == cabName);
598
+ }
599
+ let choices;
600
+ while (!cabinet) {
601
+ if (!selection || selection < 0) {
602
+ if (cabs.length == 1) { // We're adding this to prevent two steps
603
+ selection = 0;
604
+ }
605
+ else { // Let them choose
606
+ choices = choices || cabs.map((c, index) => { return { name: `${c.name}${(cabs[index].name == current) ? " (current)" : ""}`, value: index }; });
607
+ selection = (yield this.ui.promptSelect('cabIndex', `Select a cabinet [enterprise: ${this.styler.hilite(enterpriseCode)}]`, choices));
608
+ }
609
+ }
610
+ let confResult = yield this.ui.promptConfirm('confirm', `Target cabinet: ${this.styler.hilite(enterpriseCode + "/" + cabs[selection].name)}`);
611
+ if (confResult === true) { // TODO: Refactor these 3 confirms into 1
612
+ // if (await this._ui.promptConfirm("targetCab", `Target cabinet (y/n): ${inOrange(cabs[selection].name)}`)) { // TODO: Refactor these 3 confirms into 1
613
+ cabinet = cabs[selection];
614
+ }
615
+ else if (cabs.length == 1) { // We're adding this so we can avoid what would be two steps
616
+ this.logger.notice(`Operation cancelled. That was the only cabinet available in enterprise [${enterpriseCode}].`);
617
+ this.ui.userMessage(`Operation cancelled. That was the only cabinet available in enterprise [${enterpriseCode}].`);
618
+ this.exitCli(0);
619
+ }
620
+ else {
621
+ selection = undefined;
622
+ }
623
+ }
624
+ }
625
+ // PROJECT CONTEXT
626
+ if (this._projCfg && this._projCfgRepo) {
627
+ if (!this._projUserCfg)
628
+ this._projUserCfg = new codiac_relay_contracts_1.ProjectUserConfig();
629
+ if (this._projUserCfg.enterprise === undefined || this._projUserCfg.enterprise.enterpriseCode !== enterpriseCode) {
630
+ this._projUserCfg.enterprise = new codiac_relay_contracts_1.ProjectEnterpriseBinding(enterpriseCode);
631
+ }
632
+ // Are we sure we wanna set the exact current branch? what if we're inheriting this cabinet from our branch lineage?
633
+ let branch = yield this._ops.gitCurrentBranchNameFor(this._ops.getConfigRoot());
634
+ this._projUserCfg.enterprise.cabinet = new codiac_relay_contracts_2.BranchBinding(branch, enterpriseCode, cabinet.name);
635
+ this._projCfgRepo.writeProjectUserConfig(this._projUserCfg);
636
+ }
637
+ // USER CONTEXT
638
+ if (this.userContext.currentEnterprise === undefined || this.userContext.currentEnterprise.enterprise !== enterpriseCode) {
639
+ this.userContext.currentEnterprise = new codiac_relay_contracts_1.EnterprisePointer(enterpriseCode);
640
+ }
641
+ this.userContext.currentEnterprise.cabinet = cabinet.name;
642
+ this.userContext.enterpriseContexts[this._tenantCode] = this.userContext.currentEnterprise;
643
+ this.userContextManager.writeUserContext(this.userContext);
644
+ this.logger.trace(`Cabinet`, cabinet);
645
+ // let cabCntx = new CabinetScope(cabinet.enterpriseCode, cabinet.environment, cabinet.name)
646
+ // this.logger.trace(`Cabinet context`, cabCntx)
647
+ resolve(cabinet);
648
+ }
649
+ catch (err) {
650
+ reject(err);
651
+ }
652
+ }));
653
+ });
654
+ }
655
+ createAuditable() {
656
+ let stamp = new Date(Date.now());
657
+ return {
658
+ created: stamp,
659
+ createdBy: this.userContext.userName,
660
+ modified: stamp,
661
+ modifiedBy: this.userContext.userName
662
+ };
663
+ }
664
+ }
665
+ exports.EnterpriseContextualizer = EnterpriseContextualizer;
666
+ /** The value in a select list prompt designating the user's choice
667
+ * to create a new record instead of selecting from the existing choices. */
668
+ EnterpriseContextualizer.CHOICE_VALUE_FOR_NEW = "** create new **";
669
+ EnterpriseContextualizer.DEFAULT_REGISTRY_URL = "https://index.docker.io/v1";
670
+ EnterpriseContextualizer.DEFAULT_ASSET_PORT_NUMBER = 1787;
671
+ //# sourceMappingURL=enterprise-contextualizer.js.map