@codiac.io/codiac-cli 1.2.175 → 1.2.202

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 (1274) hide show
  1. package/README.md +4696 -4634
  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 +1 -1
  7. package/dist/apis/codiac-api/common/api-client-base.d.ts +165 -0
  8. package/dist/apis/codiac-api/common/api-client-base.js +548 -0
  9. package/dist/apis/codiac-api/common/api-client-base.js.map +1 -0
  10. package/dist/apis/codiac-api/common/api-user-creds.d.ts +7 -0
  11. package/dist/apis/codiac-api/common/api-user-creds.js +19 -0
  12. package/dist/apis/codiac-api/common/api-user-creds.js.map +1 -0
  13. package/dist/apis/codiac-api/common/config-loader.d.ts +6 -0
  14. package/dist/apis/codiac-api/common/config-loader.js +19 -0
  15. package/dist/apis/codiac-api/common/endpoint-spec.d.ts +17 -0
  16. package/dist/apis/codiac-api/common/endpoint-spec.js +28 -0
  17. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +87 -0
  18. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.js +368 -0
  19. package/dist/apis/codiac-api/common/security/api-auth-methods-legacy.js.map +1 -0
  20. package/dist/apis/codiac-api/common/security/auth-constants.d.ts +15 -0
  21. package/dist/apis/codiac-api/common/security/auth-constants.js +22 -0
  22. package/dist/apis/codiac-api/common/security/i-auth-client.d.ts +44 -0
  23. package/dist/apis/codiac-api/common/security/i-auth-client.js +3 -0
  24. package/dist/apis/codiac-api/common/security/token-holder.d.ts +13 -0
  25. package/dist/apis/codiac-api/common/security/token-holder.js +18 -0
  26. package/dist/apis/codiac-api/common/utils.d.ts +23 -0
  27. package/dist/apis/codiac-api/common/utils.js +83 -0
  28. package/dist/apis/codiac-api/contracts/index.d.ts +1 -0
  29. package/dist/apis/codiac-api/contracts/index.js +5 -0
  30. package/dist/apis/codiac-api/gen/client-config.d.ts +10 -0
  31. package/dist/apis/codiac-api/gen/client-config.js +29 -0
  32. package/dist/apis/codiac-api/gen/client-config.js.map +1 -0
  33. package/dist/apis/codiac-api/gen/client.d.ts +1663 -0
  34. package/dist/apis/codiac-api/gen/client.js +15630 -0
  35. package/dist/apis/codiac-api/gen/client.js.map +1 -0
  36. package/dist/apis/codiac-api/gen/contracts.d.ts +2722 -0
  37. package/dist/apis/codiac-api/gen/contracts.js +403 -0
  38. package/dist/apis/codiac-api/index.d.ts +3 -0
  39. package/dist/apis/codiac-api/index.js +9 -0
  40. package/dist/apis/codiac-relay/common/api-client-base.d.ts +165 -0
  41. package/dist/apis/codiac-relay/common/api-client-base.js +548 -0
  42. package/dist/apis/codiac-relay/common/api-client-base.js.map +1 -0
  43. package/dist/apis/codiac-relay/common/api-user-creds.d.ts +7 -0
  44. package/dist/apis/codiac-relay/common/api-user-creds.js +19 -0
  45. package/dist/apis/codiac-relay/common/api-user-creds.js.map +1 -0
  46. package/dist/apis/codiac-relay/common/config-loader.d.ts +6 -0
  47. package/dist/apis/codiac-relay/common/config-loader.js +19 -0
  48. package/dist/apis/codiac-relay/common/endpoint-spec.d.ts +17 -0
  49. package/dist/apis/codiac-relay/common/endpoint-spec.js +28 -0
  50. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +87 -0
  51. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.js +368 -0
  52. package/dist/apis/codiac-relay/common/security/api-auth-methods-legacy.js.map +1 -0
  53. package/dist/apis/codiac-relay/common/security/auth-constants.d.ts +15 -0
  54. package/dist/apis/codiac-relay/common/security/auth-constants.js +22 -0
  55. package/dist/apis/codiac-relay/common/security/i-auth-client.d.ts +44 -0
  56. package/dist/apis/codiac-relay/common/security/i-auth-client.js +3 -0
  57. package/dist/apis/codiac-relay/common/security/token-holder.d.ts +13 -0
  58. package/dist/apis/codiac-relay/common/security/token-holder.js +18 -0
  59. package/dist/apis/codiac-relay/common/utils.d.ts +23 -0
  60. package/dist/apis/codiac-relay/common/utils.js +83 -0
  61. package/dist/apis/codiac-relay/contracts/index.d.ts +1 -0
  62. package/dist/apis/codiac-relay/contracts/index.js +5 -0
  63. package/dist/apis/codiac-relay/gen/client-config.d.ts +10 -0
  64. package/dist/apis/codiac-relay/gen/client-config.js +29 -0
  65. package/dist/apis/codiac-relay/gen/client-config.js.map +1 -0
  66. package/dist/apis/codiac-relay/gen/client.d.ts +244 -0
  67. package/dist/apis/codiac-relay/gen/client.js +1863 -0
  68. package/dist/apis/codiac-relay/gen/client.js.map +1 -0
  69. package/dist/apis/codiac-relay/gen/contracts.d.ts +3111 -0
  70. package/dist/apis/codiac-relay/gen/contracts.js +435 -0
  71. package/dist/apis/codiac-relay/index.d.ts +3 -0
  72. package/dist/apis/codiac-relay/index.js +9 -0
  73. package/dist/cli-common/ImagesList.js +67 -0
  74. package/dist/cli-common/argument-manager.d.ts +28 -0
  75. package/dist/cli-common/argument-manager.js +195 -0
  76. package/dist/cli-common/built-in-cli-user-input.d.ts +18 -0
  77. package/dist/cli-common/built-in-cli-user-input.js +310 -0
  78. package/dist/cli-common/built-in-cli-user-input.js.map +1 -0
  79. package/dist/cli-common/cli-interfaces.js +7 -0
  80. package/dist/cli-common/command-base.d.ts +72 -0
  81. package/dist/cli-common/command-base.js +182 -0
  82. package/dist/cli-common/entities/index.d.ts +1 -0
  83. package/dist/cli-common/entities/index.js +5 -0
  84. package/dist/cli-common/entities/prompt-choice.d.ts +7 -0
  85. package/dist/cli-common/entities/prompt-choice.js +3 -0
  86. package/dist/cli-common/file-selector.d.ts +48 -0
  87. package/dist/cli-common/file-selector.js +187 -0
  88. package/dist/cli-common/i-user-input-provider.js +19 -0
  89. package/dist/cli-common/index.d.ts +4 -0
  90. package/dist/cli-common/index.js +11 -0
  91. package/dist/cli-common/mock-ui.d.ts +27 -0
  92. package/dist/cli-common/mock-ui.js +83 -0
  93. package/dist/cli-common/prompt-select-fuzzy.d.ts +19 -0
  94. package/dist/cli-common/prompt-select-fuzzy.js +119 -0
  95. package/dist/cli-common/prompt-select-fuzzy.js.map +1 -0
  96. package/dist/cli-common/tenant-contextualizer.js +436 -0
  97. package/dist/cli-common/test/tenant-contextualizer.spec.js +143 -0
  98. package/dist/cli-entities/output-format-enum.d.ts +7 -0
  99. package/dist/cli-entities/output-format-enum.js +12 -0
  100. package/dist/cli-entities/prompt-choice.js +6 -0
  101. package/dist/codiac-constants.d.ts +35 -0
  102. package/dist/codiac-constants.js +41 -0
  103. package/dist/codiac-entities/asset-binding.d.ts +12 -0
  104. package/dist/codiac-entities/asset-binding.js +18 -0
  105. package/dist/codiac-entities/azure-container-registry.d.ts +4 -0
  106. package/dist/codiac-entities/azure-container-registry.js +3 -0
  107. package/dist/codiac-entities/azure-service-principal.d.ts +23 -0
  108. package/dist/codiac-entities/azure-service-principal.js +24 -0
  109. package/dist/codiac-entities/cloud-account-ref.d.ts +28 -0
  110. package/dist/codiac-entities/cloud-account-ref.js +37 -0
  111. package/dist/codiac-entities/deployment-temp.js +133 -0
  112. package/dist/codiac-entities/i-cloud-account-ref.d.ts +5 -0
  113. package/dist/codiac-entities/i-cloud-account-ref.js +3 -0
  114. package/dist/command-base-enterprise.d.ts +121 -0
  115. package/dist/command-base-enterprise.js +524 -0
  116. package/dist/command-base-tenantless.d.ts +44 -0
  117. package/dist/command-base-tenantless.js +180 -0
  118. package/dist/commands/asset/create.d.ts +42 -0
  119. package/dist/commands/asset/create.js +467 -0
  120. package/dist/commands/asset/destroy.d.ts +20 -0
  121. package/dist/commands/asset/destroy.js +129 -0
  122. package/dist/commands/asset/helm.d.ts +23 -0
  123. package/dist/commands/asset/helm.js +153 -0
  124. package/dist/commands/asset/list.d.ts +28 -0
  125. package/dist/commands/asset/list.js +172 -0
  126. package/dist/commands/asset/probe/create.d.ts +38 -0
  127. package/dist/commands/asset/probe/create.js +187 -0
  128. package/dist/commands/asset/recycle.d.ts +23 -0
  129. package/dist/commands/asset/recycle.js +175 -0
  130. package/dist/commands/asset/view.d.ts +188 -0
  131. package/dist/commands/asset/view.js +1365 -0
  132. package/dist/commands/asset/volume/create.d.ts +23 -0
  133. package/dist/commands/asset/volume/create.js +176 -0
  134. package/dist/commands/asset/volume/delete.d.ts +19 -0
  135. package/dist/commands/asset/volume/delete.js +112 -0
  136. package/dist/commands/asset/volume/list.d.ts +19 -0
  137. package/dist/commands/asset/volume/list.js +70 -0
  138. package/dist/commands/branch/current.d.ts +10 -0
  139. package/dist/commands/branch/current.js +34 -0
  140. package/dist/commands/branch/list.d.ts +15 -0
  141. package/dist/commands/branch/list.js +56 -0
  142. package/dist/commands/branch.d.ts +12 -0
  143. package/dist/commands/branch.js +42 -0
  144. package/dist/commands/build.d.ts +38 -0
  145. package/dist/commands/build.js +120 -0
  146. package/dist/commands/cabinet/create.d.ts +21 -0
  147. package/dist/commands/cabinet/create.js +108 -0
  148. package/dist/commands/cabinet/list.d.ts +23 -0
  149. package/dist/commands/cabinet/list.js +134 -0
  150. package/dist/commands/cabinet/obliterate.d.ts +20 -0
  151. package/dist/commands/cabinet/obliterate.js +83 -0
  152. package/dist/commands/cli.d.ts +10 -0
  153. package/dist/commands/cli.js +100 -0
  154. package/dist/commands/commit.d.ts +11 -0
  155. package/dist/commands/commit.js +40 -0
  156. package/dist/commands/config/add.d.ts +78 -0
  157. package/dist/commands/config/add.js +560 -0
  158. package/dist/commands/config/delete.d.ts +18 -0
  159. package/dist/commands/config/delete.js +119 -0
  160. package/dist/commands/config/deploy.d.ts +22 -0
  161. package/dist/commands/config/deploy.js +125 -0
  162. package/dist/commands/config/import.d.ts +27 -0
  163. package/dist/commands/config/import.js +196 -0
  164. package/dist/commands/config/view.d.ts +25 -0
  165. package/dist/commands/config/view.js +121 -0
  166. package/dist/commands/csp/login.d.ts +18 -0
  167. package/dist/commands/csp/login.js +123 -0
  168. package/dist/commands/csp/logout.d.ts +15 -0
  169. package/dist/commands/csp/logout.js +74 -0
  170. package/dist/commands/dep/create.d.ts +13 -0
  171. package/dist/commands/dep/create.js +41 -0
  172. package/dist/commands/dep/install.d.ts +9 -0
  173. package/dist/commands/dep/install.js +30 -0
  174. package/dist/commands/dep/list.d.ts +55 -0
  175. package/dist/commands/dep/list.js +98 -0
  176. package/dist/commands/dep/remove.d.ts +12 -0
  177. package/dist/commands/dep/remove.js +62 -0
  178. package/dist/commands/dep/source.d.ts +13 -0
  179. package/dist/commands/dep/source.js +83 -0
  180. package/dist/commands/dep/syncup.d.ts +11 -0
  181. package/dist/commands/dep/syncup.js +54 -0
  182. package/dist/commands/dep/unsource.d.ts +14 -0
  183. package/dist/commands/dep/unsource.js +68 -0
  184. package/dist/commands/dep/upgrade.d.ts +44 -0
  185. package/dist/commands/dep/upgrade.js +244 -0
  186. package/dist/commands/dep.d.ts +12 -0
  187. package/dist/commands/dep.js +51 -0
  188. package/dist/commands/deploy.d.ts +38 -0
  189. package/dist/commands/deploy.js +386 -0
  190. package/dist/commands/enterprise/create.d.ts +20 -0
  191. package/dist/commands/enterprise/create.js +98 -0
  192. package/dist/commands/enterprise/list.d.ts +14 -0
  193. package/dist/commands/enterprise/list.js +84 -0
  194. package/dist/commands/env/add.d.ts +22 -0
  195. package/dist/commands/env/add.js +200 -0
  196. package/dist/commands/environment/create.d.ts +19 -0
  197. package/dist/commands/environment/create.js +89 -0
  198. package/dist/commands/environment/list.d.ts +25 -0
  199. package/dist/commands/environment/list.js +158 -0
  200. package/dist/commands/filestore/capture.d.ts +31 -0
  201. package/dist/commands/filestore/capture.js +342 -0
  202. package/dist/commands/host/map.d.ts +33 -0
  203. package/dist/commands/host/map.js +347 -0
  204. package/dist/commands/identity/delete.d.ts +15 -0
  205. package/dist/commands/identity/delete.js +83 -0
  206. package/dist/commands/identity/list.d.ts +11 -0
  207. package/dist/commands/identity/list.js +43 -0
  208. package/dist/commands/identity.d.ts +22 -0
  209. package/dist/commands/identity.js +77 -0
  210. package/dist/commands/imageRegistry/capture.d.ts +27 -0
  211. package/dist/commands/imageRegistry/capture.js +160 -0
  212. package/dist/commands/imageRegistry/forget.d.ts +23 -0
  213. package/dist/commands/imageRegistry/forget.js +161 -0
  214. package/dist/commands/imageRegistry/pullSecret/set.d.ts +27 -0
  215. package/dist/commands/imageRegistry/pullSecret/set.js +300 -0
  216. package/dist/commands/imageRegistry/pullSecret/unset.d.ts +24 -0
  217. package/dist/commands/imageRegistry/pullSecret/unset.js +243 -0
  218. package/dist/commands/images/add.d.ts +25 -0
  219. package/dist/commands/images/add.js +76 -0
  220. package/dist/commands/images/list.d.ts +14 -0
  221. package/dist/commands/images/list.js +72 -0
  222. package/dist/commands/images/patch.d.ts +14 -0
  223. package/dist/commands/images/patch.js +93 -0
  224. package/dist/commands/images/remove.d.ts +12 -0
  225. package/dist/commands/images/remove.js +38 -0
  226. package/dist/commands/images/version/bump.d.ts +18 -0
  227. package/dist/commands/images/version/bump.js +61 -0
  228. package/dist/commands/images/version.d.ts +16 -0
  229. package/dist/commands/images/version.js +65 -0
  230. package/dist/commands/init.d.ts +17 -0
  231. package/dist/commands/init.js +131 -0
  232. package/dist/commands/kit/create.d.ts +25 -0
  233. package/dist/commands/kit/create.js +142 -0
  234. package/dist/commands/login.d.ts +22 -0
  235. package/dist/commands/login.js +93 -0
  236. package/dist/commands/logout.d.ts +8 -0
  237. package/dist/commands/logout.js +37 -0
  238. package/dist/commands/merge.d.ts +12 -0
  239. package/dist/commands/merge.js +43 -0
  240. package/dist/commands/noc/cluster/create.d.ts +28 -0
  241. package/dist/commands/noc/cluster/create.js +133 -0
  242. package/dist/commands/noc/cluster/deinit.d.ts +17 -0
  243. package/dist/commands/noc/cluster/deinit.js +117 -0
  244. package/dist/commands/noc/cluster/destroy.d.ts +20 -0
  245. package/dist/commands/noc/cluster/destroy.js +138 -0
  246. package/dist/commands/noc/cluster/forget.d.ts +16 -0
  247. package/dist/commands/noc/cluster/forget.js +137 -0
  248. package/dist/commands/noc/cluster/grant.d.ts +24 -0
  249. package/dist/commands/noc/cluster/grant.js +160 -0
  250. package/dist/commands/noc/cluster/init.d.ts +17 -0
  251. package/dist/commands/noc/cluster/init.js +117 -0
  252. package/dist/commands/noc/cluster/list.d.ts +21 -0
  253. package/dist/commands/noc/cluster/list.js +84 -0
  254. package/dist/commands/noc/cluster/recreate.d.ts +28 -0
  255. package/dist/commands/noc/cluster/recreate.js +186 -0
  256. package/dist/commands/pkg/add.d.ts +15 -0
  257. package/dist/commands/pkg/add.js +43 -0
  258. package/dist/commands/pkg/list.d.ts +9 -0
  259. package/dist/commands/pkg/list.js +33 -0
  260. package/dist/commands/pkg/patch.d.ts +13 -0
  261. package/dist/commands/pkg/patch.js +79 -0
  262. package/dist/commands/pkg/remove.d.ts +12 -0
  263. package/dist/commands/pkg/remove.js +70 -0
  264. package/dist/commands/portal.d.ts +11 -0
  265. package/dist/commands/portal.js +82 -0
  266. package/dist/commands/publish.d.ts +21 -0
  267. package/dist/commands/publish.js +52 -0
  268. package/dist/commands/pull.d.ts +13 -0
  269. package/dist/commands/pull.js +30 -0
  270. package/dist/commands/push.d.ts +13 -0
  271. package/dist/commands/push.js +30 -0
  272. package/dist/commands/run.d.ts +35 -0
  273. package/dist/commands/run.js +194 -0
  274. package/dist/commands/secretStore/capture.d.ts +27 -0
  275. package/dist/commands/secretStore/capture.js +175 -0
  276. package/dist/commands/secretStore/forget.d.ts +20 -0
  277. package/dist/commands/secretStore/forget.js +147 -0
  278. package/dist/commands/stage.d.ts +13 -0
  279. package/dist/commands/stage.js +65 -0
  280. package/dist/commands/stash.d.ts +13 -0
  281. package/dist/commands/stash.js +31 -0
  282. package/dist/commands/status.d.ts +12 -0
  283. package/dist/commands/status.js +49 -0
  284. package/dist/commands/stop.d.ts +10 -0
  285. package/dist/commands/stop.js +52 -0
  286. package/dist/commands/switch.d.ts +11 -0
  287. package/dist/commands/switch.js +42 -0
  288. package/dist/commands/sync.d.ts +14 -0
  289. package/dist/commands/sync.js +21 -0
  290. package/dist/commands/tenant/create.d.ts +27 -0
  291. package/dist/commands/tenant/create.js +120 -0
  292. package/dist/commands/tenant/switch.d.ts +24 -0
  293. package/dist/commands/tenant/switch.js +109 -0
  294. package/dist/commands/test.d.ts +13 -0
  295. package/dist/commands/test.js +32 -0
  296. package/dist/commands/test.js.map +1 -0
  297. package/dist/commands/testent.d.ts +13 -0
  298. package/dist/commands/testent.js +33 -0
  299. package/dist/commands/testent.js.map +1 -0
  300. package/dist/commands/unstage.d.ts +12 -0
  301. package/dist/commands/unstage.js +58 -0
  302. package/dist/commands/whereami.d.ts +15 -0
  303. package/dist/commands/whereami.js +123 -0
  304. package/dist/commands/whoami.d.ts +8 -0
  305. package/dist/commands/whoami.js +40 -0
  306. package/dist/errors/NoMembershipError.d.ts +8 -0
  307. package/dist/errors/NoMembershipError.js +15 -0
  308. package/dist/index.d.ts +1 -0
  309. package/dist/index.js +17 -0
  310. package/dist/log-update-wrapper.d.ts +24 -0
  311. package/dist/log-update-wrapper.js +29 -0
  312. package/dist/log4js-logger.d.ts +26 -0
  313. package/dist/log4js-logger.js +138 -0
  314. package/dist/log4js-logger.js.map +1 -0
  315. package/dist/ops/INTERFACES_CLI.d.ts +3 -0
  316. package/dist/ops/INTERFACES_CLI.js +8 -0
  317. package/dist/ops/LocalOps.d.ts +417 -0
  318. package/dist/ops/LocalOps.js +3122 -0
  319. package/dist/ops/LocalOps.js.map +1 -0
  320. package/dist/ops/azure-container-registry-client/azure-container-registry-client.js +148 -0
  321. package/dist/ops/cli-path-walker.js +55 -0
  322. package/dist/ops/codiac-entities/dependency.d.ts +5 -0
  323. package/dist/ops/codiac-entities/dependency.js +11 -0
  324. package/dist/ops/codiac-entities/index.d.ts +1 -0
  325. package/dist/ops/codiac-entities/index.js +5 -0
  326. package/dist/ops/composite-image-registry-client.js +74 -0
  327. package/dist/ops/data/cli-context-repo.d.ts +61 -0
  328. package/dist/ops/data/cli-context-repo.js +270 -0
  329. package/dist/ops/data/cli-context-repo.js.map +1 -0
  330. package/dist/ops/data/index.d.ts +2 -0
  331. package/dist/ops/data/index.js +6 -0
  332. package/dist/ops/data/npm-config-repo.d.ts +13 -0
  333. package/dist/ops/data/npm-config-repo.js +65 -0
  334. package/dist/ops/docker-config.js +131 -0
  335. package/dist/ops/docker-constants.js +22 -0
  336. package/dist/ops/docker-credentials-store.js +238 -0
  337. package/dist/ops/docker-registry-api-client/docker-registry-api-client.js +289 -0
  338. package/dist/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -0
  339. package/dist/ops/docker-registry-api-client/entities/blob-sum.js +13 -0
  340. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -0
  341. package/dist/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +10 -0
  342. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -0
  343. package/dist/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +36 -0
  344. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -0
  345. package/dist/ops/docker-registry-api-client/entities/i-docker-error-response.js +52 -0
  346. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -0
  347. package/dist/ops/docker-registry-api-client/entities/i-docker-list-response.js +3 -0
  348. package/dist/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -0
  349. package/dist/ops/docker-registry-api-client/entities/image-repository.js +30 -0
  350. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -0
  351. package/dist/ops/docker-registry-api-client/entities/image-tag-criteria.js +14 -0
  352. package/dist/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -0
  353. package/dist/ops/docker-registry-api-client/entities/image-tag-list.js +13 -0
  354. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -0
  355. package/dist/ops/docker-registry-api-client/entities/manifest-criteria.js +15 -0
  356. package/dist/ops/docker-registry-api-client/entities/manifest.d.ts +15 -0
  357. package/dist/ops/docker-registry-api-client/entities/manifest.js +21 -0
  358. package/dist/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -0
  359. package/dist/ops/docker-registry-api-client/entities/repository-criteria.js +24 -0
  360. package/dist/ops/docker-registry-api-client/entities/token-response.d.ts +15 -0
  361. package/dist/ops/docker-registry-api-client/entities/token-response.js +15 -0
  362. package/dist/ops/docker-registry-api-client/entities/token.d.ts +17 -0
  363. package/dist/ops/docker-registry-api-client/entities/token.js +22 -0
  364. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -0
  365. package/dist/ops/docker-registry-api-client/entities/version-check-criteria.js +10 -0
  366. package/dist/ops/dx-constants.d.ts +26 -0
  367. package/dist/ops/dx-constants.js +43 -0
  368. package/dist/ops/entities/ImageBuildContext.d.ts +12 -0
  369. package/dist/ops/entities/ImageBuildContext.js +19 -0
  370. package/dist/ops/entities/PipelineContext.d.ts +21 -0
  371. package/dist/ops/entities/PipelineContext.js +23 -0
  372. package/dist/ops/entities/TenantContext.d.ts +10 -0
  373. package/dist/ops/entities/TenantContext.js +16 -0
  374. package/dist/ops/entities/ThaulConfig.js +30 -0
  375. package/dist/ops/entities/azure-service-principal.d.ts +23 -0
  376. package/dist/ops/entities/azure-service-principal.js +24 -0
  377. package/dist/ops/entities/better-logger.js +2 -0
  378. package/dist/ops/entities/branch.d.ts +13 -0
  379. package/dist/ops/entities/branch.js +16 -0
  380. package/dist/ops/entities/cli-config.d.ts +48 -0
  381. package/dist/ops/entities/cli-config.js +61 -0
  382. package/dist/ops/entities/cli-config.js.map +1 -0
  383. package/dist/ops/entities/docker-image.d.ts +60 -0
  384. package/dist/ops/entities/docker-image.js +3 -0
  385. package/dist/ops/entities/helm-spec.d.ts +15 -0
  386. package/dist/ops/entities/helm-spec.js +23 -0
  387. package/dist/ops/entities/index.d.ts +4 -0
  388. package/dist/ops/entities/index.js +12 -0
  389. package/dist/ops/entities/operation-meta.d.ts +8 -0
  390. package/dist/ops/entities/operation-meta.js +19 -0
  391. package/dist/ops/entities/operation-meta.js.map +1 -0
  392. package/dist/ops/entities/scaffolding.d.ts +19 -0
  393. package/dist/ops/entities/scaffolding.js +21 -0
  394. package/dist/ops/extensions/azart-identity-adapter.d.ts +19 -0
  395. package/dist/ops/extensions/azart-identity-adapter.js +97 -0
  396. package/dist/ops/extensions/npm-identity-adapter-base.d.ts +13 -0
  397. package/dist/ops/extensions/npm-identity-adapter-base.js +3 -0
  398. package/dist/ops/extensions/npmjs-identity-adapter.d.ts +13 -0
  399. package/dist/ops/extensions/npmjs-identity-adapter.js +64 -0
  400. package/dist/ops/git-ops.d.ts +8 -0
  401. package/dist/ops/git-ops.js +14 -0
  402. package/dist/ops/i-client-for-image-registry.js +17 -0
  403. package/dist/ops/i-identity-handler.d.ts +33 -0
  404. package/dist/ops/i-identity-handler.js +165 -0
  405. package/dist/ops/i-output-styler.js +17 -0
  406. package/dist/ops/index.d.ts +12 -0
  407. package/dist/ops/index.js +15 -0
  408. package/dist/ops/json-utils.js +59 -0
  409. package/dist/ops/no-style-output-styler.js +30 -0
  410. package/dist/ops/oauth2-client.ts/oauth2-client.d.ts +23 -0
  411. package/dist/ops/oauth2-client.ts/oauth2-client.js +64 -0
  412. package/dist/ops/oauth2-client.ts/oauth2-client.js.map +1 -0
  413. package/dist/ops/project-initializer.d.ts +36 -0
  414. package/dist/ops/project-initializer.js +219 -0
  415. package/dist/ops/scaffolding/base-scaffolding.d.ts +7 -0
  416. package/dist/ops/scaffolding/base-scaffolding.js +21 -0
  417. package/dist/ops/scaffolding/base-scaffolding.js.map +1 -0
  418. package/dist/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -0
  419. package/dist/ops/scaffolding/codiac-api-scaffolding.js +64 -0
  420. package/dist/ops/scaffolding/codiac-api-scaffolding.js.map +1 -0
  421. package/dist/ops/scaffolding/typescript-scaffolding.d.ts +15 -0
  422. package/dist/ops/scaffolding/typescript-scaffolding.js +163 -0
  423. package/dist/ops/scaffolding/typescript-scaffolding.js.map +1 -0
  424. package/dist/ops/test/mock-ui.d.ts +26 -0
  425. package/dist/ops/test/mock-ui.js +88 -0
  426. package/dist/ops/test/test-extensions.d.ts +13 -0
  427. package/dist/ops/test/test-extensions.js +71 -0
  428. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -0
  429. package/dist/ops/test/when-a-recursive-file-search-is-run.spec.js +55 -0
  430. package/dist/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -0
  431. package/dist/ops/test/when-git-branchline-is-attempted.spec.js +38 -0
  432. package/dist/ops/test/when-versions-are-parsed.spec.d.ts +2 -0
  433. package/dist/ops/test/when-versions-are-parsed.spec.js +62 -0
  434. package/dist/ops/throwing-user-input-provider.js +37 -0
  435. package/dist/ops/workspace-versioner.d.ts +122 -0
  436. package/dist/ops/workspace-versioner.js +292 -0
  437. package/dist/ops/workspace-versioner.js.map +1 -0
  438. package/dist/prettify.d.ts +7 -0
  439. package/dist/prettify.js +24 -0
  440. package/dist/read-stdin.d.ts +2 -0
  441. package/dist/read-stdin.js +29 -0
  442. package/dist/relay/contracts/contracts.d.ts +207 -0
  443. package/dist/relay/contracts/contracts.js +230 -0
  444. package/dist/relay/extended-relay-client.d.ts +27 -0
  445. package/dist/relay/extended-relay-client.js +28 -0
  446. package/dist/relay/relay-container.d.ts +41 -0
  447. package/dist/relay/relay-container.js +298 -0
  448. package/dist/relay/relay-container.js.map +1 -0
  449. package/dist/relay/wsclient/relay-socket-listener.d.ts +68 -0
  450. package/dist/relay/wsclient/relay-socket-listener.js +165 -0
  451. package/dist/relay/wsclient/relay-socket-listener.js.map +1 -0
  452. package/dist/relay/wsclient/relay-websocket-client.d.ts +33 -0
  453. package/dist/relay/wsclient/relay-websocket-client.js +179 -0
  454. package/dist/relay/wsclient/relay-websocket-client.js.map +1 -0
  455. package/dist/relay/wsclient/rx-websocket-subject.d.ts +25 -0
  456. package/dist/relay/wsclient/rx-websocket-subject.js +134 -0
  457. package/dist/relay/wsclient/rx-websocket-subject.js.map +1 -0
  458. package/dist/relay/wsclient/socket-contracts.d.ts +22 -0
  459. package/dist/relay/wsclient/socket-contracts.js +3 -0
  460. package/dist/standard-probes.d.ts +5 -0
  461. package/dist/standard-probes.js +22 -0
  462. package/dist/uilogic/build-configurator.d.ts +21 -0
  463. package/dist/uilogic/build-configurator.js +111 -0
  464. package/dist/uilogic/cloud-provider-contextualizer.d.ts +46 -0
  465. package/dist/uilogic/cloud-provider-contextualizer.js +194 -0
  466. package/dist/uilogic/cloud-provider-contextualizer.js.map +1 -0
  467. package/dist/uilogic/cloud-resource-configurator-factory.d.ts +41 -0
  468. package/dist/uilogic/cloud-resource-configurator-factory.js +158 -0
  469. package/dist/uilogic/cloud-resource-configurator-factory.js.map +1 -0
  470. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +38 -0
  471. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js +348 -0
  472. package/dist/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -0
  473. package/dist/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +78 -0
  474. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +42 -0
  475. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +248 -0
  476. package/dist/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js.map +1 -0
  477. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +110 -0
  478. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js +782 -0
  479. package/dist/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +1 -0
  480. package/dist/uilogic/cloud-resource-configurators/azure-types.js +10 -0
  481. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +24 -0
  482. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +106 -0
  483. package/dist/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +1 -0
  484. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +16 -0
  485. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js +45 -0
  486. package/dist/uilogic/cloud-resource-configurators/helm-resource-configurator.js.map +1 -0
  487. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +18 -0
  488. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +62 -0
  489. package/dist/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js.map +1 -0
  490. package/dist/uilogic/enterprise-contextualizer.d.ts +76 -0
  491. package/dist/uilogic/enterprise-contextualizer.js +671 -0
  492. package/dist/uilogic/environment-contextualizer.d.ts +15 -0
  493. package/dist/uilogic/environment-contextualizer.js +43 -0
  494. package/dist/uilogic/i-cluster-configurator.d.ts +9 -0
  495. package/dist/uilogic/i-cluster-configurator.js +3 -0
  496. package/dist/uilogic/i-login-configurator.d.ts +6 -0
  497. package/dist/uilogic/i-login-configurator.js +3 -0
  498. package/dist/uilogic/i-registry-configurator.d.ts +6 -0
  499. package/dist/uilogic/i-registry-configurator.js +3 -0
  500. package/dist/uilogic/i-secret-store-configurator.d.ts +7 -0
  501. package/dist/uilogic/i-secret-store-configurator.js +3 -0
  502. package/dist/uilogic/image-configurator.d.ts +133 -0
  503. package/dist/uilogic/image-configurator.js +578 -0
  504. package/dist/uilogic/image-configurator.js.map +1 -0
  505. package/dist/uilogic/image-contextualizer.d.ts +24 -0
  506. package/dist/uilogic/image-contextualizer.js +90 -0
  507. package/dist/uilogic/image-contextualizer.js.map +1 -0
  508. package/dist/uilogic/image-registry-contextualizer.d.ts +28 -0
  509. package/dist/uilogic/image-registry-contextualizer.js +127 -0
  510. package/dist/uilogic/image-registry-contextualizer.js.map +1 -0
  511. package/dist/uilogic/index.d.ts +9 -0
  512. package/dist/uilogic/index.js +14 -0
  513. package/dist/uilogic/prompt-select-fuzzy.js +139 -0
  514. package/dist/uilogic/render-methods.d.ts +12 -0
  515. package/dist/uilogic/render-methods.js +65 -0
  516. package/dist/uilogic/tenant-contextualizer.d.ts +79 -0
  517. package/dist/uilogic/tenant-contextualizer.js +578 -0
  518. package/dist/user-context-loader.d.ts +60 -0
  519. package/dist/user-context-loader.js +184 -0
  520. package/oclif.manifest.json +67 -1
  521. package/package.json +149 -150
  522. package/scaffolding/api/.gitignore-scaffolding +68 -68
  523. package/scaffolding/api/.vscode/launch.json +16 -16
  524. package/scaffolding/api/.vscode/settings.json +7 -7
  525. package/scaffolding/api/.vscode/tasks.json +15 -15
  526. package/scaffolding/api/src/app-config.json +2 -2
  527. package/scaffolding/api/src/index.ts-scaffolding +13 -13
  528. package/scaffolding/api/src/myApiDef.ts-scaffolding +25 -25
  529. package/scaffolding/default/.gitignore-scaffolding +2 -2
  530. package/scaffolding/typescript/.gitignore-scaffolding +69 -69
  531. package/scaffolding/typescript/.vscode/launch.json +16 -16
  532. package/scaffolding/typescript/.vscode/settings.json +7 -7
  533. package/scaffolding/typescript/.vscode/tasks.json +15 -15
  534. package/lib/apis/codiac-api/common/api-client-base.d.ts +0 -165
  535. package/lib/apis/codiac-api/common/api-client-base.js +0 -548
  536. package/lib/apis/codiac-api/common/api-client-base.js.map +0 -1
  537. package/lib/apis/codiac-api/common/api-user-creds.d.ts +0 -7
  538. package/lib/apis/codiac-api/common/api-user-creds.js +0 -19
  539. package/lib/apis/codiac-api/common/api-user-creds.js.map +0 -1
  540. package/lib/apis/codiac-api/common/config-loader.d.ts +0 -6
  541. package/lib/apis/codiac-api/common/config-loader.js +0 -19
  542. package/lib/apis/codiac-api/common/endpoint-spec.d.ts +0 -17
  543. package/lib/apis/codiac-api/common/endpoint-spec.js +0 -28
  544. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +0 -87
  545. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js +0 -368
  546. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js.map +0 -1
  547. package/lib/apis/codiac-api/common/security/auth-constants.d.ts +0 -15
  548. package/lib/apis/codiac-api/common/security/auth-constants.js +0 -22
  549. package/lib/apis/codiac-api/common/security/i-auth-client.d.ts +0 -44
  550. package/lib/apis/codiac-api/common/security/i-auth-client.js +0 -3
  551. package/lib/apis/codiac-api/common/security/token-holder.d.ts +0 -13
  552. package/lib/apis/codiac-api/common/security/token-holder.js +0 -18
  553. package/lib/apis/codiac-api/common/utils.d.ts +0 -23
  554. package/lib/apis/codiac-api/common/utils.js +0 -83
  555. package/lib/apis/codiac-api/contracts/index.d.ts +0 -1
  556. package/lib/apis/codiac-api/contracts/index.js +0 -5
  557. package/lib/apis/codiac-api/gen/client-config.d.ts +0 -10
  558. package/lib/apis/codiac-api/gen/client-config.js +0 -29
  559. package/lib/apis/codiac-api/gen/client-config.js.map +0 -1
  560. package/lib/apis/codiac-api/gen/client.d.ts +0 -1663
  561. package/lib/apis/codiac-api/gen/client.js +0 -15630
  562. package/lib/apis/codiac-api/gen/client.js.map +0 -1
  563. package/lib/apis/codiac-api/gen/contracts.d.ts +0 -2722
  564. package/lib/apis/codiac-api/gen/contracts.js +0 -403
  565. package/lib/apis/codiac-api/index.d.ts +0 -3
  566. package/lib/apis/codiac-api/index.js +0 -9
  567. package/lib/apis/codiac-relay/common/api-client-base.d.ts +0 -165
  568. package/lib/apis/codiac-relay/common/api-client-base.js +0 -548
  569. package/lib/apis/codiac-relay/common/api-client-base.js.map +0 -1
  570. package/lib/apis/codiac-relay/common/api-user-creds.d.ts +0 -7
  571. package/lib/apis/codiac-relay/common/api-user-creds.js +0 -19
  572. package/lib/apis/codiac-relay/common/api-user-creds.js.map +0 -1
  573. package/lib/apis/codiac-relay/common/config-loader.d.ts +0 -6
  574. package/lib/apis/codiac-relay/common/config-loader.js +0 -19
  575. package/lib/apis/codiac-relay/common/endpoint-spec.d.ts +0 -17
  576. package/lib/apis/codiac-relay/common/endpoint-spec.js +0 -28
  577. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +0 -87
  578. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js +0 -368
  579. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js.map +0 -1
  580. package/lib/apis/codiac-relay/common/security/auth-constants.d.ts +0 -15
  581. package/lib/apis/codiac-relay/common/security/auth-constants.js +0 -22
  582. package/lib/apis/codiac-relay/common/security/i-auth-client.d.ts +0 -44
  583. package/lib/apis/codiac-relay/common/security/i-auth-client.js +0 -3
  584. package/lib/apis/codiac-relay/common/security/token-holder.d.ts +0 -13
  585. package/lib/apis/codiac-relay/common/security/token-holder.js +0 -18
  586. package/lib/apis/codiac-relay/common/utils.d.ts +0 -23
  587. package/lib/apis/codiac-relay/common/utils.js +0 -83
  588. package/lib/apis/codiac-relay/contracts/index.d.ts +0 -1
  589. package/lib/apis/codiac-relay/contracts/index.js +0 -5
  590. package/lib/apis/codiac-relay/gen/client-config.d.ts +0 -10
  591. package/lib/apis/codiac-relay/gen/client-config.js +0 -29
  592. package/lib/apis/codiac-relay/gen/client-config.js.map +0 -1
  593. package/lib/apis/codiac-relay/gen/client.d.ts +0 -244
  594. package/lib/apis/codiac-relay/gen/client.js +0 -1863
  595. package/lib/apis/codiac-relay/gen/client.js.map +0 -1
  596. package/lib/apis/codiac-relay/gen/contracts.d.ts +0 -3111
  597. package/lib/apis/codiac-relay/gen/contracts.js +0 -435
  598. package/lib/apis/codiac-relay/index.d.ts +0 -3
  599. package/lib/apis/codiac-relay/index.js +0 -9
  600. package/lib/cli-common/ImagesList.js +0 -67
  601. package/lib/cli-common/argument-manager.d.ts +0 -28
  602. package/lib/cli-common/argument-manager.js +0 -195
  603. package/lib/cli-common/built-in-cli-user-input.d.ts +0 -18
  604. package/lib/cli-common/built-in-cli-user-input.js +0 -310
  605. package/lib/cli-common/built-in-cli-user-input.js.map +0 -1
  606. package/lib/cli-common/cli-interfaces.js +0 -7
  607. package/lib/cli-common/command-base.d.ts +0 -72
  608. package/lib/cli-common/command-base.js +0 -182
  609. package/lib/cli-common/entities/index.d.ts +0 -1
  610. package/lib/cli-common/entities/index.js +0 -5
  611. package/lib/cli-common/entities/prompt-choice.d.ts +0 -7
  612. package/lib/cli-common/entities/prompt-choice.js +0 -3
  613. package/lib/cli-common/file-selector.d.ts +0 -48
  614. package/lib/cli-common/file-selector.js +0 -187
  615. package/lib/cli-common/i-user-input-provider.js +0 -19
  616. package/lib/cli-common/index.d.ts +0 -4
  617. package/lib/cli-common/index.js +0 -11
  618. package/lib/cli-common/mock-ui.d.ts +0 -27
  619. package/lib/cli-common/mock-ui.js +0 -83
  620. package/lib/cli-common/prompt-select-fuzzy.d.ts +0 -19
  621. package/lib/cli-common/prompt-select-fuzzy.js +0 -119
  622. package/lib/cli-common/prompt-select-fuzzy.js.map +0 -1
  623. package/lib/cli-common/tenant-contextualizer.js +0 -436
  624. package/lib/cli-common/test/tenant-contextualizer.spec.js +0 -143
  625. package/lib/cli-entities/output-format-enum.d.ts +0 -7
  626. package/lib/cli-entities/output-format-enum.js +0 -12
  627. package/lib/cli-entities/prompt-choice.js +0 -6
  628. package/lib/codiac-constants.d.ts +0 -35
  629. package/lib/codiac-constants.js +0 -41
  630. package/lib/codiac-entities/asset-binding.d.ts +0 -12
  631. package/lib/codiac-entities/asset-binding.js +0 -18
  632. package/lib/codiac-entities/azure-container-registry.d.ts +0 -4
  633. package/lib/codiac-entities/azure-container-registry.js +0 -3
  634. package/lib/codiac-entities/azure-service-principal.d.ts +0 -23
  635. package/lib/codiac-entities/azure-service-principal.js +0 -24
  636. package/lib/codiac-entities/cloud-account-ref.d.ts +0 -28
  637. package/lib/codiac-entities/cloud-account-ref.js +0 -37
  638. package/lib/codiac-entities/deployment-temp.js +0 -133
  639. package/lib/codiac-entities/i-cloud-account-ref.d.ts +0 -5
  640. package/lib/codiac-entities/i-cloud-account-ref.js +0 -3
  641. package/lib/command-base-enterprise.d.ts +0 -121
  642. package/lib/command-base-enterprise.js +0 -524
  643. package/lib/command-base-tenantless.d.ts +0 -44
  644. package/lib/command-base-tenantless.js +0 -180
  645. package/lib/commands/asset/create.d.ts +0 -42
  646. package/lib/commands/asset/create.js +0 -467
  647. package/lib/commands/asset/destroy.d.ts +0 -20
  648. package/lib/commands/asset/destroy.js +0 -129
  649. package/lib/commands/asset/helm.d.ts +0 -23
  650. package/lib/commands/asset/helm.js +0 -153
  651. package/lib/commands/asset/list.d.ts +0 -28
  652. package/lib/commands/asset/list.js +0 -172
  653. package/lib/commands/asset/probe/create.d.ts +0 -38
  654. package/lib/commands/asset/probe/create.js +0 -187
  655. package/lib/commands/asset/recycle.d.ts +0 -23
  656. package/lib/commands/asset/recycle.js +0 -175
  657. package/lib/commands/asset/view.d.ts +0 -188
  658. package/lib/commands/asset/view.js +0 -1365
  659. package/lib/commands/asset/volume/create.d.ts +0 -23
  660. package/lib/commands/asset/volume/create.js +0 -176
  661. package/lib/commands/asset/volume/delete.d.ts +0 -19
  662. package/lib/commands/asset/volume/delete.js +0 -112
  663. package/lib/commands/asset/volume/list.d.ts +0 -19
  664. package/lib/commands/asset/volume/list.js +0 -70
  665. package/lib/commands/branch/current.d.ts +0 -10
  666. package/lib/commands/branch/current.js +0 -34
  667. package/lib/commands/branch/list.d.ts +0 -15
  668. package/lib/commands/branch/list.js +0 -56
  669. package/lib/commands/branch.d.ts +0 -12
  670. package/lib/commands/branch.js +0 -42
  671. package/lib/commands/build.d.ts +0 -38
  672. package/lib/commands/build.js +0 -120
  673. package/lib/commands/cabinet/create.d.ts +0 -21
  674. package/lib/commands/cabinet/create.js +0 -108
  675. package/lib/commands/cabinet/list.d.ts +0 -23
  676. package/lib/commands/cabinet/list.js +0 -134
  677. package/lib/commands/cabinet/obliterate.d.ts +0 -20
  678. package/lib/commands/cabinet/obliterate.js +0 -83
  679. package/lib/commands/cli.d.ts +0 -10
  680. package/lib/commands/cli.js +0 -100
  681. package/lib/commands/commit.d.ts +0 -11
  682. package/lib/commands/commit.js +0 -40
  683. package/lib/commands/config/add.d.ts +0 -78
  684. package/lib/commands/config/add.js +0 -560
  685. package/lib/commands/config/delete.d.ts +0 -18
  686. package/lib/commands/config/delete.js +0 -119
  687. package/lib/commands/config/deploy.d.ts +0 -22
  688. package/lib/commands/config/deploy.js +0 -125
  689. package/lib/commands/config/import.d.ts +0 -27
  690. package/lib/commands/config/import.js +0 -196
  691. package/lib/commands/config/view.d.ts +0 -25
  692. package/lib/commands/config/view.js +0 -121
  693. package/lib/commands/csp/login.d.ts +0 -18
  694. package/lib/commands/csp/login.js +0 -123
  695. package/lib/commands/csp/logout.d.ts +0 -15
  696. package/lib/commands/csp/logout.js +0 -74
  697. package/lib/commands/dep/create.d.ts +0 -13
  698. package/lib/commands/dep/create.js +0 -41
  699. package/lib/commands/dep/install.d.ts +0 -9
  700. package/lib/commands/dep/install.js +0 -30
  701. package/lib/commands/dep/list.d.ts +0 -55
  702. package/lib/commands/dep/list.js +0 -98
  703. package/lib/commands/dep/remove.d.ts +0 -12
  704. package/lib/commands/dep/remove.js +0 -62
  705. package/lib/commands/dep/source.d.ts +0 -13
  706. package/lib/commands/dep/source.js +0 -83
  707. package/lib/commands/dep/syncup.d.ts +0 -11
  708. package/lib/commands/dep/syncup.js +0 -54
  709. package/lib/commands/dep/unsource.d.ts +0 -14
  710. package/lib/commands/dep/unsource.js +0 -68
  711. package/lib/commands/dep/upgrade.d.ts +0 -44
  712. package/lib/commands/dep/upgrade.js +0 -244
  713. package/lib/commands/dep.d.ts +0 -12
  714. package/lib/commands/dep.js +0 -51
  715. package/lib/commands/deploy.d.ts +0 -38
  716. package/lib/commands/deploy.js +0 -386
  717. package/lib/commands/enterprise/create.d.ts +0 -20
  718. package/lib/commands/enterprise/create.js +0 -98
  719. package/lib/commands/enterprise/list.d.ts +0 -14
  720. package/lib/commands/enterprise/list.js +0 -84
  721. package/lib/commands/env/add.d.ts +0 -22
  722. package/lib/commands/env/add.js +0 -200
  723. package/lib/commands/environment/create.d.ts +0 -19
  724. package/lib/commands/environment/create.js +0 -89
  725. package/lib/commands/environment/list.d.ts +0 -25
  726. package/lib/commands/environment/list.js +0 -158
  727. package/lib/commands/filestore/capture.d.ts +0 -31
  728. package/lib/commands/filestore/capture.js +0 -342
  729. package/lib/commands/host/map.d.ts +0 -33
  730. package/lib/commands/host/map.js +0 -347
  731. package/lib/commands/identity/delete.d.ts +0 -15
  732. package/lib/commands/identity/delete.js +0 -83
  733. package/lib/commands/identity/list.d.ts +0 -11
  734. package/lib/commands/identity/list.js +0 -43
  735. package/lib/commands/identity.d.ts +0 -22
  736. package/lib/commands/identity.js +0 -77
  737. package/lib/commands/imageRegistry/capture.d.ts +0 -27
  738. package/lib/commands/imageRegistry/capture.js +0 -160
  739. package/lib/commands/imageRegistry/forget.d.ts +0 -23
  740. package/lib/commands/imageRegistry/forget.js +0 -161
  741. package/lib/commands/imageRegistry/pullSecret/set.d.ts +0 -27
  742. package/lib/commands/imageRegistry/pullSecret/set.js +0 -300
  743. package/lib/commands/imageRegistry/pullSecret/unset.d.ts +0 -24
  744. package/lib/commands/imageRegistry/pullSecret/unset.js +0 -243
  745. package/lib/commands/images/add.d.ts +0 -25
  746. package/lib/commands/images/add.js +0 -76
  747. package/lib/commands/images/list.d.ts +0 -14
  748. package/lib/commands/images/list.js +0 -72
  749. package/lib/commands/images/patch.d.ts +0 -14
  750. package/lib/commands/images/patch.js +0 -93
  751. package/lib/commands/images/remove.d.ts +0 -12
  752. package/lib/commands/images/remove.js +0 -38
  753. package/lib/commands/images/version/bump.d.ts +0 -18
  754. package/lib/commands/images/version/bump.js +0 -61
  755. package/lib/commands/images/version.d.ts +0 -16
  756. package/lib/commands/images/version.js +0 -65
  757. package/lib/commands/init.d.ts +0 -17
  758. package/lib/commands/init.js +0 -131
  759. package/lib/commands/kit/create.d.ts +0 -25
  760. package/lib/commands/kit/create.js +0 -142
  761. package/lib/commands/login.d.ts +0 -22
  762. package/lib/commands/login.js +0 -93
  763. package/lib/commands/logout.d.ts +0 -8
  764. package/lib/commands/logout.js +0 -37
  765. package/lib/commands/merge.d.ts +0 -12
  766. package/lib/commands/merge.js +0 -43
  767. package/lib/commands/noc/cluster/create.d.ts +0 -28
  768. package/lib/commands/noc/cluster/create.js +0 -133
  769. package/lib/commands/noc/cluster/deinit.d.ts +0 -17
  770. package/lib/commands/noc/cluster/deinit.js +0 -117
  771. package/lib/commands/noc/cluster/destroy.d.ts +0 -20
  772. package/lib/commands/noc/cluster/destroy.js +0 -138
  773. package/lib/commands/noc/cluster/forget.d.ts +0 -16
  774. package/lib/commands/noc/cluster/forget.js +0 -137
  775. package/lib/commands/noc/cluster/grant.d.ts +0 -24
  776. package/lib/commands/noc/cluster/grant.js +0 -160
  777. package/lib/commands/noc/cluster/init.d.ts +0 -17
  778. package/lib/commands/noc/cluster/init.js +0 -117
  779. package/lib/commands/noc/cluster/list.d.ts +0 -21
  780. package/lib/commands/noc/cluster/list.js +0 -84
  781. package/lib/commands/noc/cluster/recreate.d.ts +0 -28
  782. package/lib/commands/noc/cluster/recreate.js +0 -186
  783. package/lib/commands/pkg/add.d.ts +0 -15
  784. package/lib/commands/pkg/add.js +0 -43
  785. package/lib/commands/pkg/list.d.ts +0 -9
  786. package/lib/commands/pkg/list.js +0 -33
  787. package/lib/commands/pkg/patch.d.ts +0 -13
  788. package/lib/commands/pkg/patch.js +0 -79
  789. package/lib/commands/pkg/remove.d.ts +0 -12
  790. package/lib/commands/pkg/remove.js +0 -70
  791. package/lib/commands/portal.d.ts +0 -11
  792. package/lib/commands/portal.js +0 -82
  793. package/lib/commands/publish.d.ts +0 -21
  794. package/lib/commands/publish.js +0 -52
  795. package/lib/commands/pull.d.ts +0 -13
  796. package/lib/commands/pull.js +0 -30
  797. package/lib/commands/push.d.ts +0 -13
  798. package/lib/commands/push.js +0 -30
  799. package/lib/commands/run.d.ts +0 -35
  800. package/lib/commands/run.js +0 -194
  801. package/lib/commands/secretStore/capture.d.ts +0 -27
  802. package/lib/commands/secretStore/capture.js +0 -175
  803. package/lib/commands/secretStore/forget.d.ts +0 -20
  804. package/lib/commands/secretStore/forget.js +0 -147
  805. package/lib/commands/stage.d.ts +0 -13
  806. package/lib/commands/stage.js +0 -65
  807. package/lib/commands/stash.d.ts +0 -13
  808. package/lib/commands/stash.js +0 -31
  809. package/lib/commands/status.d.ts +0 -12
  810. package/lib/commands/status.js +0 -49
  811. package/lib/commands/stop.d.ts +0 -10
  812. package/lib/commands/stop.js +0 -52
  813. package/lib/commands/switch.d.ts +0 -11
  814. package/lib/commands/switch.js +0 -42
  815. package/lib/commands/sync.d.ts +0 -14
  816. package/lib/commands/sync.js +0 -21
  817. package/lib/commands/tenant/create.d.ts +0 -27
  818. package/lib/commands/tenant/create.js +0 -120
  819. package/lib/commands/tenant/switch.d.ts +0 -24
  820. package/lib/commands/tenant/switch.js +0 -109
  821. package/lib/commands/unstage.d.ts +0 -12
  822. package/lib/commands/unstage.js +0 -58
  823. package/lib/commands/whereami.d.ts +0 -15
  824. package/lib/commands/whereami.js +0 -123
  825. package/lib/commands/whoami.d.ts +0 -8
  826. package/lib/commands/whoami.js +0 -40
  827. package/lib/errors/NoMembershipError.d.ts +0 -8
  828. package/lib/errors/NoMembershipError.js +0 -15
  829. package/lib/index.d.ts +0 -1
  830. package/lib/index.js +0 -17
  831. package/lib/log-update-wrapper.d.ts +0 -24
  832. package/lib/log-update-wrapper.js +0 -29
  833. package/lib/log4js-logger.d.ts +0 -26
  834. package/lib/log4js-logger.js +0 -138
  835. package/lib/log4js-logger.js.map +0 -1
  836. package/lib/ops/INTERFACES_CLI.d.ts +0 -3
  837. package/lib/ops/INTERFACES_CLI.js +0 -8
  838. package/lib/ops/LocalOps.d.ts +0 -417
  839. package/lib/ops/LocalOps.js +0 -3122
  840. package/lib/ops/LocalOps.js.map +0 -1
  841. package/lib/ops/azure-container-registry-client/azure-container-registry-client.js +0 -148
  842. package/lib/ops/cli-path-walker.js +0 -55
  843. package/lib/ops/codiac-entities/dependency.d.ts +0 -5
  844. package/lib/ops/codiac-entities/dependency.js +0 -11
  845. package/lib/ops/codiac-entities/index.d.ts +0 -1
  846. package/lib/ops/codiac-entities/index.js +0 -5
  847. package/lib/ops/composite-image-registry-client.js +0 -74
  848. package/lib/ops/data/cli-context-repo.d.ts +0 -61
  849. package/lib/ops/data/cli-context-repo.js +0 -270
  850. package/lib/ops/data/cli-context-repo.js.map +0 -1
  851. package/lib/ops/data/index.d.ts +0 -2
  852. package/lib/ops/data/index.js +0 -6
  853. package/lib/ops/data/npm-config-repo.d.ts +0 -13
  854. package/lib/ops/data/npm-config-repo.js +0 -65
  855. package/lib/ops/docker-config.js +0 -131
  856. package/lib/ops/docker-constants.js +0 -22
  857. package/lib/ops/docker-credentials-store.js +0 -238
  858. package/lib/ops/docker-registry-api-client/docker-registry-api-client.js +0 -289
  859. package/lib/ops/docker-registry-api-client/entities/blob-sum.d.ts +0 -7
  860. package/lib/ops/docker-registry-api-client/entities/blob-sum.js +0 -13
  861. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +0 -5
  862. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +0 -10
  863. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +0 -30
  864. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +0 -36
  865. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +0 -55
  866. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js +0 -52
  867. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +0 -7
  868. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js +0 -3
  869. package/lib/ops/docker-registry-api-client/entities/image-repository.d.ts +0 -31
  870. package/lib/ops/docker-registry-api-client/entities/image-repository.js +0 -30
  871. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +0 -8
  872. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js +0 -14
  873. package/lib/ops/docker-registry-api-client/entities/image-tag-list.d.ts +0 -7
  874. package/lib/ops/docker-registry-api-client/entities/image-tag-list.js +0 -13
  875. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +0 -9
  876. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js +0 -15
  877. package/lib/ops/docker-registry-api-client/entities/manifest.d.ts +0 -15
  878. package/lib/ops/docker-registry-api-client/entities/manifest.js +0 -21
  879. package/lib/ops/docker-registry-api-client/entities/repository-criteria.d.ts +0 -16
  880. package/lib/ops/docker-registry-api-client/entities/repository-criteria.js +0 -24
  881. package/lib/ops/docker-registry-api-client/entities/token-response.d.ts +0 -15
  882. package/lib/ops/docker-registry-api-client/entities/token-response.js +0 -15
  883. package/lib/ops/docker-registry-api-client/entities/token.d.ts +0 -17
  884. package/lib/ops/docker-registry-api-client/entities/token.js +0 -22
  885. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +0 -4
  886. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js +0 -10
  887. package/lib/ops/dx-constants.d.ts +0 -26
  888. package/lib/ops/dx-constants.js +0 -43
  889. package/lib/ops/entities/ImageBuildContext.d.ts +0 -12
  890. package/lib/ops/entities/ImageBuildContext.js +0 -19
  891. package/lib/ops/entities/PipelineContext.d.ts +0 -21
  892. package/lib/ops/entities/PipelineContext.js +0 -23
  893. package/lib/ops/entities/TenantContext.d.ts +0 -10
  894. package/lib/ops/entities/TenantContext.js +0 -16
  895. package/lib/ops/entities/ThaulConfig.js +0 -30
  896. package/lib/ops/entities/azure-service-principal.d.ts +0 -23
  897. package/lib/ops/entities/azure-service-principal.js +0 -24
  898. package/lib/ops/entities/better-logger.js +0 -2
  899. package/lib/ops/entities/branch.d.ts +0 -13
  900. package/lib/ops/entities/branch.js +0 -16
  901. package/lib/ops/entities/cli-config.d.ts +0 -48
  902. package/lib/ops/entities/cli-config.js +0 -61
  903. package/lib/ops/entities/cli-config.js.map +0 -1
  904. package/lib/ops/entities/docker-image.d.ts +0 -60
  905. package/lib/ops/entities/docker-image.js +0 -3
  906. package/lib/ops/entities/helm-spec.d.ts +0 -15
  907. package/lib/ops/entities/helm-spec.js +0 -23
  908. package/lib/ops/entities/index.d.ts +0 -4
  909. package/lib/ops/entities/index.js +0 -12
  910. package/lib/ops/entities/operation-meta.d.ts +0 -8
  911. package/lib/ops/entities/operation-meta.js +0 -19
  912. package/lib/ops/entities/operation-meta.js.map +0 -1
  913. package/lib/ops/entities/scaffolding.d.ts +0 -19
  914. package/lib/ops/entities/scaffolding.js +0 -21
  915. package/lib/ops/extensions/azart-identity-adapter.d.ts +0 -19
  916. package/lib/ops/extensions/azart-identity-adapter.js +0 -97
  917. package/lib/ops/extensions/npm-identity-adapter-base.d.ts +0 -13
  918. package/lib/ops/extensions/npm-identity-adapter-base.js +0 -3
  919. package/lib/ops/extensions/npmjs-identity-adapter.d.ts +0 -13
  920. package/lib/ops/extensions/npmjs-identity-adapter.js +0 -64
  921. package/lib/ops/git-ops.d.ts +0 -8
  922. package/lib/ops/git-ops.js +0 -14
  923. package/lib/ops/i-client-for-image-registry.js +0 -17
  924. package/lib/ops/i-identity-handler.d.ts +0 -33
  925. package/lib/ops/i-identity-handler.js +0 -165
  926. package/lib/ops/i-output-styler.js +0 -17
  927. package/lib/ops/index.d.ts +0 -12
  928. package/lib/ops/index.js +0 -15
  929. package/lib/ops/json-utils.js +0 -59
  930. package/lib/ops/no-style-output-styler.js +0 -30
  931. package/lib/ops/oauth2-client.ts/oauth2-client.d.ts +0 -23
  932. package/lib/ops/oauth2-client.ts/oauth2-client.js +0 -64
  933. package/lib/ops/oauth2-client.ts/oauth2-client.js.map +0 -1
  934. package/lib/ops/project-initializer.d.ts +0 -36
  935. package/lib/ops/project-initializer.js +0 -219
  936. package/lib/ops/scaffolding/base-scaffolding.d.ts +0 -7
  937. package/lib/ops/scaffolding/base-scaffolding.js +0 -21
  938. package/lib/ops/scaffolding/base-scaffolding.js.map +0 -1
  939. package/lib/ops/scaffolding/codiac-api-scaffolding.d.ts +0 -7
  940. package/lib/ops/scaffolding/codiac-api-scaffolding.js +0 -64
  941. package/lib/ops/scaffolding/codiac-api-scaffolding.js.map +0 -1
  942. package/lib/ops/scaffolding/typescript-scaffolding.d.ts +0 -15
  943. package/lib/ops/scaffolding/typescript-scaffolding.js +0 -163
  944. package/lib/ops/scaffolding/typescript-scaffolding.js.map +0 -1
  945. package/lib/ops/test/mock-ui.d.ts +0 -26
  946. package/lib/ops/test/mock-ui.js +0 -88
  947. package/lib/ops/test/test-extensions.d.ts +0 -13
  948. package/lib/ops/test/test-extensions.js +0 -71
  949. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +0 -2
  950. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js +0 -55
  951. package/lib/ops/test/when-git-branchline-is-attempted.spec.d.ts +0 -2
  952. package/lib/ops/test/when-git-branchline-is-attempted.spec.js +0 -38
  953. package/lib/ops/test/when-versions-are-parsed.spec.d.ts +0 -2
  954. package/lib/ops/test/when-versions-are-parsed.spec.js +0 -62
  955. package/lib/ops/throwing-user-input-provider.js +0 -37
  956. package/lib/ops/workspace-versioner.d.ts +0 -122
  957. package/lib/ops/workspace-versioner.js +0 -292
  958. package/lib/ops/workspace-versioner.js.map +0 -1
  959. package/lib/prettify.d.ts +0 -7
  960. package/lib/prettify.js +0 -24
  961. package/lib/read-stdin.d.ts +0 -2
  962. package/lib/read-stdin.js +0 -29
  963. package/lib/relay/contracts/contracts.d.ts +0 -207
  964. package/lib/relay/contracts/contracts.js +0 -230
  965. package/lib/relay/extended-relay-client.d.ts +0 -27
  966. package/lib/relay/extended-relay-client.js +0 -28
  967. package/lib/relay/relay-container.d.ts +0 -41
  968. package/lib/relay/relay-container.js +0 -298
  969. package/lib/relay/relay-container.js.map +0 -1
  970. package/lib/relay/wsclient/relay-socket-listener.d.ts +0 -68
  971. package/lib/relay/wsclient/relay-socket-listener.js +0 -165
  972. package/lib/relay/wsclient/relay-socket-listener.js.map +0 -1
  973. package/lib/relay/wsclient/relay-websocket-client.d.ts +0 -33
  974. package/lib/relay/wsclient/relay-websocket-client.js +0 -179
  975. package/lib/relay/wsclient/relay-websocket-client.js.map +0 -1
  976. package/lib/relay/wsclient/rx-websocket-subject.d.ts +0 -25
  977. package/lib/relay/wsclient/rx-websocket-subject.js +0 -134
  978. package/lib/relay/wsclient/rx-websocket-subject.js.map +0 -1
  979. package/lib/relay/wsclient/socket-contracts.d.ts +0 -22
  980. package/lib/relay/wsclient/socket-contracts.js +0 -3
  981. package/lib/standard-probes.d.ts +0 -5
  982. package/lib/standard-probes.js +0 -22
  983. package/lib/uilogic/build-configurator.d.ts +0 -21
  984. package/lib/uilogic/build-configurator.js +0 -111
  985. package/lib/uilogic/cloud-provider-contextualizer.d.ts +0 -46
  986. package/lib/uilogic/cloud-provider-contextualizer.js +0 -194
  987. package/lib/uilogic/cloud-provider-contextualizer.js.map +0 -1
  988. package/lib/uilogic/cloud-resource-configurator-factory.d.ts +0 -41
  989. package/lib/uilogic/cloud-resource-configurator-factory.js +0 -158
  990. package/lib/uilogic/cloud-resource-configurator-factory.js.map +0 -1
  991. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +0 -38
  992. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js +0 -348
  993. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +0 -1
  994. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +0 -78
  995. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +0 -42
  996. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +0 -248
  997. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js.map +0 -1
  998. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +0 -110
  999. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js +0 -782
  1000. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +0 -1
  1001. package/lib/uilogic/cloud-resource-configurators/azure-types.js +0 -10
  1002. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +0 -24
  1003. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +0 -106
  1004. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +0 -1
  1005. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +0 -16
  1006. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js +0 -45
  1007. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js.map +0 -1
  1008. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +0 -18
  1009. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +0 -62
  1010. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js.map +0 -1
  1011. package/lib/uilogic/enterprise-contextualizer.d.ts +0 -76
  1012. package/lib/uilogic/enterprise-contextualizer.js +0 -671
  1013. package/lib/uilogic/environment-contextualizer.d.ts +0 -15
  1014. package/lib/uilogic/environment-contextualizer.js +0 -43
  1015. package/lib/uilogic/i-cluster-configurator.d.ts +0 -9
  1016. package/lib/uilogic/i-cluster-configurator.js +0 -3
  1017. package/lib/uilogic/i-login-configurator.d.ts +0 -6
  1018. package/lib/uilogic/i-login-configurator.js +0 -3
  1019. package/lib/uilogic/i-registry-configurator.d.ts +0 -6
  1020. package/lib/uilogic/i-registry-configurator.js +0 -3
  1021. package/lib/uilogic/i-secret-store-configurator.d.ts +0 -7
  1022. package/lib/uilogic/i-secret-store-configurator.js +0 -3
  1023. package/lib/uilogic/image-configurator.d.ts +0 -133
  1024. package/lib/uilogic/image-configurator.js +0 -578
  1025. package/lib/uilogic/image-configurator.js.map +0 -1
  1026. package/lib/uilogic/image-contextualizer.d.ts +0 -24
  1027. package/lib/uilogic/image-contextualizer.js +0 -90
  1028. package/lib/uilogic/image-contextualizer.js.map +0 -1
  1029. package/lib/uilogic/image-registry-contextualizer.d.ts +0 -28
  1030. package/lib/uilogic/image-registry-contextualizer.js +0 -127
  1031. package/lib/uilogic/image-registry-contextualizer.js.map +0 -1
  1032. package/lib/uilogic/index.d.ts +0 -9
  1033. package/lib/uilogic/index.js +0 -14
  1034. package/lib/uilogic/prompt-select-fuzzy.js +0 -139
  1035. package/lib/uilogic/render-methods.d.ts +0 -12
  1036. package/lib/uilogic/render-methods.js +0 -65
  1037. package/lib/uilogic/tenant-contextualizer.d.ts +0 -79
  1038. package/lib/uilogic/tenant-contextualizer.js +0 -578
  1039. package/lib/user-context-loader.d.ts +0 -60
  1040. package/lib/user-context-loader.js +0 -184
  1041. /package/{lib → dist}/apis/codiac-api/common/config-loader.js.map +0 -0
  1042. /package/{lib → dist}/apis/codiac-api/common/endpoint-spec.js.map +0 -0
  1043. /package/{lib → dist}/apis/codiac-api/common/security/auth-constants.js.map +0 -0
  1044. /package/{lib → dist}/apis/codiac-api/common/security/i-auth-client.js.map +0 -0
  1045. /package/{lib → dist}/apis/codiac-api/common/security/token-holder.js.map +0 -0
  1046. /package/{lib → dist}/apis/codiac-api/common/utils.js.map +0 -0
  1047. /package/{lib → dist}/apis/codiac-api/contracts/index.js.map +0 -0
  1048. /package/{lib → dist}/apis/codiac-api/gen/contracts.js.map +0 -0
  1049. /package/{lib → dist}/apis/codiac-api/index.js.map +0 -0
  1050. /package/{lib → dist}/apis/codiac-relay/common/config-loader.js.map +0 -0
  1051. /package/{lib → dist}/apis/codiac-relay/common/endpoint-spec.js.map +0 -0
  1052. /package/{lib → dist}/apis/codiac-relay/common/security/auth-constants.js.map +0 -0
  1053. /package/{lib → dist}/apis/codiac-relay/common/security/i-auth-client.js.map +0 -0
  1054. /package/{lib → dist}/apis/codiac-relay/common/security/token-holder.js.map +0 -0
  1055. /package/{lib → dist}/apis/codiac-relay/common/utils.js.map +0 -0
  1056. /package/{lib → dist}/apis/codiac-relay/contracts/index.js.map +0 -0
  1057. /package/{lib → dist}/apis/codiac-relay/gen/contracts.js.map +0 -0
  1058. /package/{lib → dist}/apis/codiac-relay/index.js.map +0 -0
  1059. /package/{lib → dist}/cli-common/ImagesList.d.ts +0 -0
  1060. /package/{lib → dist}/cli-common/ImagesList.js.map +0 -0
  1061. /package/{lib → dist}/cli-common/argument-manager.js.map +0 -0
  1062. /package/{lib → dist}/cli-common/cli-interfaces.d.ts +0 -0
  1063. /package/{lib → dist}/cli-common/cli-interfaces.js.map +0 -0
  1064. /package/{lib → dist}/cli-common/command-base.js.map +0 -0
  1065. /package/{lib → dist}/cli-common/entities/index.js.map +0 -0
  1066. /package/{lib → dist}/cli-common/entities/prompt-choice.js.map +0 -0
  1067. /package/{lib → dist}/cli-common/file-selector.js.map +0 -0
  1068. /package/{lib → dist}/cli-common/i-user-input-provider.d.ts +0 -0
  1069. /package/{lib → dist}/cli-common/i-user-input-provider.js.map +0 -0
  1070. /package/{lib → dist}/cli-common/index.js.map +0 -0
  1071. /package/{lib → dist}/cli-common/mock-ui.js.map +0 -0
  1072. /package/{lib → dist}/cli-common/tenant-contextualizer.d.ts +0 -0
  1073. /package/{lib → dist}/cli-common/tenant-contextualizer.js.map +0 -0
  1074. /package/{lib → dist}/cli-common/test/tenant-contextualizer.spec.d.ts +0 -0
  1075. /package/{lib → dist}/cli-common/test/tenant-contextualizer.spec.js.map +0 -0
  1076. /package/{lib → dist}/cli-entities/output-format-enum.js.map +0 -0
  1077. /package/{lib → dist}/cli-entities/prompt-choice.d.ts +0 -0
  1078. /package/{lib → dist}/cli-entities/prompt-choice.js.map +0 -0
  1079. /package/{lib → dist}/codiac-constants.js.map +0 -0
  1080. /package/{lib → dist}/codiac-entities/asset-binding.js.map +0 -0
  1081. /package/{lib → dist}/codiac-entities/azure-container-registry.js.map +0 -0
  1082. /package/{lib → dist}/codiac-entities/azure-service-principal.js.map +0 -0
  1083. /package/{lib → dist}/codiac-entities/cloud-account-ref.js.map +0 -0
  1084. /package/{lib → dist}/codiac-entities/deployment-temp.d.ts +0 -0
  1085. /package/{lib → dist}/codiac-entities/deployment-temp.js.map +0 -0
  1086. /package/{lib → dist}/codiac-entities/i-cloud-account-ref.js.map +0 -0
  1087. /package/{lib → dist}/command-base-enterprise.js.map +0 -0
  1088. /package/{lib → dist}/command-base-tenantless.js.map +0 -0
  1089. /package/{lib → dist}/commands/asset/create.js.map +0 -0
  1090. /package/{lib → dist}/commands/asset/destroy.js.map +0 -0
  1091. /package/{lib → dist}/commands/asset/helm.js.map +0 -0
  1092. /package/{lib → dist}/commands/asset/list.js.map +0 -0
  1093. /package/{lib → dist}/commands/asset/probe/create.js.map +0 -0
  1094. /package/{lib → dist}/commands/asset/recycle.js.map +0 -0
  1095. /package/{lib → dist}/commands/asset/view.js.map +0 -0
  1096. /package/{lib → dist}/commands/asset/volume/create.js.map +0 -0
  1097. /package/{lib → dist}/commands/asset/volume/delete.js.map +0 -0
  1098. /package/{lib → dist}/commands/asset/volume/list.js.map +0 -0
  1099. /package/{lib → dist}/commands/branch/current.js.map +0 -0
  1100. /package/{lib → dist}/commands/branch/list.js.map +0 -0
  1101. /package/{lib → dist}/commands/branch.js.map +0 -0
  1102. /package/{lib → dist}/commands/build.js.map +0 -0
  1103. /package/{lib → dist}/commands/cabinet/create.js.map +0 -0
  1104. /package/{lib → dist}/commands/cabinet/list.js.map +0 -0
  1105. /package/{lib → dist}/commands/cabinet/obliterate.js.map +0 -0
  1106. /package/{lib → dist}/commands/cli.js.map +0 -0
  1107. /package/{lib → dist}/commands/commit.js.map +0 -0
  1108. /package/{lib → dist}/commands/config/add.js.map +0 -0
  1109. /package/{lib → dist}/commands/config/delete.js.map +0 -0
  1110. /package/{lib → dist}/commands/config/deploy.js.map +0 -0
  1111. /package/{lib → dist}/commands/config/import.js.map +0 -0
  1112. /package/{lib → dist}/commands/config/view.js.map +0 -0
  1113. /package/{lib → dist}/commands/csp/login.js.map +0 -0
  1114. /package/{lib → dist}/commands/csp/logout.js.map +0 -0
  1115. /package/{lib → dist}/commands/dep/create.js.map +0 -0
  1116. /package/{lib → dist}/commands/dep/install.js.map +0 -0
  1117. /package/{lib → dist}/commands/dep/list.js.map +0 -0
  1118. /package/{lib → dist}/commands/dep/remove.js.map +0 -0
  1119. /package/{lib → dist}/commands/dep/source.js.map +0 -0
  1120. /package/{lib → dist}/commands/dep/syncup.js.map +0 -0
  1121. /package/{lib → dist}/commands/dep/unsource.js.map +0 -0
  1122. /package/{lib → dist}/commands/dep/upgrade.js.map +0 -0
  1123. /package/{lib → dist}/commands/dep.js.map +0 -0
  1124. /package/{lib → dist}/commands/deploy.js.map +0 -0
  1125. /package/{lib → dist}/commands/enterprise/create.js.map +0 -0
  1126. /package/{lib → dist}/commands/enterprise/list.js.map +0 -0
  1127. /package/{lib → dist}/commands/env/add.js.map +0 -0
  1128. /package/{lib → dist}/commands/environment/create.js.map +0 -0
  1129. /package/{lib → dist}/commands/environment/list.js.map +0 -0
  1130. /package/{lib → dist}/commands/filestore/capture.js.map +0 -0
  1131. /package/{lib → dist}/commands/host/map.js.map +0 -0
  1132. /package/{lib → dist}/commands/identity/delete.js.map +0 -0
  1133. /package/{lib → dist}/commands/identity/list.js.map +0 -0
  1134. /package/{lib → dist}/commands/identity.js.map +0 -0
  1135. /package/{lib → dist}/commands/imageRegistry/capture.js.map +0 -0
  1136. /package/{lib → dist}/commands/imageRegistry/forget.js.map +0 -0
  1137. /package/{lib → dist}/commands/imageRegistry/pullSecret/set.js.map +0 -0
  1138. /package/{lib → dist}/commands/imageRegistry/pullSecret/unset.js.map +0 -0
  1139. /package/{lib → dist}/commands/images/add.js.map +0 -0
  1140. /package/{lib → dist}/commands/images/list.js.map +0 -0
  1141. /package/{lib → dist}/commands/images/patch.js.map +0 -0
  1142. /package/{lib → dist}/commands/images/remove.js.map +0 -0
  1143. /package/{lib → dist}/commands/images/version/bump.js.map +0 -0
  1144. /package/{lib → dist}/commands/images/version.js.map +0 -0
  1145. /package/{lib → dist}/commands/init.js.map +0 -0
  1146. /package/{lib → dist}/commands/kit/create.js.map +0 -0
  1147. /package/{lib → dist}/commands/login.js.map +0 -0
  1148. /package/{lib → dist}/commands/logout.js.map +0 -0
  1149. /package/{lib → dist}/commands/merge.js.map +0 -0
  1150. /package/{lib → dist}/commands/noc/cluster/create.js.map +0 -0
  1151. /package/{lib → dist}/commands/noc/cluster/deinit.js.map +0 -0
  1152. /package/{lib → dist}/commands/noc/cluster/destroy.js.map +0 -0
  1153. /package/{lib → dist}/commands/noc/cluster/forget.js.map +0 -0
  1154. /package/{lib → dist}/commands/noc/cluster/grant.js.map +0 -0
  1155. /package/{lib → dist}/commands/noc/cluster/init.js.map +0 -0
  1156. /package/{lib → dist}/commands/noc/cluster/list.js.map +0 -0
  1157. /package/{lib → dist}/commands/noc/cluster/recreate.js.map +0 -0
  1158. /package/{lib → dist}/commands/pkg/add.js.map +0 -0
  1159. /package/{lib → dist}/commands/pkg/list.js.map +0 -0
  1160. /package/{lib → dist}/commands/pkg/patch.js.map +0 -0
  1161. /package/{lib → dist}/commands/pkg/remove.js.map +0 -0
  1162. /package/{lib → dist}/commands/portal.js.map +0 -0
  1163. /package/{lib → dist}/commands/publish.js.map +0 -0
  1164. /package/{lib → dist}/commands/pull.js.map +0 -0
  1165. /package/{lib → dist}/commands/push.js.map +0 -0
  1166. /package/{lib → dist}/commands/run.js.map +0 -0
  1167. /package/{lib → dist}/commands/secretStore/capture.js.map +0 -0
  1168. /package/{lib → dist}/commands/secretStore/forget.js.map +0 -0
  1169. /package/{lib → dist}/commands/stage.js.map +0 -0
  1170. /package/{lib → dist}/commands/stash.js.map +0 -0
  1171. /package/{lib → dist}/commands/status.js.map +0 -0
  1172. /package/{lib → dist}/commands/stop.js.map +0 -0
  1173. /package/{lib → dist}/commands/switch.js.map +0 -0
  1174. /package/{lib → dist}/commands/sync.js.map +0 -0
  1175. /package/{lib → dist}/commands/tenant/create.js.map +0 -0
  1176. /package/{lib → dist}/commands/tenant/switch.js.map +0 -0
  1177. /package/{lib → dist}/commands/unstage.js.map +0 -0
  1178. /package/{lib → dist}/commands/whereami.js.map +0 -0
  1179. /package/{lib → dist}/commands/whoami.js.map +0 -0
  1180. /package/{lib → dist}/errors/NoMembershipError.js.map +0 -0
  1181. /package/{lib → dist}/index.js.map +0 -0
  1182. /package/{lib → dist}/log-update-wrapper.js.map +0 -0
  1183. /package/{lib → dist}/ops/INTERFACES_CLI.js.map +0 -0
  1184. /package/{lib → dist}/ops/azure-container-registry-client/azure-container-registry-client.d.ts +0 -0
  1185. /package/{lib → dist}/ops/azure-container-registry-client/azure-container-registry-client.js.map +0 -0
  1186. /package/{lib → dist}/ops/cli-path-walker.d.ts +0 -0
  1187. /package/{lib → dist}/ops/cli-path-walker.js.map +0 -0
  1188. /package/{lib → dist}/ops/codiac-entities/dependency.js.map +0 -0
  1189. /package/{lib → dist}/ops/codiac-entities/index.js.map +0 -0
  1190. /package/{lib → dist}/ops/composite-image-registry-client.d.ts +0 -0
  1191. /package/{lib → dist}/ops/composite-image-registry-client.js.map +0 -0
  1192. /package/{lib → dist}/ops/data/index.js.map +0 -0
  1193. /package/{lib → dist}/ops/data/npm-config-repo.js.map +0 -0
  1194. /package/{lib → dist}/ops/docker-config.d.ts +0 -0
  1195. /package/{lib → dist}/ops/docker-config.js.map +0 -0
  1196. /package/{lib → dist}/ops/docker-constants.d.ts +0 -0
  1197. /package/{lib → dist}/ops/docker-constants.js.map +0 -0
  1198. /package/{lib → dist}/ops/docker-credentials-store.d.ts +0 -0
  1199. /package/{lib → dist}/ops/docker-credentials-store.js.map +0 -0
  1200. /package/{lib → dist}/ops/docker-registry-api-client/docker-registry-api-client.d.ts +0 -0
  1201. /package/{lib → dist}/ops/docker-registry-api-client/docker-registry-api-client.js.map +0 -0
  1202. /package/{lib → dist}/ops/docker-registry-api-client/entities/blob-sum.js.map +0 -0
  1203. /package/{lib → dist}/ops/docker-registry-api-client/entities/docker-access-actions-enum.js.map +0 -0
  1204. /package/{lib → dist}/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js.map +0 -0
  1205. /package/{lib → dist}/ops/docker-registry-api-client/entities/i-docker-error-response.js.map +0 -0
  1206. /package/{lib → dist}/ops/docker-registry-api-client/entities/i-docker-list-response.js.map +0 -0
  1207. /package/{lib → dist}/ops/docker-registry-api-client/entities/image-repository.js.map +0 -0
  1208. /package/{lib → dist}/ops/docker-registry-api-client/entities/image-tag-criteria.js.map +0 -0
  1209. /package/{lib → dist}/ops/docker-registry-api-client/entities/image-tag-list.js.map +0 -0
  1210. /package/{lib → dist}/ops/docker-registry-api-client/entities/manifest-criteria.js.map +0 -0
  1211. /package/{lib → dist}/ops/docker-registry-api-client/entities/manifest.js.map +0 -0
  1212. /package/{lib → dist}/ops/docker-registry-api-client/entities/repository-criteria.js.map +0 -0
  1213. /package/{lib → dist}/ops/docker-registry-api-client/entities/token-response.js.map +0 -0
  1214. /package/{lib → dist}/ops/docker-registry-api-client/entities/token.js.map +0 -0
  1215. /package/{lib → dist}/ops/docker-registry-api-client/entities/version-check-criteria.js.map +0 -0
  1216. /package/{lib → dist}/ops/dx-constants.js.map +0 -0
  1217. /package/{lib → dist}/ops/entities/ImageBuildContext.js.map +0 -0
  1218. /package/{lib → dist}/ops/entities/PipelineContext.js.map +0 -0
  1219. /package/{lib → dist}/ops/entities/TenantContext.js.map +0 -0
  1220. /package/{lib → dist}/ops/entities/ThaulConfig.d.ts +0 -0
  1221. /package/{lib → dist}/ops/entities/ThaulConfig.js.map +0 -0
  1222. /package/{lib → dist}/ops/entities/azure-service-principal.js.map +0 -0
  1223. /package/{lib → dist}/ops/entities/better-logger.d.ts +0 -0
  1224. /package/{lib → dist}/ops/entities/better-logger.js.map +0 -0
  1225. /package/{lib → dist}/ops/entities/branch.js.map +0 -0
  1226. /package/{lib → dist}/ops/entities/docker-image.js.map +0 -0
  1227. /package/{lib → dist}/ops/entities/helm-spec.js.map +0 -0
  1228. /package/{lib → dist}/ops/entities/index.js.map +0 -0
  1229. /package/{lib → dist}/ops/entities/scaffolding.js.map +0 -0
  1230. /package/{lib → dist}/ops/extensions/azart-identity-adapter.js.map +0 -0
  1231. /package/{lib → dist}/ops/extensions/npm-identity-adapter-base.js.map +0 -0
  1232. /package/{lib → dist}/ops/extensions/npmjs-identity-adapter.js.map +0 -0
  1233. /package/{lib → dist}/ops/git-ops.js.map +0 -0
  1234. /package/{lib → dist}/ops/i-client-for-image-registry.d.ts +0 -0
  1235. /package/{lib → dist}/ops/i-client-for-image-registry.js.map +0 -0
  1236. /package/{lib → dist}/ops/i-identity-handler.js.map +0 -0
  1237. /package/{lib → dist}/ops/i-output-styler.d.ts +0 -0
  1238. /package/{lib → dist}/ops/i-output-styler.js.map +0 -0
  1239. /package/{lib → dist}/ops/index.js.map +0 -0
  1240. /package/{lib → dist}/ops/json-utils.d.ts +0 -0
  1241. /package/{lib → dist}/ops/json-utils.js.map +0 -0
  1242. /package/{lib → dist}/ops/no-style-output-styler.d.ts +0 -0
  1243. /package/{lib → dist}/ops/no-style-output-styler.js.map +0 -0
  1244. /package/{lib → dist}/ops/project-initializer.js.map +0 -0
  1245. /package/{lib → dist}/ops/test/mock-ui.js.map +0 -0
  1246. /package/{lib → dist}/ops/test/test-extensions.js.map +0 -0
  1247. /package/{lib → dist}/ops/test/when-a-recursive-file-search-is-run.spec.js.map +0 -0
  1248. /package/{lib → dist}/ops/test/when-git-branchline-is-attempted.spec.js.map +0 -0
  1249. /package/{lib → dist}/ops/test/when-versions-are-parsed.spec.js.map +0 -0
  1250. /package/{lib → dist}/ops/throwing-user-input-provider.d.ts +0 -0
  1251. /package/{lib → dist}/ops/throwing-user-input-provider.js.map +0 -0
  1252. /package/{lib → dist}/prettify.js.map +0 -0
  1253. /package/{lib → dist}/read-stdin.js.map +0 -0
  1254. /package/{lib → dist}/relay/contracts/contracts.js.map +0 -0
  1255. /package/{lib → dist}/relay/extended-relay-client.js.map +0 -0
  1256. /package/{lib → dist}/relay/wsclient/socket-contracts.js.map +0 -0
  1257. /package/{lib → dist}/standard-probes.js.map +0 -0
  1258. /package/{lib → dist}/uilogic/build-configurator.js.map +0 -0
  1259. /package/{lib → dist}/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.d.ts +0 -0
  1260. /package/{lib → dist}/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js.map +0 -0
  1261. /package/{lib → dist}/uilogic/cloud-resource-configurators/azure-types.d.ts +0 -0
  1262. /package/{lib → dist}/uilogic/cloud-resource-configurators/azure-types.js.map +0 -0
  1263. /package/{lib → dist}/uilogic/enterprise-contextualizer.js.map +0 -0
  1264. /package/{lib → dist}/uilogic/environment-contextualizer.js.map +0 -0
  1265. /package/{lib → dist}/uilogic/i-cluster-configurator.js.map +0 -0
  1266. /package/{lib → dist}/uilogic/i-login-configurator.js.map +0 -0
  1267. /package/{lib → dist}/uilogic/i-registry-configurator.js.map +0 -0
  1268. /package/{lib → dist}/uilogic/i-secret-store-configurator.js.map +0 -0
  1269. /package/{lib → dist}/uilogic/index.js.map +0 -0
  1270. /package/{lib → dist}/uilogic/prompt-select-fuzzy.d.ts +0 -0
  1271. /package/{lib → dist}/uilogic/prompt-select-fuzzy.js.map +0 -0
  1272. /package/{lib → dist}/uilogic/render-methods.js.map +0 -0
  1273. /package/{lib → dist}/uilogic/tenant-contextualizer.js.map +0 -0
  1274. /package/{lib → dist}/user-context-loader.js.map +0 -0
@@ -1,1365 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LogStreamer = exports.K8sContainerRef = exports.TermArgs = exports.ConfigFileArgs = exports.ExecArgs = exports.K8S_POD_PHASES = exports.InteractionModes = exports.AssetContentType = exports.PROMPT_ME_DESIGNATOR = void 0;
4
- const tslib_1 = require("tslib");
5
- //import * as path from 'path';
6
- const stream = require("stream");
7
- const core_1 = require("@oclif/core");
8
- const _ = require("lodash");
9
- const SplitCmd = require('split-cmd');
10
- const request = require("request");
11
- const semver = require("semver");
12
- const k8s = require("@kubernetes/client-node");
13
- const codiac_relay_contracts_1 = require("@codiac.io/codiac-relay-contracts");
14
- const command_base_enterprise_1 = require("../../command-base-enterprise");
15
- const render = require("../../uilogic/render-methods");
16
- const cloud_provider_contextualizer_1 = require("../../uilogic/cloud-provider-contextualizer");
17
- const client_node_1 = require("@kubernetes/client-node");
18
- const web_socket_handler_1 = require("@kubernetes/client-node/dist/web-socket-handler");
19
- const codiac_ops_common_1 = require("@codiac.io/codiac-ops-common");
20
- // let logUpdate: any;
21
- // (async function () {
22
- // logUpdate = (await import("log-update")).default;
23
- // })()
24
- // import * as logUpdate from "log-update";
25
- // import logUpdate from "log-update";
26
- // const logUpdate = (await import("log-update/index.js")).default
27
- // import { logUpdate } from "log-update";
28
- // const logUpdate = require("log-update");
29
- const log_update_wrapper_1 = require("../../log-update-wrapper");
30
- const codiac_constants_1 = require("../../codiac-constants");
31
- // const { selectFiles, COMPLETED, CANCELLED } = require('select-files-cli'); // gd js wo ts...
32
- // const { selectFiles, COMPLETED, CANCELLED } = require('../../uilogic/file-selector'); // gd js wo ts...
33
- /** The value provided as input that indicates
34
- * a user's desire to be prompted with a list from which choose the value(s),
35
- * instead of entering them manually or taking a default. */
36
- exports.PROMPT_ME_DESIGNATOR = "?";
37
- var AssetContentType;
38
- (function (AssetContentType) {
39
- AssetContentType["logs"] = "logs";
40
- AssetContentType["term"] = "term";
41
- AssetContentType["exec"] = "exec";
42
- AssetContentType["env"] = "env";
43
- AssetContentType["config"] = "config";
44
- AssetContentType["status"] = "status";
45
- // | "footprint-usage" | "infrx"
46
- // | "ingress-domains" | "ingress-nslookup" | "ingress-routes" | "ingress-logs" | "ssl-certs" | "ssl-logs" | "ssl-cert-history";
47
- })(AssetContentType = exports.AssetContentType || (exports.AssetContentType = {}));
48
- const DEFAULT_TERMINAL_STARTER = "bash";
49
- /** The quantity of lines of backlog to include in the log output. */
50
- const DEFAULT_LOG_TAIL = 10;
51
- var InteractionModes;
52
- (function (InteractionModes) {
53
- InteractionModes["echo"] = "echo";
54
- InteractionModes["toscript"] = "toscript";
55
- InteractionModes["silent"] = "silent";
56
- })(InteractionModes = exports.InteractionModes || (exports.InteractionModes = {}));
57
- /** This belongs to k8s - not us, but @kubernetes/client-node has no enum or constants for these magic strings...
58
- *
59
- * @see https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase
60
- */
61
- var K8S_POD_PHASES;
62
- (function (K8S_POD_PHASES) {
63
- K8S_POD_PHASES["Pending"] = "Pending";
64
- K8S_POD_PHASES["Running"] = "Running";
65
- K8S_POD_PHASES["Succeeded"] = "Succeeded";
66
- K8S_POD_PHASES["Failed"] = "Failed";
67
- K8S_POD_PHASES["Unknown"] = "Unknown";
68
- })(K8S_POD_PHASES = exports.K8S_POD_PHASES || (exports.K8S_POD_PHASES = {}));
69
- class AssetView extends command_base_enterprise_1.CommandBaseEnterprise {
70
- constructor() {
71
- super(...arguments);
72
- this.takeDefaults = false;
73
- }
74
- get uiCloudPvd() {
75
- if (this._uiCloudPvd_backer === undefined) {
76
- this._uiCloudPvd_backer = this.ioc.get(cloud_provider_contextualizer_1.CloudProviderContextualizer);
77
- }
78
- return this._uiCloudPvd_backer;
79
- }
80
- bootstrap() {
81
- super.bootstrap();
82
- cloud_provider_contextualizer_1.CloudProviderContextualizer.bootstrap(this.ioc); // (idempotent) this is a dependency of the configurators
83
- }
84
- run() {
85
- var _a, _b, _c;
86
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
87
- try {
88
- // ==================================================
89
- // 1. Bootstrap
90
- // ==================================================
91
- this.bootstrap();
92
- // this._relayContainer?.ready$
93
- // .subscribe(async (ready: boolean) => {
94
- // ==================================================
95
- // 2. Gather cli input
96
- // ==================================================
97
- const { args, flags } = yield this.parse(AssetView);
98
- const interactionMode = (_b = (_a = (flags.echo ? InteractionModes.echo : undefined)) !== null && _a !== void 0 ? _a : (flags.toscript ? InteractionModes.toscript : undefined)) !== null && _b !== void 0 ? _b : (flags.silent ? InteractionModes.silent : undefined);
99
- this.takeDefaults = (_c = flags.takeDefaults) !== null && _c !== void 0 ? _c : false;
100
- let partialReq = {};
101
- partialReq.enterprise = flags.enterprise;
102
- partialReq.asset = flags.asset;
103
- partialReq.environment = flags.environment;
104
- partialReq.cabinet = flags.cabinet;
105
- partialReq.content = (flags.type) ? AssetContentType[flags.type] : undefined;
106
- partialReq.replica = flags.replica;
107
- let givenCmd;
108
- if (args.cmd) {
109
- givenCmd = args.cmd;
110
- let isep = this.argv.indexOf("--");
111
- if (isep >= 0) {
112
- if (isep + 1 < this.argv.length) {
113
- givenCmd = this.argv.slice(isep + 1);
114
- }
115
- else {
116
- givenCmd = undefined;
117
- }
118
- }
119
- }
120
- let contentOptions = {
121
- follow: flags.logsFollow,
122
- tailLines: flags.logsTail,
123
- /* tty: flags.tty, */
124
- command: givenCmd,
125
- terminalStartup: flags.terminal,
126
- rootPathName: flags.configFile
127
- };
128
- // ==================================================
129
- // 3. Assemble candidate
130
- // ==================================================
131
- let candidate;
132
- let cmd;
133
- if (interactionMode == InteractionModes.silent) {
134
- candidate = yield this.buildCandidate_silently(partialReq, partialReq.content, contentOptions);
135
- }
136
- else {
137
- [candidate, cmd] = yield this.buildCandidate_interactively(partialReq, contentOptions, partialReq.content);
138
- }
139
- // ==================================================
140
- // 4. Render ultimate command string
141
- // ==================================================
142
- if (interactionMode == InteractionModes.echo || interactionMode == InteractionModes.toscript) {
143
- if (cmd && cmd.length > 0) {
144
- this._ui.userMessage(cmd.join(" "));
145
- }
146
- }
147
- // ==================================================
148
- // 5. Execute
149
- // ==================================================
150
- if (interactionMode != InteractionModes.toscript) {
151
- yield this.renderSelectedContent(candidate.context, candidate.contentType, candidate.k8sEntities, candidate.contentOptions, candidate.replicas);
152
- }
153
- // return;
154
- // });
155
- return;
156
- }
157
- catch (err) {
158
- this.handleError(err);
159
- throw err;
160
- }
161
- });
162
- }
163
- buildCandidate_silently(partialReq, content, contentOptions) {
164
- var _a, _b, _c, _d, _e, _f;
165
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
166
- this.__ui = new codiac_ops_common_1.ThrowingUserInputProvider(this.logger);
167
- if (content === undefined || _.isEmpty(partialReq.content))
168
- throw new Error(`No content type specified.`);
169
- if (partialReq.enterprise === undefined || _.isEmpty(partialReq.enterprise))
170
- throw new Error(`No enterprise specified.`);
171
- if (partialReq.asset === undefined || _.isEmpty(partialReq.asset))
172
- throw new Error(`No asset specified.`);
173
- if (partialReq.environment === undefined || _.isEmpty(partialReq.environment))
174
- throw new Error(`No environment specified.`);
175
- if (partialReq.cabinet === undefined || _.isEmpty(partialReq.cabinet))
176
- throw new Error(`No cabinet specified.`);
177
- // Replica should not be required
178
- // (though this can be confusing when there's more than one;
179
- // the user will have to know they're only getting a single replica of logs,
180
- // and they need to know they might have to call out for one.
181
- // if (partialReq.replica === undefined || _.isEmpty(partialReq.replica)) throw new Error(`No replica specified.`);
182
- let options;
183
- switch (partialReq.content) {
184
- case AssetContentType.logs:
185
- options = (contentOptions !== null && contentOptions !== void 0 ? contentOptions : {});
186
- // defaults?
187
- break;
188
- case AssetContentType.exec:
189
- if (_.isEmpty(contentOptions.command))
190
- throw new Error(`No command specified.`);
191
- options = {
192
- command: contentOptions.command,
193
- tty: (_a = contentOptions.tty) !== null && _a !== void 0 ? _a : false
194
- };
195
- break;
196
- case AssetContentType.config:
197
- if (_.isEmpty(contentOptions.rootPathName))
198
- throw new Error(`No file specified.`);
199
- options = {
200
- rootPathName: contentOptions.rootPathName
201
- };
202
- break;
203
- case AssetContentType.term:
204
- options = {
205
- terminalStartup: (_b = contentOptions.terminalStartup) !== null && _b !== void 0 ? _b : DEFAULT_TERMINAL_STARTER
206
- };
207
- break;
208
- case AssetContentType.env: /* env has no user input */
209
- default:
210
- options = {};
211
- break;
212
- }
213
- // Retrieve the list of replicas for the given cabinet.
214
- let rootMap = yield this.getRootMap(partialReq.enterprise);
215
- let env = this.deriveEnvironmentFrom(partialReq.enterprise, partialReq.cabinet, rootMap); // this is fkng stupid. Put this value into the cab value
216
- let cabObj = this.getCabinetInfrx(partialReq.enterprise, env.name, partialReq.cabinet, rootMap);
217
- if (cabObj.infrx == undefined || _.isEmpty(cabObj.infrx))
218
- throw new Error(`Cannot connect to cabinet ${cabObj.name}: it has no infrastructure record.`);
219
- let k8sObj = { namespace: cabObj.infrx.namespace };
220
- let replicas = yield this.fetchReplicas(partialReq, cabObj.infrx.namespace);
221
- if (replicas.length > 0) {
222
- // Set first as default
223
- partialReq.replica = (_d = (_c = replicas[0].metadata) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : "unnamed";
224
- k8sObj = {
225
- namespace: cabObj.infrx.namespace,
226
- pod: partialReq.replica,
227
- container: (_f = (_e = replicas[0].spec) === null || _e === void 0 ? void 0 : _e.containers[0].name) !== null && _f !== void 0 ? _f : "unnamed"
228
- };
229
- // Select a replica unless it's an asset-level operation
230
- if (content !== AssetContentType.status) {
231
- // This method falls back to first found as default, throws if not enough info is provided
232
- k8sObj = yield this.promptForReplica(replicas, undefined, partialReq.replica);
233
- partialReq.replica = k8sObj.pod;
234
- }
235
- }
236
- // Assemble
237
- let candidate = {
238
- context: {
239
- enterprise: partialReq.enterprise,
240
- environment: partialReq.environment,
241
- asset: partialReq.asset,
242
- cabinet: partialReq.cabinet,
243
- replica: partialReq.replica
244
- },
245
- contentType: content,
246
- contentOptions: options,
247
- k8sEntities: k8sObj,
248
- replicas: replicas
249
- };
250
- return candidate;
251
- });
252
- }
253
- buildCandidate_interactively(partialReq, contentOptions, content) {
254
- var _a, _b, _c, _d;
255
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
256
- this._userCntx = yield this.establishTenantContext(this._userCntx);
257
- let enterprise = (yield this.establishEnterpriseContext()).enterprise;
258
- partialReq.enterprise = enterprise.code;
259
- let rootMap = yield this.getRootMap(enterprise.code);
260
- let replicas;
261
- let k8sObj;
262
- let confirmed = false;
263
- let optionsArgs = [];
264
- do {
265
- // 1. Select Asset
266
- partialReq.asset = yield this.promptForAsset(enterprise.assets, partialReq.asset);
267
- // 2. Cabinet
268
- let cabObj = yield this.promptForCabinet(partialReq.enterprise, rootMap, partialReq.cabinet);
269
- partialReq.cabinet = cabObj.name;
270
- partialReq.environment = this.deriveEnvironmentFrom(partialReq.enterprise, partialReq.cabinet, rootMap).name;
271
- let cluster = this.deriveClusterFrom(partialReq.enterprise, partialReq.environment, partialReq.cabinet, rootMap);
272
- // partialReq.cabinet = await this.establishCabinetContext(partialReq.cabinet);
273
- if (cabObj.infrx == undefined || _.isEmpty(cabObj.infrx))
274
- throw new Error(`Cannot connect to cabinet ${cabObj.name}: it has no infrastructure record.`);
275
- k8sObj = { namespace: cabObj.infrx.namespace };
276
- // 3. Content type
277
- content = yield this.promptForContentType(content);
278
- // 4. Content-specific arguments
279
- // MarkStartHere("implement prompt-me designator.")
280
- // MarkStartHere("Support the current logger or ioc ctr inside the ws event handlers");
281
- // MarkStartHere("Need UI to operate a different stream than stdout (so piping stdout wont include the ui content");
282
- [contentOptions, optionsArgs] = yield this.promptForContentOptions(content, partialReq, contentOptions);
283
- // 5. Authenticate with CSP
284
- this.uiCloudPvd.takeDefaults = this.takeDefaults;
285
- yield this.uiCloudPvd.promptForCloudProviderCreds(this.ioc, cluster.provider);
286
- // 6. Replica (Pod)
287
- if (cabObj.infrx == undefined || _.isEmpty(cabObj.infrx))
288
- throw new Error(`Cannot connect to cabinet ${cabObj.name}: it has no infrastructure record.`);
289
- replicas = yield this.fetchReplicas(partialReq, cabObj.infrx.namespace);
290
- if (replicas.length > 0) {
291
- // Set first as default
292
- partialReq.replica = (_b = (_a = replicas[0].metadata) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : "unnamed";
293
- k8sObj = {
294
- namespace: cabObj.infrx.namespace,
295
- pod: partialReq.replica,
296
- container: (_d = (_c = replicas[0].spec) === null || _c === void 0 ? void 0 : _c.containers[0].name) !== null && _d !== void 0 ? _d : "unnamed"
297
- };
298
- // Select a replica unless it's an asset-level operation
299
- if (content !== AssetContentType.status) {
300
- k8sObj = yield this.promptForReplica(replicas, undefined, partialReq.replica);
301
- partialReq.replica = k8sObj.pod;
302
- }
303
- }
304
- // 7. Confirm or loop back around to enterprise
305
- confirmed = true; // This is a readonly ui (no danger), and we want to enable fast switching among diff content types, so let's not waste time confirming. // await this._ui.promptConfirm("confirm", "Apply? ");
306
- } while (!confirmed);
307
- // We're hard-coding instead of casting here to validate at build-time that each partial property is fully-hydrated.
308
- // Assemble
309
- let candidate = {
310
- context: {
311
- enterprise: partialReq.enterprise,
312
- environment: partialReq.environment,
313
- asset: partialReq.asset,
314
- cabinet: partialReq.cabinet,
315
- replica: partialReq.replica
316
- },
317
- contentType: content,
318
- contentOptions: contentOptions,
319
- k8sEntities: k8sObj,
320
- replicas: replicas
321
- };
322
- // Build command string
323
- let cmd = ["cod", "asset", "view"];
324
- cmd.push("--silent");
325
- cmd.push("-e", candidate.context.enterprise);
326
- cmd.push("-a", candidate.context.asset);
327
- cmd.push("-n", candidate.context.environment);
328
- cmd.push("-c", candidate.context.cabinet);
329
- if (candidate.context.replica)
330
- cmd.push("-r", candidate.context.replica);
331
- cmd.push("-t", candidate.contentType);
332
- cmd.push(...optionsArgs);
333
- return [candidate, cmd];
334
- });
335
- }
336
- promptForContentOptions(contentType, context, defaults) {
337
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
338
- let cmdArgs = [];
339
- try {
340
- switch (contentType) {
341
- case AssetContentType.logs:
342
- let logArgs = yield this.promptForLogOptions(defaults);
343
- if (logArgs.follow)
344
- cmdArgs.push("-f");
345
- if (logArgs.tailLines)
346
- cmdArgs.push(...["-l", "" + logArgs.tailLines]);
347
- return [logArgs, cmdArgs];
348
- case AssetContentType.exec:
349
- let execArgs = yield this.promptForExecOptions(defaults);
350
- cmdArgs.push(...execArgs.command);
351
- return [execArgs, cmdArgs];
352
- case AssetContentType.config:
353
- this.enterpriseContextor.takeDefaults = this.takeDefaults;
354
- let rootPathName = (yield this.enterpriseContextor.promptForTargetFile(context.enterprise, context.asset, defaults === null || defaults === void 0 ? void 0 : defaults.rootPathName));
355
- let cfgArgs = { rootPathName: rootPathName };
356
- cmdArgs.push("-F", rootPathName);
357
- return [cfgArgs, cmdArgs];
358
- case AssetContentType.term:
359
- let termArgs = yield this.promptForTerminalOptions(defaults);
360
- if (termArgs.terminalStartup)
361
- cmdArgs.push(...["--terminal", termArgs.terminalStartup]);
362
- return [termArgs, cmdArgs];
363
- default:
364
- return [{}, []];
365
- }
366
- }
367
- catch (err) {
368
- throw err;
369
- }
370
- });
371
- }
372
- promptForLogOptions(defaults) {
373
- var _a, _b;
374
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
375
- let options = (defaults !== null && defaults !== void 0 ? defaults : {});
376
- options.follow = (_a = options.follow) !== null && _a !== void 0 ? _a : true;
377
- if (!this.takeDefaults) {
378
- options.follow = yield this._ui.promptConfirm("follow", "Stream logs? ", options.follow);
379
- }
380
- options.tailLines = (_b = options.tailLines) !== null && _b !== void 0 ? _b : DEFAULT_LOG_TAIL;
381
- if (!this.takeDefaults) {
382
- options.tailLines = yield this._ui.prompt("tail", "Lines of backlog (-1 for all):", true, options.tailLines);
383
- }
384
- return options;
385
- });
386
- }
387
- promptForExecOptions(defaults) {
388
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
389
- let options = (defaults !== null && defaults !== void 0 ? defaults : {});
390
- // Command
391
- let cmdStr;
392
- let keep = this.takeDefaults;
393
- if (!_.isEmpty(options.command) && !this.takeDefaults) {
394
- cmdStr = (typeof options.command === 'string') ? options.command : options.command.join(" ");
395
- keep = yield this._ui.promptConfirm("keepCommand", `Command: ${this._styler.hilite(cmdStr)} `);
396
- }
397
- if (keep && !_.isEmpty(options.command)) {
398
- // do nothing
399
- }
400
- else {
401
- options.command = (yield this._ui.prompt("command", "Command: ", true, cmdStr));
402
- options.command = SplitCmd.split(options.command); // no types declarations - f#$&*ing script kiddie.
403
- // the one above trips on the --output flag in this: kubectl get pods -n cod-zombie-v1 -l assetNamme=codiac-api --output=jsonpath="{.items[*]['metadata.name', 'status.capacity']}"
404
- // something safer than: options.command = options.command.split(" ");
405
- }
406
- return options;
407
- });
408
- }
409
- promptForTerminalOptions(defaults) {
410
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
411
- let options = (defaults !== null && defaults !== void 0 ? defaults : {});
412
- // Command
413
- let keep = this.takeDefaults;
414
- if (!_.isEmpty(options.terminalStartup) && !this.takeDefaults) {
415
- keep = yield this._ui.promptConfirm("keepStartup", `Terminal Startup: ${this._styler.hilite(options.terminalStartup)} `);
416
- }
417
- if (keep && !_.isEmpty(options.terminalStartup)) {
418
- // do nothing
419
- }
420
- else {
421
- options.terminalStartup = (yield this._ui.prompt("startup", "Terminal Startup: ", true, options.terminalStartup));
422
- }
423
- return options;
424
- });
425
- }
426
- promptForContentType(defaultValue) {
427
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
428
- try {
429
- let output;
430
- let choices = Object.keys(AssetContentType);
431
- let keep = this.takeDefaults;
432
- if (defaultValue && choices.find(x => x == defaultValue) && !this.takeDefaults) {
433
- keep = yield this._ui.promptConfirm("keepType", `Type of content: ${this._styler.hilite(defaultValue)} `);
434
- }
435
- if (keep && defaultValue !== undefined) {
436
- output = defaultValue;
437
- }
438
- else {
439
- output = (yield this._ui.promptSelect("type", "Type of content: ", choices));
440
- }
441
- return output;
442
- }
443
- catch (err) {
444
- throw err;
445
- }
446
- });
447
- }
448
- promptForAsset(assets, defaultValue) {
449
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
450
- try {
451
- let output;
452
- let choices = assets.map(a => { return { name: a.name, value: a.name }; });
453
- choices = _.orderBy(choices, c => c.name);
454
- /** If we changed the input they provided, we need their confirmation (whether or not they said takeDefaults) */
455
- let changedUserInput = false;
456
- if (choices.length === 1) {
457
- if (defaultValue != choices[0].value) {
458
- changedUserInput = !_.isEmpty(defaultValue);
459
- defaultValue = choices[0].value;
460
- }
461
- }
462
- let keep = this.takeDefaults;
463
- if (defaultValue && choices.find(x => x.value == defaultValue) && (changedUserInput || !this.takeDefaults)) {
464
- keep = yield this._ui.promptConfirm("keepAsset", `Asset: ${this._styler.hilite(defaultValue)} `);
465
- }
466
- if (keep && defaultValue !== undefined) {
467
- output = defaultValue;
468
- }
469
- else {
470
- output = (yield this._ui.promptSelect("asset", "Asset: ", choices));
471
- }
472
- return output;
473
- }
474
- catch (err) {
475
- throw err;
476
- }
477
- });
478
- }
479
- promptForCabinet(enterprise, rootMap, defaultValue) {
480
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
481
- try {
482
- let output;
483
- // render cab tree with all lines selectable
484
- let cabTree = this.buildCabinetTree(rootMap);
485
- let choices = this.buildSelectChoicesFrom(cabTree);
486
- // ISSUES:
487
- // 0. Remove the freaking lines from the selected value.
488
- // 1. Remember the last cabinet (user's enterprise context).
489
- // 2. We should only render the cabinets that actually contain a deployment of the asset (or dim the others and loop back if selected)
490
- // 3. The picklist should render the cluster (provider, name, location)
491
- // 4. PERHAPS? The version of the asset running in the selected cabinet should get rendered (either in the picklist or after the cab is selected)
492
- /** If we changed the input they provided, we need their confirmation (whether or not they said takeDefaults) */
493
- const CAB_PREFIX = "cabinet|";
494
- let cabChoices = choices.filter(c => c.value.startsWith(CAB_PREFIX));
495
- let changedUserInput = false;
496
- if (cabChoices.length === 1) {
497
- if (defaultValue != cabChoices[0].value.slice(CAB_PREFIX.length)) {
498
- changedUserInput = !_.isEmpty(defaultValue);
499
- defaultValue = cabChoices[0].value.slice(CAB_PREFIX.length);
500
- }
501
- }
502
- let keep = this.takeDefaults;
503
- if (defaultValue && Boolean(choices.find(x => x.value === `${CAB_PREFIX}${defaultValue}`)) && (changedUserInput || !this.takeDefaults)) {
504
- keep = yield this._ui.promptConfirm("keepCabinet", `Cabinet: ${this._styler.hilite(defaultValue)} `);
505
- }
506
- if (keep && defaultValue !== undefined) {
507
- output = defaultValue;
508
- }
509
- else {
510
- let scope;
511
- let target;
512
- do {
513
- if (scope === "environment") {
514
- // we could just filter it down from here...
515
- }
516
- let selection = (yield this._ui.promptSelect("cabinet", "Cabinet: ", choices, false, false));
517
- let parts = selection.split("|");
518
- scope = parts[0];
519
- target = parts[1];
520
- } while (scope !== "cabinet"); // ensure they select a cabinet
521
- output = target;
522
- }
523
- let env = this.deriveEnvironmentFrom(enterprise, output, rootMap); // this is fkng stupid. Put this value into the cab value
524
- let cabObj = this.getCabinetInfrx(enterprise, env.name, output, rootMap);
525
- // return output;
526
- return cabObj;
527
- }
528
- catch (err) {
529
- throw (err);
530
- }
531
- });
532
- }
533
- deriveEnvironmentFrom(enterprise, cabinet, rootMap) {
534
- try {
535
- let ent = rootMap.enterprises.find(e => e.name === enterprise);
536
- if (ent === undefined)
537
- throw new Error(`Cannot find environment: did not recognize enterprise [${enterprise}]`);
538
- let enviro = ent.environments.find(x => x.cabinets.find(c => c.name === cabinet));
539
- if (enviro === undefined)
540
- throw new Error(`Cannot find environment: did not recognize cabinet [${cabinet}]`);
541
- return enviro;
542
- }
543
- catch (err) {
544
- throw err;
545
- }
546
- }
547
- deriveClusterFrom(enterprise, environment, cabinet, rootMap) {
548
- try {
549
- let ent = rootMap.enterprises.find(e => e.name === enterprise);
550
- if (ent === undefined)
551
- throw new Error(`Cannot find cluster: did not recognize enterprise [${enterprise}]`);
552
- let enviro = ent.environments.find(x => x.cabinets.find(c => c.name === cabinet));
553
- if (enviro === undefined)
554
- throw new Error(`Cannot find cluster: did not recognize cabinet [${cabinet}]`);
555
- let cabObj = enviro.cabinets.find(c => c.name === cabinet);
556
- if (cabObj == undefined)
557
- throw new Error(`Cannot find cluster: did not recognize cabinet [${cabinet}]`);
558
- if (cabObj.cluster == undefined)
559
- throw new Error(`Cannot find cluster: cabinet [${cabinet}] does not have a cluster specified.`);
560
- let cluster = rootMap.clusters.find(c => c.name == cabObj.cluster);
561
- if (cluster == undefined)
562
- throw new Error(`Did not recognize cluster [${cabObj.cluster}]`);
563
- return cluster;
564
- }
565
- catch (err) {
566
- throw err;
567
- }
568
- }
569
- buildSelectChoicesFrom(tree) {
570
- try {
571
- let choices = [];
572
- // the value is no good here - need scope and target both available
573
- render.renderStringTree(tree, (txt, item) => choices.push({ name: txt, value: item.value }));
574
- // // This is one way to do it
575
- // for (let item of tree) {
576
- //
577
- // let thisChoice: PromptChoice = { name: item.text, value: item.text };
578
- // choices.push(thisChoice);
579
- //
580
- // if (item.children && item.children.length > 0) {
581
- // let children = this.buildSelectChoicesFrom(item.children);
582
- // choices.push(...children);
583
- // }
584
- // }
585
- return choices;
586
- }
587
- catch (err) {
588
- throw err;
589
- }
590
- }
591
- /** sets each value to "scope|target".
592
- *
593
- * This is MOSTLY a COPY-PASTE from the CabinetList command!!! This view is prob gonna be pretty common - consider promoting it to a shared utility. */
594
- buildCabinetTree(rootMap, existings) {
595
- var _a, _b, _c, _d;
596
- let tree = [];
597
- for (let ent of rootMap.enterprises) {
598
- let entBranch = { text: `${ent.name} enterprise:`, value: `${codiac_relay_contracts_1.ScopeLevel.enterprise}|${ent.name}` };
599
- let entSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.enterprise && s.target === ent.name);
600
- if (entSetting !== undefined) {
601
- let valueSuffix = this.ellipsis(35, (_a = entSetting.value) !== null && _a !== void 0 ? _a : "[set to undefined]");
602
- valueSuffix = `(${valueSuffix})`;
603
- entBranch.text = entBranch.text.concat(" ", this._styler.dim(valueSuffix));
604
- }
605
- for (let env of _.sortBy(ent.environments, e => e.sequence, e => e.name)) {
606
- let envBranch = { text: `${env.name}`, value: `${codiac_relay_contracts_1.ScopeLevel.environment}|${env.name}` };
607
- let envSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.environment && s.target === env.name);
608
- if (envSetting !== undefined) {
609
- let valueSuffix = this.ellipsis(35, (_b = envSetting.value) !== null && _b !== void 0 ? _b : "[set to undefined]");
610
- valueSuffix = `(${valueSuffix})`;
611
- envBranch.text = envBranch.text.concat(" ", this._styler.dim(valueSuffix));
612
- }
613
- for (let cab of env.cabinets) {
614
- // let cwg = rootMap.clusters.find(c => c.name === cab.cluster);
615
- // let clusterDesc = cwg ? ` (${cab.cluster}, ${cwg.provider} ${cwg.locationName})` : "";
616
- let cabBranch = {
617
- text: `${cab.name}`,
618
- value: `${codiac_relay_contracts_1.ScopeLevel.cabinet}|${cab.name}`
619
- };
620
- let cabSetting = existings === null || existings === void 0 ? void 0 : existings.find(s => s.scope === codiac_relay_contracts_1.ScopeLevel.cabinet && s.target === cab.name);
621
- if (cabSetting !== undefined) {
622
- let valueSuffix = this.ellipsis(35, (_c = cabSetting.value) !== null && _c !== void 0 ? _c : "[set to undefined]");
623
- valueSuffix = `(${valueSuffix})`;
624
- cabBranch.text = cabBranch.text.concat(" ", this._styler.dim(valueSuffix));
625
- }
626
- if (envBranch.children === undefined)
627
- envBranch.children = [];
628
- (_d = envBranch.children) === null || _d === void 0 ? void 0 : _d.push(cabBranch);
629
- }
630
- if (entBranch.children === undefined)
631
- entBranch.children = [];
632
- entBranch.children.push(envBranch);
633
- }
634
- tree.push(entBranch);
635
- }
636
- return tree;
637
- }
638
- /** Truncates the string to the given length with an ellipses as suffix */
639
- ellipsis(maxLength, value) {
640
- let output = value;
641
- if (output.length > maxLength) {
642
- let ellipsis = "..."; // Rather use the ellipsis character but String.fromCharCode(133) is returning a problematic character.
643
- output = output.slice(0, maxLength - 1 - ellipsis.length).concat(ellipsis);
644
- }
645
- return output;
646
- }
647
- /**
648
- *
649
- * @param enterprise
650
- * @param environment
651
- * @param cabinet
652
- * @param asset
653
- * @param ctrInPod (Optional, defaults to the first one in the spec) The name of the running container (not the image) inside the pod (relevant only when there's more than one).
654
- * @param defaultValue
655
- * @returns
656
- */
657
- promptForReplica(replicas, ctrInPod, defaultValue) {
658
- var _a, _b, _c, _d, _e;
659
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
660
- try {
661
- let podName;
662
- // params: enterprise: string, environment: string, cabinet: string, asset: string
663
- // // Retrieve replicas
664
- // this._ui.startSpinner(`Fetching ${asset} replicas in ${environment}/${cabinet}...`)
665
- // let reps = await this.genRelayClient.Call.assetStatus({ assetName: asset, cabinetName: cabinet, enterpriseCode: enterprise, environment: environment });
666
- // this._ui.stopSpinner((reps.successes) ? `${reps.successes.length} found.` : "failed.")
667
- // if (reps.error) throw reps.error;
668
- // if (reps.successes == undefined || reps.successes.length === 0) throw new Error(`No ${asset} replicas exist in cabinet ${environment}/${cabinet}. ${reps.message ?? ""}`);
669
- //
670
- // let replicas = reps.successes[0].currentVersion.pods; // <--- HEY!!! Relay shouldnt be exposing raw k8s contracts here - this shd be a codiac contract
671
- let choices = replicas.filter(r => { var _a; return ((_a = r.metadata) === null || _a === void 0 ? void 0 : _a.name) !== undefined; })
672
- .map(r => { var _a, _b, _c; return ({ name: `${(_a = r.metadata.name) !== null && _a !== void 0 ? _a : ""} (${(_b = r.status) === null || _b === void 0 ? void 0 : _b.phase})`, value: (_c = r.metadata.name) !== null && _c !== void 0 ? _c : "" }); });
673
- // Select a replica...
674
- if (choices.length === 0) {
675
- this._ui.userMessage(`No replicas found.`);
676
- podName = "unknown";
677
- // return undefined; // <--- this is what we should do here.
678
- }
679
- else if (choices.length === 1) {
680
- podName = choices[0].value;
681
- this._ui.userMessage(`1 replica found: ${this._styler.hilite(podName)}`);
682
- }
683
- else {
684
- let keep = this.takeDefaults;
685
- if (defaultValue && Boolean(choices.find(x => x.value === defaultValue)) && !this.takeDefaults) {
686
- keep = yield this._ui.promptConfirm("keepReplica", `Replica: ${this._styler.hilite(defaultValue)} `);
687
- }
688
- if (keep && defaultValue !== undefined) {
689
- podName = defaultValue;
690
- }
691
- else {
692
- podName = (yield this._ui.promptSelect("replica", "Replica...", choices, false, false)); // Assertion operator ok here - we're not allowing undefined options.
693
- }
694
- }
695
- let replica = (replicas.find(r => { var _a; return ((_a = r.metadata) === null || _a === void 0 ? void 0 : _a.name) === podName; })); // Assertion ok: selection was already limited to this list.
696
- // Select the container inside...
697
- let containerName;
698
- if ((((_a = replica.spec) === null || _a === void 0 ? void 0 : _a.containers) == undefined) || (((_b = replica.spec) === null || _b === void 0 ? void 0 : _b.containers.length) === 0))
699
- throw new Error("No containers are specified in that replica");
700
- if (!_.isEmpty(ctrInPod)) {
701
- let found = replica.spec.containers.find(c => c.name === ctrInPod);
702
- if (!found)
703
- throw new Error(`Container [${ctrInPod}] not found in that replica`);
704
- containerName = found.name;
705
- }
706
- else {
707
- containerName = replica.spec.containers[0].name;
708
- if (((_c = replica.spec) === null || _c === void 0 ? void 0 : _c.containers.length) > 1) {
709
- // TODO: promptSelect from the list of containers
710
- this._ui.userMessage(`${(_d = replica.spec) === null || _d === void 0 ? void 0 : _d.containers.length} containers in that replica; selected ${containerName}`);
711
- }
712
- }
713
- let k8sCtr = {
714
- namespace: (_e = replica.metadata) === null || _e === void 0 ? void 0 : _e.namespace,
715
- pod: podName,
716
- container: containerName
717
- };
718
- return k8sCtr;
719
- }
720
- catch (err) {
721
- throw err;
722
- }
723
- });
724
- }
725
- renderSelectedContent(context, contentType, k8sEntities, contentOptions, replicas) {
726
- var _a;
727
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
728
- try {
729
- switch (contentType) {
730
- case (AssetContentType.logs):
731
- if (context.replica == undefined)
732
- throw new Error("No replica selected.");
733
- if (k8sEntities.pod == undefined || k8sEntities.container == undefined)
734
- throw new Error("No replica selected.");
735
- yield this.showLogs(context, contentOptions);
736
- break;
737
- case (AssetContentType.term):
738
- if (context.replica == undefined)
739
- throw new Error("No replica selected.");
740
- if (k8sEntities.pod == undefined || k8sEntities.container == undefined)
741
- throw new Error("No replica selected.");
742
- let termArgs = { tty: true, command: (_a = contentOptions === null || contentOptions === void 0 ? void 0 : contentOptions.terminalStartup) !== null && _a !== void 0 ? _a : DEFAULT_TERMINAL_STARTER };
743
- yield this.runExec(context, termArgs, k8sEntities);
744
- break;
745
- case (AssetContentType.exec):
746
- if (context.replica == undefined)
747
- throw new Error("No replica selected.");
748
- if (k8sEntities.pod == undefined || k8sEntities.container == undefined)
749
- throw new Error("No replica selected.");
750
- let execArgs = contentOptions;
751
- execArgs.tty = false; // and we want a run-once behavior so the ws closes after the command completes.
752
- yield this.runExec(context, execArgs, k8sEntities);
753
- break;
754
- case (AssetContentType.config):
755
- if (context.replica == undefined)
756
- throw new Error("No replica selected.");
757
- if (k8sEntities.pod == undefined || k8sEntities.container == undefined)
758
- throw new Error("No replica selected.");
759
- let cfgInput = contentOptions;
760
- if (!cfgInput.rootPathName.startsWith("/"))
761
- cfgInput.rootPathName = "/".concat(cfgInput.rootPathName);
762
- let cfgExec = { tty: false, command: ["cat", cfgInput.rootPathName] };
763
- yield this.runExec(context, cfgExec, k8sEntities);
764
- break;
765
- case (AssetContentType.env):
766
- if (context.replica == undefined)
767
- throw new Error("No replica selected.");
768
- if (k8sEntities.pod == undefined || k8sEntities.container == undefined)
769
- throw new Error("No replica selected.");
770
- let envArgs = { tty: false, command: "env" };
771
- yield this.runExec(context, envArgs, k8sEntities);
772
- break;
773
- case (AssetContentType.status):
774
- // await this.watchEvents(context, k8sEntities.namespace, replicas);
775
- yield this.watchStatus_NEW(context, k8sEntities.namespace, replicas);
776
- // await this.watchStatus(context, k8sEntities.namespace, replicas);
777
- // await this.watchReplicaSet(context, k8sEntities.namespace);
778
- // await this.showStatus(context, k8sEntities.namespace, replicas);
779
- break;
780
- default:
781
- this.logger.debug(`Content type ${contentType} is not yet supported.`, [context, contentType, contentOptions]);
782
- this._ui.userMessage(`Content type ${contentType} is not yet supported.`);
783
- }
784
- return;
785
- }
786
- catch (err) {
787
- throw (err);
788
- }
789
- });
790
- }
791
- getKubeConfig(context) {
792
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
793
- // Retrieve cluster connection specs
794
- let res = yield this.genRelayClient.Call.getClusterConnectionSpecs({
795
- enterprise: context.enterprise,
796
- environment: context.environment,
797
- cabinet: context.cabinet
798
- });
799
- if (res.error)
800
- throw res.error;
801
- if (res.output == undefined || _.isEmpty(res.output)) {
802
- this.log(`Failed loading cluster spec: ${res.message}.`);
803
- throw new Error(`Failed loading cluster spec: ${res.message}.`);
804
- }
805
- // Create the k8s client
806
- let k8sConfig = new client_node_1.KubeConfig();
807
- k8sConfig.loadFromString(res.output);
808
- return k8sConfig;
809
- });
810
- }
811
- getK8sClient(context, kube) {
812
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
813
- let k8sConfig = kube !== null && kube !== void 0 ? kube : (yield this.getKubeConfig(context));
814
- let theirApi = k8sConfig.makeApiClient(k8s.CoreV1Api);
815
- return theirApi;
816
- });
817
- }
818
- /** Gets the cluster cnxn specs from the relay, then makes the k8s call from the cli.
819
- *
820
- * Throws any errors. */
821
- fetchReplicas(context, namespace, k8sClient) {
822
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
823
- try {
824
- let theirApi = k8sClient !== null && k8sClient !== void 0 ? k8sClient : yield this.getK8sClient(context);
825
- // Fetch from the cluster
826
- let podResult = yield theirApi.listNamespacedPod(namespace, undefined, undefined, undefined, undefined, `${codiac_constants_1.CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`);
827
- let replicas = podResult.body.items;
828
- // let replicas = _.orderBy(podResult.body.items, p => p.metadata?.labels?.assetVersion, 'desc'); // NOTE: this isnt a semantic version sort
829
- try {
830
- // Might need a semver.coerce() in here...
831
- replicas = replicas.sort((a, b) => { var _a, _b, _c, _d, _e, _f; return semver.rcompare((_c = (_b = (_a = a.metadata) === null || _a === void 0 ? void 0 : _a.labels) === null || _b === void 0 ? void 0 : _b.assetVersion) !== null && _c !== void 0 ? _c : "", (_f = (_e = (_d = b.metadata) === null || _d === void 0 ? void 0 : _d.labels) === null || _e === void 0 ? void 0 : _e.assetVersion) !== null && _f !== void 0 ? _f : ""); }); // removes semvers so they can be sorted uniquely
832
- }
833
- catch (err) {
834
- replicas = _.orderBy(replicas, p => { var _a, _b, _c; return (_c = (_b = (_a = p.metadata) === null || _a === void 0 ? void 0 : _a.labels) === null || _b === void 0 ? void 0 : _b.assetVersion) !== null && _c !== void 0 ? _c : ""; }); // TODO: we need this ALSO sorted by replica set (ie: name or labels["pod-template-hash"])
835
- }
836
- return replicas;
837
- }
838
- catch (err) {
839
- throw err;
840
- }
841
- });
842
- }
843
- // protected async watchEvents(context: AssetReplicaContext, namespace: string, replicas?: k8s.V1Pod[] | undefined): Promise<void> {
844
- // // let selector = `${CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`;
845
- // let selector = `app=${context.asset}`;
846
- // let creds = await this.getKubeConfig(context);
847
- // let k8sClient = creds.makeApiClient(k8s.EventsV1Api);
848
- // let watcher = new Watch(creds);
849
- // watcher.watch(
850
- // '/apis/events.k8s.io/v1/namespaces/{namespace}/events',
851
- // )
852
- // let res = await k8sClient.listNamespacedEvent(namespace, undefined, undefined, undefined, undefined, selector,
853
- // undefined, undefined, undefined, undefined, true, undefined);
854
- // }
855
- watchStatus_NEW(context, namespace, replicas) {
856
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
857
- // let selector = `${CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`;
858
- let selector = `app=${context.asset}`;
859
- let kube = yield this.getKubeConfig(context);
860
- let k8sClient = yield this.getK8sClient(context);
861
- (0, log_update_wrapper_1.logUpdate)(`Watching ${this._styler.hilite(context.asset)} in ${context.environment}/${context.cabinet}... (ctrl-c to quit)`);
862
- log_update_wrapper_1.logUpdate.done();
863
- (0, log_update_wrapper_1.logUpdate)(`...empty...`);
864
- // This approach DOES return what's different in the cached list,
865
- // but doesnt stream updates from the cluster - it only runs a first request,
866
- // meaning you need to call this repeatedly - this looks not fully-baked...?
867
- let informer = (0, client_node_1.makeInformer)(kube, `/api/v1/namespaces/${namespace}/pods`, () => k8sClient.listNamespacedPod(namespace, undefined, undefined, undefined, undefined, selector)
868
- // () => k8sClient.listNamespacedPod(namespace, undefined, undefined, undefined, undefined, selector, undefined, undefined, undefined, undefined, true),
869
- // selector
870
- );
871
- // informer.on('add', (obj: k8s.V1Pod) => { console.log(`Added: ${obj.metadata!.name}`); });
872
- // informer.on('update', (obj: k8s.V1Pod) => { console.log(`Updated: ${obj.metadata!.name}`); });
873
- informer.on('change', (obj) => {
874
- // console.log(`Changed: ${obj.metadata!.name}`);
875
- let canvas = { table: "", curver: "" };
876
- let replicas = informer.list(namespace);
877
- if (replicas.length > 0) {
878
- for (let pod of replicas) {
879
- this.renderReplicaStatusRow(pod, canvas);
880
- }
881
- }
882
- else {
883
- canvas.table = "(no instances found)";
884
- }
885
- log_update_wrapper_1.logUpdate.clear();
886
- (0, log_update_wrapper_1.logUpdate)(canvas.table);
887
- });
888
- // informer.on('delete', (obj: k8s.V1Pod) => { console.log(`Deleted: ${obj.metadata!.name}`); });
889
- informer.on('error', (err) => {
890
- if (err.statusCode === 401) {
891
- // TODO: reach out to the relay to refresh the user token in the kubeconfig.
892
- log_update_wrapper_1.logUpdate.clear();
893
- (0, log_update_wrapper_1.logUpdate)(`Authentication error; please refresh your credentials.`);
894
- }
895
- else {
896
- log_update_wrapper_1.logUpdate.clear();
897
- console.error(err);
898
- }
899
- // Restart informer after 5sec
900
- setTimeout(() => {
901
- informer.start();
902
- }, 5000);
903
- });
904
- informer.start();
905
- // let watch: boolean = true;
906
- // listNamespacedPod() with "watch" just floats out into space with no return
907
- // let podResult = await k8sClient.listNamespacedPod(namespace, undefined, undefined, undefined, undefined,
908
- // `${CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`, undefined, undefined, undefined, undefined, watch);
909
- // while (podResult) {
910
- // logUpdate(`${podResult.body.items.length} pods returned`); // Thanks, nice and ambiguous; lets give them something actionable here instead.
911
- // }
912
- });
913
- }
914
- watchReplicaSet(context, namespace, replicaSets) {
915
- var _a, _b, _c, _d, _e, _f, _g;
916
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
917
- let k8sConfig = (yield this.getKubeConfig(context));
918
- let k8sClient = k8sConfig.makeApiClient(k8s.AppsV1Api);
919
- // let selector = `${CodiacLabels.LABEL_ASSET_NAME}=${context.asset}`;
920
- let selector = `app=${context.asset}`;
921
- let watch = true;
922
- do {
923
- let content = "";
924
- log_update_wrapper_1.logUpdate.clear();
925
- try {
926
- let podResult = yield k8sClient.listNamespacedReplicaSet(namespace, undefined, undefined, undefined, undefined, selector);
927
- let output = podResult.body.items;
928
- for (let item of output) {
929
- if (item.status) {
930
- content = content.concat(`${(_b = (_a = item.metadata) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : "unnamed"} ${(_c = item.status.availableReplicas) !== null && _c !== void 0 ? _c : 0}/${item.status.replicas}`, "\n");
931
- }
932
- else {
933
- content = content.concat(`no status for ${(_e = (_d = item.metadata) === null || _d === void 0 ? void 0 : _d.name) !== null && _e !== void 0 ? _e : "unnamed"}`, "\n");
934
- }
935
- }
936
- }
937
- catch (err) {
938
- content = content.concat(`Error ${(_f = err.name) !== null && _f !== void 0 ? _f : ""} ${(_g = err.message) !== null && _g !== void 0 ? _g : ""}`, "\n");
939
- }
940
- (0, log_update_wrapper_1.logUpdate)(content);
941
- yield this.unblockAndSleep(0.5);
942
- } while (watch);
943
- });
944
- }
945
- watchStatus(context, namespace, replicas) {
946
- var _a, _b, _c, _d, _e, _f, _g;
947
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
948
- let watch = true;
949
- let k8sClient = yield this.getK8sClient(context);
950
- let pods = replicas;
951
- let spinChars = ["|", "/", "-", "\\"];
952
- let spinIndex = -1;
953
- (0, log_update_wrapper_1.logUpdate)(`Status for ${context.asset} in ${context.environment}/${context.cabinet}... (ctrl-c to quit)`);
954
- log_update_wrapper_1.logUpdate.done();
955
- do {
956
- // await this.showStatus(context, namespace, pods, k8sClient);
957
- spinIndex++;
958
- if (spinIndex >= spinChars.length)
959
- spinIndex = 0;
960
- let spinner = spinChars[spinIndex];
961
- // TODO: trap failures here and if status currently exists, render the error and leave the existing
962
- let table = "";
963
- try {
964
- pods = pods !== null && pods !== void 0 ? pods : yield this.fetchReplicas(context, namespace, k8sClient);
965
- if (pods && pods.length > 0) {
966
- log_update_wrapper_1.logUpdate.clear();
967
- let curver = ""; // current asset version being listed
968
- // let deployed = res.successes[0].currentVersion.deployed;
969
- for (let replica of pods) {
970
- let replicaName = (_b = (_a = replica.metadata) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : "unnamed";
971
- let podHash = ((_c = replica.metadata) === null || _c === void 0 ? void 0 : _c.labels) ? (_d = replica.metadata) === null || _d === void 0 ? void 0 : _d.labels["pod-template-hash"] : undefined;
972
- let replicaId = podHash ? replicaName.slice(replicaName.indexOf(podHash)) : replicaName;
973
- let assetVersion = ((_e = replica.metadata) === null || _e === void 0 ? void 0 : _e.labels) ? (_f = replica.metadata) === null || _f === void 0 ? void 0 : _f.labels[codiac_constants_1.CodiacLabels.LABEL_ASSET_VERSION] : undefined;
974
- // Version separator
975
- if (assetVersion !== undefined && assetVersion !== curver) {
976
- curver = assetVersion;
977
- table = table.concat(`${spinner} ${assetVersion}`, "\n");
978
- }
979
- // Each replica
980
- if (replica.status) {
981
- let state = this.renderPodState(replica);
982
- let condition = this.renderCondition(replica);
983
- let restarts = (replica.status.containerStatuses && replica.status.containerStatuses.length > 0) ? replica.status.containerStatuses[0].restartCount : 0;
984
- table = table.concat(` ${replicaId}) ${state} ${condition} started (${replica.status.startTime}) ${restarts} restarts\n`); // , deployed (${deployed})`)
985
- }
986
- }
987
- }
988
- else {
989
- table = table.concat(`No running instances found.`);
990
- }
991
- }
992
- catch (err) {
993
- table = table.concat(`Error refreshing... ${(_g = err.message) !== null && _g !== void 0 ? _g : err.name}\n`);
994
- }
995
- (0, log_update_wrapper_1.logUpdate)(table);
996
- pods = undefined;
997
- yield this.unblockAndSleep(0.5);
998
- } while (watch);
999
- });
1000
- }
1001
- /** Mutates canvas */
1002
- renderReplicaStatusRow(replica, canvas) {
1003
- var _a, _b, _c, _d, _e, _f;
1004
- let replicaName = (_b = (_a = replica.metadata) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : "unnamed";
1005
- let podHash = ((_c = replica.metadata) === null || _c === void 0 ? void 0 : _c.labels) ? (_d = replica.metadata) === null || _d === void 0 ? void 0 : _d.labels["pod-template-hash"] : undefined;
1006
- let replicaId = podHash ? replicaName.slice(replicaName.indexOf(podHash)) : replicaName;
1007
- let assetVersion = ((_e = replica.metadata) === null || _e === void 0 ? void 0 : _e.labels) ? (_f = replica.metadata) === null || _f === void 0 ? void 0 : _f.labels[codiac_constants_1.CodiacLabels.LABEL_ASSET_VERSION] : undefined;
1008
- // Version separator
1009
- if (assetVersion !== undefined && assetVersion !== canvas.curver) {
1010
- canvas.curver = assetVersion;
1011
- canvas.table = canvas.table.concat(`${assetVersion}`, "\n");
1012
- }
1013
- // Each replica
1014
- if (replica.status) {
1015
- let state = this.renderPodState(replica);
1016
- let condition = this.renderCondition(replica);
1017
- let restarts = (replica.status.containerStatuses && replica.status.containerStatuses.length > 0) ? replica.status.containerStatuses[0].restartCount : 0;
1018
- canvas.table = canvas.table.concat(` ${replicaId}) ${state} ${condition} started (${replica.status.startTime}) ${restarts} restarts\n`); // , deployed (${deployed})`)
1019
- }
1020
- }
1021
- renderCondition(replica) {
1022
- var _a;
1023
- let cond = "";
1024
- if (replica.status) {
1025
- if (((_a = replica.status) === null || _a === void 0 ? void 0 : _a.conditions) && replica.status.conditions.length > 0) {
1026
- let latestCond = _.orderBy(replica.status.conditions, x => x.lastTransitionTime, "desc")[0];
1027
- cond = latestCond.type;
1028
- if (latestCond.reason) {
1029
- cond = cond.concat(" (", latestCond.reason, ")");
1030
- }
1031
- if (latestCond.message) {
1032
- // TODO: Revisit; message is prob too much info to jam into a cli output line.
1033
- cond = cond.concat(" ('", latestCond.message, "')");
1034
- }
1035
- cond = cond.concat(` since (${latestCond.lastTransitionTime})`);
1036
- }
1037
- }
1038
- return cond;
1039
- }
1040
- renderPodState(replica) {
1041
- var _a, _b, _c, _d;
1042
- let state = "[no status found]";
1043
- if ((_a = replica.metadata) === null || _a === void 0 ? void 0 : _a.deletionTimestamp) {
1044
- state = "Terminating";
1045
- }
1046
- else if (replica.status) {
1047
- state = "";
1048
- // Pod phase
1049
- if (replica.status.phase) {
1050
- state = replica.status.phase;
1051
- }
1052
- if (replica.status.reason) {
1053
- state = state.concat(" (", replica.status.reason, ")");
1054
- }
1055
- if (replica.status.message) {
1056
- state = state.concat(" ('", replica.status.message, "')");
1057
- }
1058
- // container state
1059
- if (replica.status.containerStatuses && replica.status.containerStatuses.length > 0) {
1060
- let ctrStatus = replica.status.containerStatuses[0];
1061
- // state = state.concat(" ", JSON.stringify(ctrStatus.state), "\n");
1062
- if ((_b = ctrStatus.state) === null || _b === void 0 ? void 0 : _b.waiting) {
1063
- if (ctrStatus.state.waiting.reason) {
1064
- state = state.concat(" (", ctrStatus.state.waiting.reason, ")");
1065
- }
1066
- if (ctrStatus.state.waiting.message) {
1067
- state = state.concat(" ('", ctrStatus.state.waiting.message, "')");
1068
- }
1069
- }
1070
- else if ((_c = ctrStatus.state) === null || _c === void 0 ? void 0 : _c.terminated) {
1071
- if (ctrStatus.state.terminated.reason) {
1072
- state = state.concat(" (", ctrStatus.state.terminated.reason, ")");
1073
- }
1074
- if (ctrStatus.state.terminated.message) {
1075
- state = state.concat(" (", ctrStatus.state.terminated.message, ")");
1076
- }
1077
- }
1078
- else if ((_d = ctrStatus.state) === null || _d === void 0 ? void 0 : _d.running) {
1079
- }
1080
- }
1081
- }
1082
- return state;
1083
- }
1084
- unblockAndSleep(durationInSecs) {
1085
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
1086
- return new Promise(resolve => {
1087
- setTimeout(() => resolve(), durationInSecs * 1000);
1088
- });
1089
- });
1090
- }
1091
- /** Fetches pods if not already provided. */
1092
- showStatus(context, namespace, replicas, k8sApi) {
1093
- var _a, _b, _c;
1094
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
1095
- try {
1096
- let k8sClient = k8sApi !== null && k8sApi !== void 0 ? k8sApi : yield this.getK8sClient(context);
1097
- let pods = replicas !== null && replicas !== void 0 ? replicas : yield this.fetchReplicas(context, namespace, k8sClient);
1098
- if (pods && pods.length > 0) {
1099
- // let deployed = res.successes[0].currentVersion.deployed;
1100
- console.log(`Status for ${context.asset} ${(pods.length > 0) ? " instances" : ""} running in ${context.environment}/${context.cabinet}`);
1101
- for (let replica of pods) {
1102
- let replicaName = (_b = (_a = replica.metadata) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : "unnamed";
1103
- if (((_c = replica.status) === null || _c === void 0 ? void 0 : _c.conditions) && replica.status.conditions.length > 0) {
1104
- let latestCond = _.orderBy(replica.status.conditions, x => x.lastTransitionTime, "desc")[0];
1105
- console.log(`${replicaName} ${latestCond.type} since (${latestCond.lastTransitionTime}) started (${replica.status.startTime}) ${replica.status.containerStatuses[0].restartCount} restarts`); // , deployed (${deployed})`)
1106
- }
1107
- else {
1108
- console.log("Condition not available"); // Thanks, nice and ambiguous; lets give them something actionable here instead.
1109
- }
1110
- }
1111
- }
1112
- else {
1113
- this._ui.userMessage(`No running instances found.`);
1114
- }
1115
- return;
1116
- }
1117
- catch (err) {
1118
- throw err;
1119
- }
1120
- });
1121
- }
1122
- showLogs(context, logOptions) {
1123
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
1124
- try {
1125
- // SHOW LOGS
1126
- let req = Object.assign(Object.assign({}, context), { logOptions: logOptions });
1127
- let cnxnResult = yield this.genRelayClient.Call.getLogStreamSpecs(req);
1128
- if (cnxnResult.error)
1129
- throw cnxnResult.error;
1130
- if (cnxnResult.output == undefined)
1131
- throw new Error(`Failed without error getting log stream connection specs.`);
1132
- const logStream = new stream.PassThrough();
1133
- logStream.on("data", (chunk) => {
1134
- // use write rather than console.log to prevent double line feed
1135
- process.stdout.write(chunk);
1136
- });
1137
- let streamer = new LogStreamer(this.logger);
1138
- let requestOptions = cnxnResult.output;
1139
- // Deserialize from strings into Buffers after their trip over the wire
1140
- if (cnxnResult.output.ca)
1141
- requestOptions.ca = Buffer.from(cnxnResult.output.ca);
1142
- else
1143
- this.logger.warn(`Cluster connection specs retrieved for log streaming did not have a ca.`);
1144
- if (cnxnResult.output.cert)
1145
- requestOptions.cert = Buffer.from(cnxnResult.output.cert);
1146
- else
1147
- this.logger.warn(`Cluster connection specs retrieved for log streaming did not have a cert.`);
1148
- if (cnxnResult.output.key)
1149
- requestOptions.key = Buffer.from(cnxnResult.output.key);
1150
- else
1151
- this.logger.warn(`Cluster connection specs retrieved for log streaming did not have a key.`);
1152
- streamer.go(requestOptions, logStream); // shouldn't we be awaiting this?
1153
- }
1154
- catch (err) {
1155
- throw err;
1156
- }
1157
- });
1158
- }
1159
- /**
1160
- * @param context Fully qualified path, in terms of Codiac entities, to identify a single replica of an asset in a cabinet.
1161
- * @param execArgs Parameters identifying the ultimate command to run and the console behavior.
1162
- * @param K8sEntities The identifying names of the relevant kubernetes objects, corresponding to the asset replica context, that fully qualify the desired container. */
1163
- runExec(context, execArgs, k8sEntities) {
1164
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
1165
- try {
1166
- let k8sCnxnResult = yield this.genRelayClient.Call.getClusterConnectionSpecs(context);
1167
- if (k8sCnxnResult.error)
1168
- throw k8sCnxnResult.error;
1169
- if (k8sCnxnResult.output === undefined || _.isEmpty(k8sCnxnResult.output))
1170
- throw new Error(`Retrieval of cluster connection spec failed without error.`);
1171
- let spec = k8sCnxnResult.output;
1172
- let kc = new k8s.KubeConfig();
1173
- kc.loadFromString(spec);
1174
- // ======================================================================================================
1175
- // We have to resume here because the console keystrokes are not getting through,
1176
- // even though a POC running just the exec (without all the other ui code we're running)
1177
- // doesnt have the input problem.
1178
- //
1179
- // TODO: Find out why we need this stdin resumed.
1180
- // Most likely because it was piped into an spawned child process that has since ended.
1181
- //
1182
- process.stdin.resume(); // Somehwere we probably lost track of a stdin
1183
- //
1184
- //
1185
- // ======================================================================================================
1186
- const exec = new k8s.Exec(kc);
1187
- const ws = yield exec.exec(k8sEntities.namespace, k8sEntities.pod, k8sEntities.container, execArgs.command, process.stdout, process.stderr, process.stdin, execArgs.tty, (status) => {
1188
- // tslint:disable-next-line:no-console
1189
- // console.log("Exited with status:");
1190
- // // tslint:disable-next-line:no-console
1191
- this.logger.debug(`Executed terminal cmd. Status: ${status.status} ${status.reason}`, JSON.stringify(status, null, 2));
1192
- });
1193
- ws.onopen = function open() {
1194
- process.stdout.write("connected");
1195
- };
1196
- ws.onclose = function close(evt) {
1197
- // process.stdout.write("disconnected");
1198
- process.exit(evt.code);
1199
- return;
1200
- };
1201
- ws.onmessage = this.routeK8sWebSocketMessage;
1202
- // function incoming(msg: any) {
1203
- // let buf = Buffer.from(msg.data);
1204
- // // The k8s client prefixes the buffer with the stream number at position 0...
1205
- // let streamNumBuf = buf.readInt8();
1206
- // let payload = buf.toString('utf8', 1); // <-- start at pos 1 to skip the stream number.
1207
- // switch (streamNumBuf) {
1208
- // case WebSocketHandler.StdoutStream /* 1 */:
1209
- // process.stdout.write(payload);
1210
- // break;
1211
- // case WebSocketHandler.StderrStream /* 2 */:
1212
- // process.stderr.write(`ERROR: ` + payload);
1213
- // break;
1214
- // case WebSocketHandler.StatusStream /* 3 */:
1215
- // let k8sStatus = JSON.parse(payload) as V1Status;
1216
- // process.stdout.write(`STATUS: ${k8sStatus.status}: ${k8sStatus.message}`);
1217
- // break;
1218
- // default:
1219
- // process.stderr.write(`feedback on ${streamNumBuf}`)
1220
- // }
1221
- // return;
1222
- // };
1223
- // This never gets hit. Instead, onmessage gets hit with a message designated for stderr stream.
1224
- ws.onerror = function error(err) {
1225
- process.stdout.write(`Error: ${err.message}`);
1226
- ws.close();
1227
- };
1228
- // Gotta do a process.exit(code) to give the control back.
1229
- // THese dont fire
1230
- // ws.once('exit', (code) => process.exit(code));
1231
- // ws.once('end', (code) => process.stdout.write("end event fired"));
1232
- return;
1233
- }
1234
- catch (err) {
1235
- throw err;
1236
- }
1237
- });
1238
- }
1239
- /** Parses the stream number from the incoming message,
1240
- * and writes the data to the designated target stream.
1241
- *
1242
- * (The k8s client prefixes the buffer with the stream number at position 0)
1243
- */
1244
- routeK8sWebSocketMessage(msg) {
1245
- var _a;
1246
- let buf = Buffer.from(msg.data);
1247
- // The k8s client prefixes the buffer with the stream number at position 0...
1248
- let streamNumBuf = buf.readInt8();
1249
- let payload = buf.toString('utf8', 1); // <-- start at pos 1 to skip the stream number.
1250
- switch (streamNumBuf) {
1251
- case web_socket_handler_1.WebSocketHandler.StdoutStream /* 1 */:
1252
- process.stdout.write(payload);
1253
- break;
1254
- case web_socket_handler_1.WebSocketHandler.StderrStream /* 2 */:
1255
- process.stderr.write(`ERROR: ` + payload);
1256
- break;
1257
- case web_socket_handler_1.WebSocketHandler.StatusStream /* 3 */:
1258
- let k8sStatus = JSON.parse(payload);
1259
- if (((_a = k8sStatus.status) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === "failure") {
1260
- if (k8sStatus.reason !== "NonZeroExitCode") {
1261
- process.stdout.write(`STATUS: ${k8sStatus.status}: ${k8sStatus.message}`);
1262
- }
1263
- }
1264
- break;
1265
- default:
1266
- process.stderr.write(`feedback on ${streamNumBuf}`);
1267
- }
1268
- return;
1269
- }
1270
- }
1271
- exports.default = AssetView;
1272
- AssetView.description = 'Renders a selected type of content for an asset';
1273
- AssetView.aliases = ['asset:monitor', "asset:mon", "asset:get"];
1274
- AssetView.flags = {
1275
- help: core_1.Flags.help({ char: 'h' }),
1276
- enterprise: core_1.Flags.string({ char: 'e', description: 'The name of the enterprise containing the asset being viewed.' }),
1277
- asset: core_1.Flags.string({ char: 'a', description: 'The name of the asset to view.' }),
1278
- environment: core_1.Flags.string({ char: 'n', description: 'The name of the environment in which the cabinet resides.' }),
1279
- cabinet: core_1.Flags.string({ char: 'c', description: 'The name of the cabinet from which the content is to be drawn.' }),
1280
- replica: core_1.Flags.string({ char: 'r', description: 'The name of one of the asset instances currently running in the cabinet.' }),
1281
- type: core_1.Flags.string({ char: 't', options: [...Object.keys(AssetContentType)], description: 'The type of content to retrieve.' }),
1282
- terminal: core_1.Flags.string({ options: ["bash", "sh"], description: 'Command used to start the terminal (defaults to "bash")' }),
1283
- logsFollow: core_1.Flags.boolean({ char: 'f', default: false, description: '(requires type=logs) Follow (aka watch, tail, stream) the output.' }),
1284
- logsTail: core_1.Flags.integer({ char: 'l', default: 10, description: '(requires type=logs) Lines of recent logs to include in the output. Enter -1 to include the entire log history stored in the container.' }),
1285
- configFile: core_1.Flags.string({ char: 'F', description: '(requires type=config) The root pathname to the config file to fetch.' }),
1286
- silent: core_1.Flags.boolean({ exclusive: ["echo", "toscript"], description: 'Non-Interactive mode; executes without any user interaction and fails on any missing or invalid arguments.' }),
1287
- echo: core_1.Flags.boolean({ exclusive: ["toscript", "silent"], description: 'Echo interaction mode; renders the equivalent non-interactive cli command for future use before final execution.' }),
1288
- toscript: core_1.Flags.boolean({ exclusive: ["echo", "silent"], description: 'Toscript interaction mode; renders the equivalent non-interactive cli command WITHOUT any execution.' }),
1289
- takeDefaults: core_1.Flags.boolean({ exclusive: ["silent"], description: "Prevents prompting for confirmation on parameters that were passed in or were set to default values." })
1290
- // tty: Flags.boolean({ char: 'i', default: false, description: '(requires type=exec) Specifies an interactive console session.' })
1291
- };
1292
- AssetView.strict = false; // disables argument validation so we can support variable-length arguments.
1293
- AssetView.args = {
1294
- cmd: core_1.Args.string({ description: '(requires type=exec) command and its space-separated arguments to run in the target replica.' })
1295
- };
1296
- class ExecArgs {
1297
- constructor(command, tty = true) {
1298
- this.command = command;
1299
- this.tty = tty;
1300
- }
1301
- }
1302
- exports.ExecArgs = ExecArgs;
1303
- class ConfigFileArgs {
1304
- constructor(rootPathName) {
1305
- this.rootPathName = rootPathName;
1306
- }
1307
- }
1308
- exports.ConfigFileArgs = ConfigFileArgs;
1309
- class TermArgs {
1310
- /**
1311
- *
1312
- * @param terminalStartup The type of terminal to open. This command may change depending on what terminal or command shell types are available in the image.
1313
- */
1314
- constructor(terminalStartup) {
1315
- this.terminalStartup = terminalStartup;
1316
- }
1317
- }
1318
- exports.TermArgs = TermArgs;
1319
- /** Idnetifies a container, in a pod, in a namespace, in a cluster. */
1320
- class K8sContainerRef {
1321
- constructor(namespace, podName,
1322
- /** This should be optional. When there's only one container in a pod,
1323
- * we should be able to derive this from the pod spec. */
1324
- containerName) {
1325
- this.namespace = namespace;
1326
- this.podName = podName;
1327
- this.containerName = containerName;
1328
- }
1329
- }
1330
- exports.K8sContainerRef = K8sContainerRef;
1331
- class LogStreamer {
1332
- constructor(logger) {
1333
- this.logger = logger;
1334
- }
1335
- go(requestOptions, stream) {
1336
- return tslib_1.__awaiter(this, void 0, void 0, function* () {
1337
- return new Promise((resolve, reject) => {
1338
- const req = request(requestOptions, (error, response, body) => {
1339
- if (error) {
1340
- reject(error);
1341
- }
1342
- else if (response.statusCode !== 200) {
1343
- this.logger.detail(`Error connecting to log stream`, body);
1344
- let details;
1345
- try {
1346
- const k8sStatus = client_node_1.ObjectSerializer.deserialize(JSON.parse(body), 'V1Status');
1347
- details = `${k8sStatus.status}${k8sStatus.reason ? " (" + k8sStatus.reason + ")" : ""} ${k8sStatus.message}`;
1348
- }
1349
- catch (_a) {
1350
- details = "See cli log for details.";
1351
- }
1352
- reject(new Error(`Error connecting to log stream. ${details}`));
1353
- }
1354
- }).on('response', (response) => {
1355
- if (response.statusCode === 200) {
1356
- req.pipe(stream);
1357
- resolve(req);
1358
- }
1359
- });
1360
- });
1361
- });
1362
- }
1363
- }
1364
- exports.LogStreamer = LogStreamer;
1365
- //# sourceMappingURL=view.js.map