@codiac.io/codiac-cli 1.2.18

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 (786) hide show
  1. package/README.md +37 -0
  2. package/bin/dev +17 -0
  3. package/bin/dev.cmd +3 -0
  4. package/bin/run +5 -0
  5. package/bin/run.cmd +3 -0
  6. package/codiac.json +10 -0
  7. package/lib/api-command-base.d.ts +0 -0
  8. package/lib/api-command-base.js +52 -0
  9. package/lib/api-command-base.js.map +1 -0
  10. package/lib/apis/codiac-api/common/api-client-base.d.ts +165 -0
  11. package/lib/apis/codiac-api/common/api-client-base.js +548 -0
  12. package/lib/apis/codiac-api/common/api-client-base.js.map +1 -0
  13. package/lib/apis/codiac-api/common/api-user-creds.d.ts +7 -0
  14. package/lib/apis/codiac-api/common/api-user-creds.js +19 -0
  15. package/lib/apis/codiac-api/common/api-user-creds.js.map +1 -0
  16. package/lib/apis/codiac-api/common/config-loader.d.ts +6 -0
  17. package/lib/apis/codiac-api/common/config-loader.js +19 -0
  18. package/lib/apis/codiac-api/common/config-loader.js.map +1 -0
  19. package/lib/apis/codiac-api/common/endpoint-spec.d.ts +17 -0
  20. package/lib/apis/codiac-api/common/endpoint-spec.js +28 -0
  21. package/lib/apis/codiac-api/common/endpoint-spec.js.map +1 -0
  22. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.d.ts +87 -0
  23. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js +368 -0
  24. package/lib/apis/codiac-api/common/security/api-auth-methods-legacy.js.map +1 -0
  25. package/lib/apis/codiac-api/common/security/auth-constants.d.ts +15 -0
  26. package/lib/apis/codiac-api/common/security/auth-constants.js +22 -0
  27. package/lib/apis/codiac-api/common/security/auth-constants.js.map +1 -0
  28. package/lib/apis/codiac-api/common/security/i-auth-client.d.ts +44 -0
  29. package/lib/apis/codiac-api/common/security/i-auth-client.js +3 -0
  30. package/lib/apis/codiac-api/common/security/i-auth-client.js.map +1 -0
  31. package/lib/apis/codiac-api/common/security/token-holder.d.ts +13 -0
  32. package/lib/apis/codiac-api/common/security/token-holder.js +18 -0
  33. package/lib/apis/codiac-api/common/security/token-holder.js.map +1 -0
  34. package/lib/apis/codiac-api/common/utils.d.ts +23 -0
  35. package/lib/apis/codiac-api/common/utils.js +83 -0
  36. package/lib/apis/codiac-api/common/utils.js.map +1 -0
  37. package/lib/apis/codiac-api/contracts/index.d.ts +1 -0
  38. package/lib/apis/codiac-api/contracts/index.js +5 -0
  39. package/lib/apis/codiac-api/contracts/index.js.map +1 -0
  40. package/lib/apis/codiac-api/gen/client-config.d.ts +10 -0
  41. package/lib/apis/codiac-api/gen/client-config.js +29 -0
  42. package/lib/apis/codiac-api/gen/client-config.js.map +1 -0
  43. package/lib/apis/codiac-api/gen/client.d.ts +1663 -0
  44. package/lib/apis/codiac-api/gen/client.js +15630 -0
  45. package/lib/apis/codiac-api/gen/client.js.map +1 -0
  46. package/lib/apis/codiac-api/gen/contracts.d.ts +2722 -0
  47. package/lib/apis/codiac-api/gen/contracts.js +403 -0
  48. package/lib/apis/codiac-api/gen/contracts.js.map +1 -0
  49. package/lib/apis/codiac-api/index.d.ts +3 -0
  50. package/lib/apis/codiac-api/index.js +9 -0
  51. package/lib/apis/codiac-api/index.js.map +1 -0
  52. package/lib/apis/codiac-relay/common/api-client-base.d.ts +165 -0
  53. package/lib/apis/codiac-relay/common/api-client-base.js +548 -0
  54. package/lib/apis/codiac-relay/common/api-client-base.js.map +1 -0
  55. package/lib/apis/codiac-relay/common/api-user-creds.d.ts +7 -0
  56. package/lib/apis/codiac-relay/common/api-user-creds.js +19 -0
  57. package/lib/apis/codiac-relay/common/api-user-creds.js.map +1 -0
  58. package/lib/apis/codiac-relay/common/config-loader.d.ts +6 -0
  59. package/lib/apis/codiac-relay/common/config-loader.js +19 -0
  60. package/lib/apis/codiac-relay/common/config-loader.js.map +1 -0
  61. package/lib/apis/codiac-relay/common/endpoint-spec.d.ts +17 -0
  62. package/lib/apis/codiac-relay/common/endpoint-spec.js +28 -0
  63. package/lib/apis/codiac-relay/common/endpoint-spec.js.map +1 -0
  64. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.d.ts +87 -0
  65. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js +368 -0
  66. package/lib/apis/codiac-relay/common/security/api-auth-methods-legacy.js.map +1 -0
  67. package/lib/apis/codiac-relay/common/security/auth-constants.d.ts +15 -0
  68. package/lib/apis/codiac-relay/common/security/auth-constants.js +22 -0
  69. package/lib/apis/codiac-relay/common/security/auth-constants.js.map +1 -0
  70. package/lib/apis/codiac-relay/common/security/i-auth-client.d.ts +44 -0
  71. package/lib/apis/codiac-relay/common/security/i-auth-client.js +3 -0
  72. package/lib/apis/codiac-relay/common/security/i-auth-client.js.map +1 -0
  73. package/lib/apis/codiac-relay/common/security/token-holder.d.ts +13 -0
  74. package/lib/apis/codiac-relay/common/security/token-holder.js +18 -0
  75. package/lib/apis/codiac-relay/common/security/token-holder.js.map +1 -0
  76. package/lib/apis/codiac-relay/common/utils.d.ts +23 -0
  77. package/lib/apis/codiac-relay/common/utils.js +83 -0
  78. package/lib/apis/codiac-relay/common/utils.js.map +1 -0
  79. package/lib/apis/codiac-relay/contracts/index.d.ts +1 -0
  80. package/lib/apis/codiac-relay/contracts/index.js +5 -0
  81. package/lib/apis/codiac-relay/contracts/index.js.map +1 -0
  82. package/lib/apis/codiac-relay/gen/client-config.d.ts +10 -0
  83. package/lib/apis/codiac-relay/gen/client-config.js +29 -0
  84. package/lib/apis/codiac-relay/gen/client-config.js.map +1 -0
  85. package/lib/apis/codiac-relay/gen/client.d.ts +242 -0
  86. package/lib/apis/codiac-relay/gen/client.js +1849 -0
  87. package/lib/apis/codiac-relay/gen/client.js.map +1 -0
  88. package/lib/apis/codiac-relay/gen/contracts.d.ts +3097 -0
  89. package/lib/apis/codiac-relay/gen/contracts.js +432 -0
  90. package/lib/apis/codiac-relay/gen/contracts.js.map +1 -0
  91. package/lib/apis/codiac-relay/index.d.ts +3 -0
  92. package/lib/apis/codiac-relay/index.js +9 -0
  93. package/lib/apis/codiac-relay/index.js.map +1 -0
  94. package/lib/azure-rest-client.d.ts +6 -0
  95. package/lib/azure-rest-client.js +36 -0
  96. package/lib/azure-rest-client.js.map +1 -0
  97. package/lib/cli-common/ImagesList.d.ts +0 -0
  98. package/lib/cli-common/ImagesList.js +67 -0
  99. package/lib/cli-common/ImagesList.js.map +1 -0
  100. package/lib/cli-common/argument-manager.d.ts +28 -0
  101. package/lib/cli-common/argument-manager.js +195 -0
  102. package/lib/cli-common/argument-manager.js.map +1 -0
  103. package/lib/cli-common/built-in-cli-user-input.d.ts +18 -0
  104. package/lib/cli-common/built-in-cli-user-input.js +310 -0
  105. package/lib/cli-common/built-in-cli-user-input.js.map +1 -0
  106. package/lib/cli-common/cli-interfaces.d.ts +0 -0
  107. package/lib/cli-common/cli-interfaces.js +7 -0
  108. package/lib/cli-common/cli-interfaces.js.map +1 -0
  109. package/lib/cli-common/command-base.d.ts +74 -0
  110. package/lib/cli-common/command-base.js +180 -0
  111. package/lib/cli-common/command-base.js.map +1 -0
  112. package/lib/cli-common/entities/index.d.ts +1 -0
  113. package/lib/cli-common/entities/index.js +5 -0
  114. package/lib/cli-common/entities/index.js.map +1 -0
  115. package/lib/cli-common/entities/prompt-choice.d.ts +7 -0
  116. package/lib/cli-common/entities/prompt-choice.js +3 -0
  117. package/lib/cli-common/entities/prompt-choice.js.map +1 -0
  118. package/lib/cli-common/file-selector.d.ts +48 -0
  119. package/lib/cli-common/file-selector.js +187 -0
  120. package/lib/cli-common/file-selector.js.map +1 -0
  121. package/lib/cli-common/i-user-input-provider.d.ts +0 -0
  122. package/lib/cli-common/i-user-input-provider.js +19 -0
  123. package/lib/cli-common/i-user-input-provider.js.map +1 -0
  124. package/lib/cli-common/index.d.ts +4 -0
  125. package/lib/cli-common/index.js +11 -0
  126. package/lib/cli-common/index.js.map +1 -0
  127. package/lib/cli-common/mock-ui.d.ts +27 -0
  128. package/lib/cli-common/mock-ui.js +83 -0
  129. package/lib/cli-common/mock-ui.js.map +1 -0
  130. package/lib/cli-common/prompt-select-fuzzy.d.ts +19 -0
  131. package/lib/cli-common/prompt-select-fuzzy.js +119 -0
  132. package/lib/cli-common/prompt-select-fuzzy.js.map +1 -0
  133. package/lib/cli-common/tenant-contextualizer.d.ts +0 -0
  134. package/lib/cli-common/tenant-contextualizer.js +436 -0
  135. package/lib/cli-common/tenant-contextualizer.js.map +1 -0
  136. package/lib/cli-common/test/tenant-contextualizer.spec.d.ts +0 -0
  137. package/lib/cli-common/test/tenant-contextualizer.spec.js +143 -0
  138. package/lib/cli-common/test/tenant-contextualizer.spec.js.map +1 -0
  139. package/lib/cli-entities/output-format-enum.d.ts +7 -0
  140. package/lib/cli-entities/output-format-enum.js +12 -0
  141. package/lib/cli-entities/output-format-enum.js.map +1 -0
  142. package/lib/cli-entities/prompt-choice.d.ts +0 -0
  143. package/lib/cli-entities/prompt-choice.js +6 -0
  144. package/lib/cli-entities/prompt-choice.js.map +1 -0
  145. package/lib/codiac-constants.d.ts +35 -0
  146. package/lib/codiac-constants.js +41 -0
  147. package/lib/codiac-constants.js.map +1 -0
  148. package/lib/codiac-entities/asset-binding.d.ts +12 -0
  149. package/lib/codiac-entities/asset-binding.js +18 -0
  150. package/lib/codiac-entities/asset-binding.js.map +1 -0
  151. package/lib/codiac-entities/azure-container-registry.d.ts +4 -0
  152. package/lib/codiac-entities/azure-container-registry.js +3 -0
  153. package/lib/codiac-entities/azure-container-registry.js.map +1 -0
  154. package/lib/codiac-entities/azure-service-principal.d.ts +23 -0
  155. package/lib/codiac-entities/azure-service-principal.js +24 -0
  156. package/lib/codiac-entities/azure-service-principal.js.map +1 -0
  157. package/lib/codiac-entities/cloud-account-ref.d.ts +28 -0
  158. package/lib/codiac-entities/cloud-account-ref.js +37 -0
  159. package/lib/codiac-entities/cloud-account-ref.js.map +1 -0
  160. package/lib/codiac-entities/deployment-temp.d.ts +0 -0
  161. package/lib/codiac-entities/deployment-temp.js +133 -0
  162. package/lib/codiac-entities/deployment-temp.js.map +1 -0
  163. package/lib/codiac-entities/i-cloud-account-ref.d.ts +5 -0
  164. package/lib/codiac-entities/i-cloud-account-ref.js +3 -0
  165. package/lib/codiac-entities/i-cloud-account-ref.js.map +1 -0
  166. package/lib/command-base-enterprise.d.ts +121 -0
  167. package/lib/command-base-enterprise.js +524 -0
  168. package/lib/command-base-enterprise.js.map +1 -0
  169. package/lib/command-base-tenantless.d.ts +44 -0
  170. package/lib/command-base-tenantless.js +173 -0
  171. package/lib/command-base-tenantless.js.map +1 -0
  172. package/lib/commands/asset/create.d.ts +42 -0
  173. package/lib/commands/asset/create.js +467 -0
  174. package/lib/commands/asset/create.js.map +1 -0
  175. package/lib/commands/asset/destroy.d.ts +20 -0
  176. package/lib/commands/asset/destroy.js +129 -0
  177. package/lib/commands/asset/destroy.js.map +1 -0
  178. package/lib/commands/asset/helm.d.ts +24 -0
  179. package/lib/commands/asset/helm.js +151 -0
  180. package/lib/commands/asset/helm.js.map +1 -0
  181. package/lib/commands/asset/list.d.ts +29 -0
  182. package/lib/commands/asset/list.js +171 -0
  183. package/lib/commands/asset/list.js.map +1 -0
  184. package/lib/commands/asset/probe/create.d.ts +41 -0
  185. package/lib/commands/asset/probe/create.js +182 -0
  186. package/lib/commands/asset/probe/create.js.map +1 -0
  187. package/lib/commands/asset/recycle.d.ts +23 -0
  188. package/lib/commands/asset/recycle.js +175 -0
  189. package/lib/commands/asset/recycle.js.map +1 -0
  190. package/lib/commands/asset/view.d.ts +189 -0
  191. package/lib/commands/asset/view.js +1361 -0
  192. package/lib/commands/asset/view.js.map +1 -0
  193. package/lib/commands/asset/volume/create.d.ts +25 -0
  194. package/lib/commands/asset/volume/create.js +174 -0
  195. package/lib/commands/asset/volume/create.js.map +1 -0
  196. package/lib/commands/asset/volume/delete.d.ts +19 -0
  197. package/lib/commands/asset/volume/delete.js +112 -0
  198. package/lib/commands/asset/volume/delete.js.map +1 -0
  199. package/lib/commands/asset/volume/list.d.ts +20 -0
  200. package/lib/commands/asset/volume/list.js +69 -0
  201. package/lib/commands/asset/volume/list.js.map +1 -0
  202. package/lib/commands/branch/current.d.ts +10 -0
  203. package/lib/commands/branch/current.js +34 -0
  204. package/lib/commands/branch/current.js.map +1 -0
  205. package/lib/commands/branch/list.d.ts +15 -0
  206. package/lib/commands/branch/list.js +56 -0
  207. package/lib/commands/branch/list.js.map +1 -0
  208. package/lib/commands/branch.d.ts +13 -0
  209. package/lib/commands/branch.js +40 -0
  210. package/lib/commands/branch.js.map +1 -0
  211. package/lib/commands/build.d.ts +37 -0
  212. package/lib/commands/build.js +116 -0
  213. package/lib/commands/build.js.map +1 -0
  214. package/lib/commands/cabinet/create.d.ts +23 -0
  215. package/lib/commands/cabinet/create.js +106 -0
  216. package/lib/commands/cabinet/create.js.map +1 -0
  217. package/lib/commands/cabinet/list.d.ts +24 -0
  218. package/lib/commands/cabinet/list.js +132 -0
  219. package/lib/commands/cabinet/list.js.map +1 -0
  220. package/lib/commands/cabinet/obliterate.d.ts +22 -0
  221. package/lib/commands/cabinet/obliterate.js +81 -0
  222. package/lib/commands/cabinet/obliterate.js.map +1 -0
  223. package/lib/commands/cli.d.ts +10 -0
  224. package/lib/commands/cli.js +100 -0
  225. package/lib/commands/cli.js.map +1 -0
  226. package/lib/commands/commit.d.ts +13 -0
  227. package/lib/commands/commit.js +38 -0
  228. package/lib/commands/commit.js.map +1 -0
  229. package/lib/commands/config/add.d.ts +79 -0
  230. package/lib/commands/config/add.js +558 -0
  231. package/lib/commands/config/add.js.map +1 -0
  232. package/lib/commands/config/delete.d.ts +19 -0
  233. package/lib/commands/config/delete.js +114 -0
  234. package/lib/commands/config/delete.js.map +1 -0
  235. package/lib/commands/config/deploy.d.ts +22 -0
  236. package/lib/commands/config/deploy.js +125 -0
  237. package/lib/commands/config/deploy.js.map +1 -0
  238. package/lib/commands/config/import.d.ts +28 -0
  239. package/lib/commands/config/import.js +194 -0
  240. package/lib/commands/config/import.js.map +1 -0
  241. package/lib/commands/config/view.d.ts +28 -0
  242. package/lib/commands/config/view.js +118 -0
  243. package/lib/commands/config/view.js.map +1 -0
  244. package/lib/commands/csp/login.d.ts +22 -0
  245. package/lib/commands/csp/login.js +107 -0
  246. package/lib/commands/csp/login.js.map +1 -0
  247. package/lib/commands/csp/logout.d.ts +19 -0
  248. package/lib/commands/csp/logout.js +72 -0
  249. package/lib/commands/csp/logout.js.map +1 -0
  250. package/lib/commands/dep/create.d.ts +14 -0
  251. package/lib/commands/dep/create.js +36 -0
  252. package/lib/commands/dep/create.js.map +1 -0
  253. package/lib/commands/dep/install.d.ts +9 -0
  254. package/lib/commands/dep/install.js +30 -0
  255. package/lib/commands/dep/install.js.map +1 -0
  256. package/lib/commands/dep/list.d.ts +55 -0
  257. package/lib/commands/dep/list.js +98 -0
  258. package/lib/commands/dep/list.js.map +1 -0
  259. package/lib/commands/dep/remove.d.ts +13 -0
  260. package/lib/commands/dep/remove.js +60 -0
  261. package/lib/commands/dep/remove.js.map +1 -0
  262. package/lib/commands/dep/source.d.ts +14 -0
  263. package/lib/commands/dep/source.js +81 -0
  264. package/lib/commands/dep/source.js.map +1 -0
  265. package/lib/commands/dep/syncup.d.ts +12 -0
  266. package/lib/commands/dep/syncup.js +52 -0
  267. package/lib/commands/dep/syncup.js.map +1 -0
  268. package/lib/commands/dep/unsource.d.ts +15 -0
  269. package/lib/commands/dep/unsource.js +61 -0
  270. package/lib/commands/dep/unsource.js.map +1 -0
  271. package/lib/commands/dep/upgrade.d.ts +45 -0
  272. package/lib/commands/dep/upgrade.js +242 -0
  273. package/lib/commands/dep/upgrade.js.map +1 -0
  274. package/lib/commands/dep.d.ts +13 -0
  275. package/lib/commands/dep.js +49 -0
  276. package/lib/commands/dep.js.map +1 -0
  277. package/lib/commands/deploy.d.ts +31 -0
  278. package/lib/commands/deploy.js +358 -0
  279. package/lib/commands/deploy.js.map +1 -0
  280. package/lib/commands/enterprise/create.d.ts +22 -0
  281. package/lib/commands/enterprise/create.js +96 -0
  282. package/lib/commands/enterprise/create.js.map +1 -0
  283. package/lib/commands/enterprise/list.d.ts +15 -0
  284. package/lib/commands/enterprise/list.js +83 -0
  285. package/lib/commands/enterprise/list.js.map +1 -0
  286. package/lib/commands/env/add.d.ts +23 -0
  287. package/lib/commands/env/add.js +197 -0
  288. package/lib/commands/env/add.js.map +1 -0
  289. package/lib/commands/environment/create.d.ts +21 -0
  290. package/lib/commands/environment/create.js +87 -0
  291. package/lib/commands/environment/create.js.map +1 -0
  292. package/lib/commands/environment/list.d.ts +26 -0
  293. package/lib/commands/environment/list.js +156 -0
  294. package/lib/commands/environment/list.js.map +1 -0
  295. package/lib/commands/filestore/capture.d.ts +31 -0
  296. package/lib/commands/filestore/capture.js +342 -0
  297. package/lib/commands/filestore/capture.js.map +1 -0
  298. package/lib/commands/host/map.d.ts +35 -0
  299. package/lib/commands/host/map.js +345 -0
  300. package/lib/commands/host/map.js.map +1 -0
  301. package/lib/commands/identity/delete.d.ts +16 -0
  302. package/lib/commands/identity/delete.js +79 -0
  303. package/lib/commands/identity/delete.js.map +1 -0
  304. package/lib/commands/identity/list.d.ts +11 -0
  305. package/lib/commands/identity/list.js +43 -0
  306. package/lib/commands/identity/list.js.map +1 -0
  307. package/lib/commands/identity.d.ts +24 -0
  308. package/lib/commands/identity.js +75 -0
  309. package/lib/commands/identity.js.map +1 -0
  310. package/lib/commands/imageRegistry/capture.d.ts +28 -0
  311. package/lib/commands/imageRegistry/capture.js +160 -0
  312. package/lib/commands/imageRegistry/capture.js.map +1 -0
  313. package/lib/commands/imageRegistry/forget.d.ts +23 -0
  314. package/lib/commands/imageRegistry/forget.js +161 -0
  315. package/lib/commands/imageRegistry/forget.js.map +1 -0
  316. package/lib/commands/imageRegistry/pullSecret/set.d.ts +28 -0
  317. package/lib/commands/imageRegistry/pullSecret/set.js +300 -0
  318. package/lib/commands/imageRegistry/pullSecret/set.js.map +1 -0
  319. package/lib/commands/imageRegistry/pullSecret/unset.d.ts +24 -0
  320. package/lib/commands/imageRegistry/pullSecret/unset.js +243 -0
  321. package/lib/commands/imageRegistry/pullSecret/unset.js.map +1 -0
  322. package/lib/commands/images/add.d.ts +27 -0
  323. package/lib/commands/images/add.js +71 -0
  324. package/lib/commands/images/add.js.map +1 -0
  325. package/lib/commands/images/list.d.ts +16 -0
  326. package/lib/commands/images/list.js +72 -0
  327. package/lib/commands/images/list.js.map +1 -0
  328. package/lib/commands/images/patch.d.ts +16 -0
  329. package/lib/commands/images/patch.js +91 -0
  330. package/lib/commands/images/patch.js.map +1 -0
  331. package/lib/commands/images/remove.d.ts +14 -0
  332. package/lib/commands/images/remove.js +36 -0
  333. package/lib/commands/images/remove.js.map +1 -0
  334. package/lib/commands/images/version.d.ts +16 -0
  335. package/lib/commands/images/version.js +63 -0
  336. package/lib/commands/images/version.js.map +1 -0
  337. package/lib/commands/init.d.ts +19 -0
  338. package/lib/commands/init.js +131 -0
  339. package/lib/commands/init.js.map +1 -0
  340. package/lib/commands/kit/create.d.ts +26 -0
  341. package/lib/commands/kit/create.js +140 -0
  342. package/lib/commands/kit/create.js.map +1 -0
  343. package/lib/commands/login.d.ts +22 -0
  344. package/lib/commands/login.js +93 -0
  345. package/lib/commands/login.js.map +1 -0
  346. package/lib/commands/logout.d.ts +8 -0
  347. package/lib/commands/logout.js +37 -0
  348. package/lib/commands/logout.js.map +1 -0
  349. package/lib/commands/merge.d.ts +14 -0
  350. package/lib/commands/merge.js +41 -0
  351. package/lib/commands/merge.js.map +1 -0
  352. package/lib/commands/noc/cluster/create.d.ts +29 -0
  353. package/lib/commands/noc/cluster/create.js +131 -0
  354. package/lib/commands/noc/cluster/create.js.map +1 -0
  355. package/lib/commands/noc/cluster/deinit.d.ts +18 -0
  356. package/lib/commands/noc/cluster/deinit.js +114 -0
  357. package/lib/commands/noc/cluster/deinit.js.map +1 -0
  358. package/lib/commands/noc/cluster/destroy.d.ts +21 -0
  359. package/lib/commands/noc/cluster/destroy.js +135 -0
  360. package/lib/commands/noc/cluster/destroy.js.map +1 -0
  361. package/lib/commands/noc/cluster/init.d.ts +18 -0
  362. package/lib/commands/noc/cluster/init.js +114 -0
  363. package/lib/commands/noc/cluster/init.js.map +1 -0
  364. package/lib/commands/noc/cluster/list.d.ts +22 -0
  365. package/lib/commands/noc/cluster/list.js +83 -0
  366. package/lib/commands/noc/cluster/list.js.map +1 -0
  367. package/lib/commands/noc/cluster/recreate.d.ts +31 -0
  368. package/lib/commands/noc/cluster/recreate.js +183 -0
  369. package/lib/commands/noc/cluster/recreate.js.map +1 -0
  370. package/lib/commands/pkg/add.d.ts +17 -0
  371. package/lib/commands/pkg/add.js +41 -0
  372. package/lib/commands/pkg/add.js.map +1 -0
  373. package/lib/commands/pkg/list.d.ts +11 -0
  374. package/lib/commands/pkg/list.js +33 -0
  375. package/lib/commands/pkg/list.js.map +1 -0
  376. package/lib/commands/pkg/patch.d.ts +15 -0
  377. package/lib/commands/pkg/patch.js +77 -0
  378. package/lib/commands/pkg/patch.js.map +1 -0
  379. package/lib/commands/pkg/remove.d.ts +14 -0
  380. package/lib/commands/pkg/remove.js +68 -0
  381. package/lib/commands/pkg/remove.js.map +1 -0
  382. package/lib/commands/portal.d.ts +11 -0
  383. package/lib/commands/portal.js +82 -0
  384. package/lib/commands/portal.js.map +1 -0
  385. package/lib/commands/publish.d.ts +23 -0
  386. package/lib/commands/publish.js +52 -0
  387. package/lib/commands/publish.js.map +1 -0
  388. package/lib/commands/pull.d.ts +15 -0
  389. package/lib/commands/pull.js +30 -0
  390. package/lib/commands/pull.js.map +1 -0
  391. package/lib/commands/push.d.ts +15 -0
  392. package/lib/commands/push.js +30 -0
  393. package/lib/commands/push.js.map +1 -0
  394. package/lib/commands/run.d.ts +35 -0
  395. package/lib/commands/run.js +194 -0
  396. package/lib/commands/run.js.map +1 -0
  397. package/lib/commands/secretStore/capture.d.ts +28 -0
  398. package/lib/commands/secretStore/capture.js +174 -0
  399. package/lib/commands/secretStore/capture.js.map +1 -0
  400. package/lib/commands/secretStore/forget.d.ts +20 -0
  401. package/lib/commands/secretStore/forget.js +147 -0
  402. package/lib/commands/secretStore/forget.js.map +1 -0
  403. package/lib/commands/stage.d.ts +15 -0
  404. package/lib/commands/stage.js +63 -0
  405. package/lib/commands/stage.js.map +1 -0
  406. package/lib/commands/stash.d.ts +13 -0
  407. package/lib/commands/stash.js +29 -0
  408. package/lib/commands/stash.js.map +1 -0
  409. package/lib/commands/status.d.ts +12 -0
  410. package/lib/commands/status.js +49 -0
  411. package/lib/commands/status.js.map +1 -0
  412. package/lib/commands/stop.d.ts +10 -0
  413. package/lib/commands/stop.js +52 -0
  414. package/lib/commands/stop.js.map +1 -0
  415. package/lib/commands/switch.d.ts +12 -0
  416. package/lib/commands/switch.js +37 -0
  417. package/lib/commands/switch.js.map +1 -0
  418. package/lib/commands/sync.d.ts +16 -0
  419. package/lib/commands/sync.js +21 -0
  420. package/lib/commands/sync.js.map +1 -0
  421. package/lib/commands/tenant/create.d.ts +29 -0
  422. package/lib/commands/tenant/create.js +118 -0
  423. package/lib/commands/tenant/create.js.map +1 -0
  424. package/lib/commands/tenant/switch.d.ts +26 -0
  425. package/lib/commands/tenant/switch.js +107 -0
  426. package/lib/commands/tenant/switch.js.map +1 -0
  427. package/lib/commands/unstage.d.ts +14 -0
  428. package/lib/commands/unstage.js +56 -0
  429. package/lib/commands/unstage.js.map +1 -0
  430. package/lib/commands/view/dashboard.d.ts +17 -0
  431. package/lib/commands/view/dashboard.js +88 -0
  432. package/lib/commands/view/dashboard.js.map +1 -0
  433. package/lib/commands/view/pods.d.ts +14 -0
  434. package/lib/commands/view/pods.js +88 -0
  435. package/lib/commands/view/pods.js.map +1 -0
  436. package/lib/commands/whereami.d.ts +17 -0
  437. package/lib/commands/whereami.js +123 -0
  438. package/lib/commands/whereami.js.map +1 -0
  439. package/lib/commands/whoami.d.ts +11 -0
  440. package/lib/commands/whoami.js +41 -0
  441. package/lib/commands/whoami.js.map +1 -0
  442. package/lib/deployment.d.ts +2 -0
  443. package/lib/deployment.js +7 -0
  444. package/lib/deployment.js.map +1 -0
  445. package/lib/errors/NoMembershipError.d.ts +8 -0
  446. package/lib/errors/NoMembershipError.js +15 -0
  447. package/lib/errors/NoMembershipError.js.map +1 -0
  448. package/lib/index.d.ts +1 -0
  449. package/lib/index.js +17 -0
  450. package/lib/index.js.map +1 -0
  451. package/lib/k8s-command-base.d.ts +60 -0
  452. package/lib/k8s-command-base.js +204 -0
  453. package/lib/k8s-command-base.js.map +1 -0
  454. package/lib/log-update-wrapper.d.ts +24 -0
  455. package/lib/log-update-wrapper.js +29 -0
  456. package/lib/log-update-wrapper.js.map +1 -0
  457. package/lib/log4js-logger.d.ts +26 -0
  458. package/lib/log4js-logger.js +138 -0
  459. package/lib/log4js-logger.js.map +1 -0
  460. package/lib/ops/INTERFACES_CLI.d.ts +3 -0
  461. package/lib/ops/INTERFACES_CLI.js +8 -0
  462. package/lib/ops/INTERFACES_CLI.js.map +1 -0
  463. package/lib/ops/LocalOps.d.ts +444 -0
  464. package/lib/ops/LocalOps.js +3184 -0
  465. package/lib/ops/LocalOps.js.map +1 -0
  466. package/lib/ops/azure-container-registry-client/azure-container-registry-client.d.ts +0 -0
  467. package/lib/ops/azure-container-registry-client/azure-container-registry-client.js +148 -0
  468. package/lib/ops/azure-container-registry-client/azure-container-registry-client.js.map +1 -0
  469. package/lib/ops/cli-path-walker.d.ts +0 -0
  470. package/lib/ops/cli-path-walker.js +55 -0
  471. package/lib/ops/cli-path-walker.js.map +1 -0
  472. package/lib/ops/codiac-entities/dependency.d.ts +5 -0
  473. package/lib/ops/codiac-entities/dependency.js +11 -0
  474. package/lib/ops/codiac-entities/dependency.js.map +1 -0
  475. package/lib/ops/codiac-entities/index.d.ts +1 -0
  476. package/lib/ops/codiac-entities/index.js +5 -0
  477. package/lib/ops/codiac-entities/index.js.map +1 -0
  478. package/lib/ops/composite-image-registry-client.d.ts +0 -0
  479. package/lib/ops/composite-image-registry-client.js +74 -0
  480. package/lib/ops/composite-image-registry-client.js.map +1 -0
  481. package/lib/ops/data/cli-context-repo.d.ts +61 -0
  482. package/lib/ops/data/cli-context-repo.js +270 -0
  483. package/lib/ops/data/cli-context-repo.js.map +1 -0
  484. package/lib/ops/data/index.d.ts +2 -0
  485. package/lib/ops/data/index.js +6 -0
  486. package/lib/ops/data/index.js.map +1 -0
  487. package/lib/ops/data/npm-config-repo.d.ts +13 -0
  488. package/lib/ops/data/npm-config-repo.js +65 -0
  489. package/lib/ops/data/npm-config-repo.js.map +1 -0
  490. package/lib/ops/docker-config.d.ts +0 -0
  491. package/lib/ops/docker-config.js +131 -0
  492. package/lib/ops/docker-config.js.map +1 -0
  493. package/lib/ops/docker-constants.d.ts +0 -0
  494. package/lib/ops/docker-constants.js +22 -0
  495. package/lib/ops/docker-constants.js.map +1 -0
  496. package/lib/ops/docker-credentials-store.d.ts +0 -0
  497. package/lib/ops/docker-credentials-store.js +238 -0
  498. package/lib/ops/docker-credentials-store.js.map +1 -0
  499. package/lib/ops/docker-registry-api-client/docker-registry-api-client.d.ts +0 -0
  500. package/lib/ops/docker-registry-api-client/docker-registry-api-client.js +289 -0
  501. package/lib/ops/docker-registry-api-client/docker-registry-api-client.js.map +1 -0
  502. package/lib/ops/docker-registry-api-client/entities/blob-sum.d.ts +7 -0
  503. package/lib/ops/docker-registry-api-client/entities/blob-sum.js +13 -0
  504. package/lib/ops/docker-registry-api-client/entities/blob-sum.js.map +1 -0
  505. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.d.ts +5 -0
  506. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js +10 -0
  507. package/lib/ops/docker-registry-api-client/entities/docker-access-actions-enum.js.map +1 -0
  508. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.d.ts +30 -0
  509. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js +36 -0
  510. package/lib/ops/docker-registry-api-client/entities/docker-auth-token-criteria.js.map +1 -0
  511. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.d.ts +55 -0
  512. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js +52 -0
  513. package/lib/ops/docker-registry-api-client/entities/i-docker-error-response.js.map +1 -0
  514. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.d.ts +7 -0
  515. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js +3 -0
  516. package/lib/ops/docker-registry-api-client/entities/i-docker-list-response.js.map +1 -0
  517. package/lib/ops/docker-registry-api-client/entities/image-repository.d.ts +31 -0
  518. package/lib/ops/docker-registry-api-client/entities/image-repository.js +30 -0
  519. package/lib/ops/docker-registry-api-client/entities/image-repository.js.map +1 -0
  520. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.d.ts +8 -0
  521. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js +14 -0
  522. package/lib/ops/docker-registry-api-client/entities/image-tag-criteria.js.map +1 -0
  523. package/lib/ops/docker-registry-api-client/entities/image-tag-list.d.ts +7 -0
  524. package/lib/ops/docker-registry-api-client/entities/image-tag-list.js +13 -0
  525. package/lib/ops/docker-registry-api-client/entities/image-tag-list.js.map +1 -0
  526. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.d.ts +9 -0
  527. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js +15 -0
  528. package/lib/ops/docker-registry-api-client/entities/manifest-criteria.js.map +1 -0
  529. package/lib/ops/docker-registry-api-client/entities/manifest.d.ts +15 -0
  530. package/lib/ops/docker-registry-api-client/entities/manifest.js +21 -0
  531. package/lib/ops/docker-registry-api-client/entities/manifest.js.map +1 -0
  532. package/lib/ops/docker-registry-api-client/entities/repository-criteria.d.ts +16 -0
  533. package/lib/ops/docker-registry-api-client/entities/repository-criteria.js +24 -0
  534. package/lib/ops/docker-registry-api-client/entities/repository-criteria.js.map +1 -0
  535. package/lib/ops/docker-registry-api-client/entities/token-response.d.ts +15 -0
  536. package/lib/ops/docker-registry-api-client/entities/token-response.js +15 -0
  537. package/lib/ops/docker-registry-api-client/entities/token-response.js.map +1 -0
  538. package/lib/ops/docker-registry-api-client/entities/token.d.ts +17 -0
  539. package/lib/ops/docker-registry-api-client/entities/token.js +22 -0
  540. package/lib/ops/docker-registry-api-client/entities/token.js.map +1 -0
  541. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.d.ts +4 -0
  542. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js +10 -0
  543. package/lib/ops/docker-registry-api-client/entities/version-check-criteria.js.map +1 -0
  544. package/lib/ops/dx-constants.d.ts +26 -0
  545. package/lib/ops/dx-constants.js +43 -0
  546. package/lib/ops/dx-constants.js.map +1 -0
  547. package/lib/ops/entities/ImageBuildContext.d.ts +12 -0
  548. package/lib/ops/entities/ImageBuildContext.js +19 -0
  549. package/lib/ops/entities/ImageBuildContext.js.map +1 -0
  550. package/lib/ops/entities/PipelineContext.d.ts +21 -0
  551. package/lib/ops/entities/PipelineContext.js +23 -0
  552. package/lib/ops/entities/PipelineContext.js.map +1 -0
  553. package/lib/ops/entities/TenantContext.d.ts +10 -0
  554. package/lib/ops/entities/TenantContext.js +16 -0
  555. package/lib/ops/entities/TenantContext.js.map +1 -0
  556. package/lib/ops/entities/ThaulConfig.d.ts +0 -0
  557. package/lib/ops/entities/ThaulConfig.js +30 -0
  558. package/lib/ops/entities/ThaulConfig.js.map +1 -0
  559. package/lib/ops/entities/azure-service-principal.d.ts +23 -0
  560. package/lib/ops/entities/azure-service-principal.js +24 -0
  561. package/lib/ops/entities/azure-service-principal.js.map +1 -0
  562. package/lib/ops/entities/better-logger.d.ts +0 -0
  563. package/lib/ops/entities/better-logger.js +2 -0
  564. package/lib/ops/entities/better-logger.js.map +1 -0
  565. package/lib/ops/entities/branch.d.ts +13 -0
  566. package/lib/ops/entities/branch.js +16 -0
  567. package/lib/ops/entities/branch.js.map +1 -0
  568. package/lib/ops/entities/cli-config.d.ts +48 -0
  569. package/lib/ops/entities/cli-config.js +61 -0
  570. package/lib/ops/entities/cli-config.js.map +1 -0
  571. package/lib/ops/entities/docker-image.d.ts +60 -0
  572. package/lib/ops/entities/docker-image.js +3 -0
  573. package/lib/ops/entities/docker-image.js.map +1 -0
  574. package/lib/ops/entities/helm-spec.d.ts +15 -0
  575. package/lib/ops/entities/helm-spec.js +23 -0
  576. package/lib/ops/entities/helm-spec.js.map +1 -0
  577. package/lib/ops/entities/index.d.ts +4 -0
  578. package/lib/ops/entities/index.js +12 -0
  579. package/lib/ops/entities/index.js.map +1 -0
  580. package/lib/ops/entities/operation-meta.d.ts +8 -0
  581. package/lib/ops/entities/operation-meta.js +19 -0
  582. package/lib/ops/entities/operation-meta.js.map +1 -0
  583. package/lib/ops/entities/scaffolding.d.ts +19 -0
  584. package/lib/ops/entities/scaffolding.js +21 -0
  585. package/lib/ops/entities/scaffolding.js.map +1 -0
  586. package/lib/ops/extensions/azart-identity-adapter.d.ts +19 -0
  587. package/lib/ops/extensions/azart-identity-adapter.js +97 -0
  588. package/lib/ops/extensions/azart-identity-adapter.js.map +1 -0
  589. package/lib/ops/extensions/npm-identity-adapter-base.d.ts +13 -0
  590. package/lib/ops/extensions/npm-identity-adapter-base.js +3 -0
  591. package/lib/ops/extensions/npm-identity-adapter-base.js.map +1 -0
  592. package/lib/ops/extensions/npmjs-identity-adapter.d.ts +13 -0
  593. package/lib/ops/extensions/npmjs-identity-adapter.js +64 -0
  594. package/lib/ops/extensions/npmjs-identity-adapter.js.map +1 -0
  595. package/lib/ops/git-ops.d.ts +8 -0
  596. package/lib/ops/git-ops.js +14 -0
  597. package/lib/ops/git-ops.js.map +1 -0
  598. package/lib/ops/i-client-for-image-registry.d.ts +0 -0
  599. package/lib/ops/i-client-for-image-registry.js +17 -0
  600. package/lib/ops/i-client-for-image-registry.js.map +1 -0
  601. package/lib/ops/i-identity-handler.d.ts +33 -0
  602. package/lib/ops/i-identity-handler.js +165 -0
  603. package/lib/ops/i-identity-handler.js.map +1 -0
  604. package/lib/ops/i-output-styler.d.ts +0 -0
  605. package/lib/ops/i-output-styler.js +17 -0
  606. package/lib/ops/i-output-styler.js.map +1 -0
  607. package/lib/ops/index.d.ts +12 -0
  608. package/lib/ops/index.js +15 -0
  609. package/lib/ops/index.js.map +1 -0
  610. package/lib/ops/json-utils.d.ts +0 -0
  611. package/lib/ops/json-utils.js +59 -0
  612. package/lib/ops/json-utils.js.map +1 -0
  613. package/lib/ops/no-style-output-styler.d.ts +0 -0
  614. package/lib/ops/no-style-output-styler.js +30 -0
  615. package/lib/ops/no-style-output-styler.js.map +1 -0
  616. package/lib/ops/oauth2-client.ts/oauth2-client.d.ts +23 -0
  617. package/lib/ops/oauth2-client.ts/oauth2-client.js +64 -0
  618. package/lib/ops/oauth2-client.ts/oauth2-client.js.map +1 -0
  619. package/lib/ops/project-initializer.d.ts +36 -0
  620. package/lib/ops/project-initializer.js +219 -0
  621. package/lib/ops/project-initializer.js.map +1 -0
  622. package/lib/ops/scaffolding/base-scaffolding.d.ts +7 -0
  623. package/lib/ops/scaffolding/base-scaffolding.js +21 -0
  624. package/lib/ops/scaffolding/base-scaffolding.js.map +1 -0
  625. package/lib/ops/scaffolding/codiac-api-scaffolding.d.ts +7 -0
  626. package/lib/ops/scaffolding/codiac-api-scaffolding.js +64 -0
  627. package/lib/ops/scaffolding/codiac-api-scaffolding.js.map +1 -0
  628. package/lib/ops/scaffolding/typescript-scaffolding.d.ts +15 -0
  629. package/lib/ops/scaffolding/typescript-scaffolding.js +163 -0
  630. package/lib/ops/scaffolding/typescript-scaffolding.js.map +1 -0
  631. package/lib/ops/test/mock-ui.d.ts +26 -0
  632. package/lib/ops/test/mock-ui.js +88 -0
  633. package/lib/ops/test/mock-ui.js.map +1 -0
  634. package/lib/ops/test/test-extensions.d.ts +13 -0
  635. package/lib/ops/test/test-extensions.js +71 -0
  636. package/lib/ops/test/test-extensions.js.map +1 -0
  637. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.d.ts +2 -0
  638. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js +55 -0
  639. package/lib/ops/test/when-a-recursive-file-search-is-run.spec.js.map +1 -0
  640. package/lib/ops/test/when-git-branchline-is-attempted.spec.d.ts +2 -0
  641. package/lib/ops/test/when-git-branchline-is-attempted.spec.js +38 -0
  642. package/lib/ops/test/when-git-branchline-is-attempted.spec.js.map +1 -0
  643. package/lib/ops/test/when-versions-are-parsed.spec.d.ts +2 -0
  644. package/lib/ops/test/when-versions-are-parsed.spec.js +60 -0
  645. package/lib/ops/test/when-versions-are-parsed.spec.js.map +1 -0
  646. package/lib/ops/throwing-user-input-provider.d.ts +0 -0
  647. package/lib/ops/throwing-user-input-provider.js +37 -0
  648. package/lib/ops/throwing-user-input-provider.js.map +1 -0
  649. package/lib/prettify.d.ts +7 -0
  650. package/lib/prettify.js +24 -0
  651. package/lib/prettify.js.map +1 -0
  652. package/lib/read-stdin.d.ts +2 -0
  653. package/lib/read-stdin.js +29 -0
  654. package/lib/read-stdin.js.map +1 -0
  655. package/lib/relay/contracts/contracts.d.ts +196 -0
  656. package/lib/relay/contracts/contracts.js +213 -0
  657. package/lib/relay/contracts/contracts.js.map +1 -0
  658. package/lib/relay/data/aws-k8s-versions.d.ts +6 -0
  659. package/lib/relay/data/aws-k8s-versions.js +16 -0
  660. package/lib/relay/data/aws-k8s-versions.js.map +1 -0
  661. package/lib/relay/data/aws-node-types.d.ts +37 -0
  662. package/lib/relay/data/aws-node-types.js +4246 -0
  663. package/lib/relay/data/aws-node-types.js.map +1 -0
  664. package/lib/relay/data/aws-regions.d.ts +6 -0
  665. package/lib/relay/data/aws-regions.js +34 -0
  666. package/lib/relay/data/aws-regions.js.map +1 -0
  667. package/lib/relay/extended-relay-client.d.ts +27 -0
  668. package/lib/relay/extended-relay-client.js +28 -0
  669. package/lib/relay/extended-relay-client.js.map +1 -0
  670. package/lib/relay/relay-container.d.ts +41 -0
  671. package/lib/relay/relay-container.js +298 -0
  672. package/lib/relay/relay-container.js.map +1 -0
  673. package/lib/relay/wsclient/relay-socket-listener.d.ts +68 -0
  674. package/lib/relay/wsclient/relay-socket-listener.js +165 -0
  675. package/lib/relay/wsclient/relay-socket-listener.js.map +1 -0
  676. package/lib/relay/wsclient/relay-websocket-client.d.ts +33 -0
  677. package/lib/relay/wsclient/relay-websocket-client.js +179 -0
  678. package/lib/relay/wsclient/relay-websocket-client.js.map +1 -0
  679. package/lib/relay/wsclient/rx-websocket-subject.d.ts +25 -0
  680. package/lib/relay/wsclient/rx-websocket-subject.js +134 -0
  681. package/lib/relay/wsclient/rx-websocket-subject.js.map +1 -0
  682. package/lib/relay/wsclient/socket-contracts.d.ts +22 -0
  683. package/lib/relay/wsclient/socket-contracts.js +3 -0
  684. package/lib/relay/wsclient/socket-contracts.js.map +1 -0
  685. package/lib/standard-probes.d.ts +5 -0
  686. package/lib/standard-probes.js +22 -0
  687. package/lib/standard-probes.js.map +1 -0
  688. package/lib/uilogic/build-configurator.d.ts +21 -0
  689. package/lib/uilogic/build-configurator.js +111 -0
  690. package/lib/uilogic/build-configurator.js.map +1 -0
  691. package/lib/uilogic/cloud-provider-contextualizer.d.ts +46 -0
  692. package/lib/uilogic/cloud-provider-contextualizer.js +194 -0
  693. package/lib/uilogic/cloud-provider-contextualizer.js.map +1 -0
  694. package/lib/uilogic/cloud-resource-configurator-factory.d.ts +41 -0
  695. package/lib/uilogic/cloud-resource-configurator-factory.js +159 -0
  696. package/lib/uilogic/cloud-resource-configurator-factory.js.map +1 -0
  697. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.d.ts +11 -0
  698. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js +16 -0
  699. package/lib/uilogic/cloud-resource-configurators/aws-k8s-versions.js.map +1 -0
  700. package/lib/uilogic/cloud-resource-configurators/aws-node-types.d.ts +5 -0
  701. package/lib/uilogic/cloud-resource-configurators/aws-node-types.js +536 -0
  702. package/lib/uilogic/cloud-resource-configurators/aws-node-types.js.map +1 -0
  703. package/lib/uilogic/cloud-resource-configurators/aws-regions.d.ts +10 -0
  704. package/lib/uilogic/cloud-resource-configurators/aws-regions.js +34 -0
  705. package/lib/uilogic/cloud-resource-configurators/aws-regions.js.map +1 -0
  706. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.d.ts +33 -0
  707. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js +297 -0
  708. package/lib/uilogic/cloud-resource-configurators/aws-resource-configurator.js.map +1 -0
  709. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.d.ts +0 -0
  710. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js +78 -0
  711. package/lib/uilogic/cloud-resource-configurators/az-acr-cli-authenticator.js.map +1 -0
  712. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.d.ts +42 -0
  713. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js +248 -0
  714. package/lib/uilogic/cloud-resource-configurators/az-interactive-login-configurator.js.map +1 -0
  715. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.d.ts +110 -0
  716. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js +782 -0
  717. package/lib/uilogic/cloud-resource-configurators/azure-resource-configurator.js.map +1 -0
  718. package/lib/uilogic/cloud-resource-configurators/azure-types.d.ts +0 -0
  719. package/lib/uilogic/cloud-resource-configurators/azure-types.js +10 -0
  720. package/lib/uilogic/cloud-resource-configurators/azure-types.js.map +1 -0
  721. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.d.ts +24 -0
  722. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js +106 -0
  723. package/lib/uilogic/cloud-resource-configurators/docker-hub-resource-configurator.js.map +1 -0
  724. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.d.ts +16 -0
  725. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js +45 -0
  726. package/lib/uilogic/cloud-resource-configurators/helm-resource-configurator.js.map +1 -0
  727. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.d.ts +18 -0
  728. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js +62 -0
  729. package/lib/uilogic/cloud-resource-configurators/unsupported-resource-configurator.js.map +1 -0
  730. package/lib/uilogic/enterprise-contextualizer.d.ts +76 -0
  731. package/lib/uilogic/enterprise-contextualizer.js +671 -0
  732. package/lib/uilogic/enterprise-contextualizer.js.map +1 -0
  733. package/lib/uilogic/environment-contextualizer.d.ts +15 -0
  734. package/lib/uilogic/environment-contextualizer.js +43 -0
  735. package/lib/uilogic/environment-contextualizer.js.map +1 -0
  736. package/lib/uilogic/i-cluster-configurator.d.ts +9 -0
  737. package/lib/uilogic/i-cluster-configurator.js +3 -0
  738. package/lib/uilogic/i-cluster-configurator.js.map +1 -0
  739. package/lib/uilogic/i-login-configurator.d.ts +6 -0
  740. package/lib/uilogic/i-login-configurator.js +3 -0
  741. package/lib/uilogic/i-login-configurator.js.map +1 -0
  742. package/lib/uilogic/i-registry-configurator.d.ts +6 -0
  743. package/lib/uilogic/i-registry-configurator.js +3 -0
  744. package/lib/uilogic/i-registry-configurator.js.map +1 -0
  745. package/lib/uilogic/i-secret-store-configurator.d.ts +7 -0
  746. package/lib/uilogic/i-secret-store-configurator.js +3 -0
  747. package/lib/uilogic/i-secret-store-configurator.js.map +1 -0
  748. package/lib/uilogic/image-configurator.d.ts +133 -0
  749. package/lib/uilogic/image-configurator.js +578 -0
  750. package/lib/uilogic/image-configurator.js.map +1 -0
  751. package/lib/uilogic/image-contextualizer.d.ts +24 -0
  752. package/lib/uilogic/image-contextualizer.js +90 -0
  753. package/lib/uilogic/image-contextualizer.js.map +1 -0
  754. package/lib/uilogic/image-registry-contextualizer.d.ts +28 -0
  755. package/lib/uilogic/image-registry-contextualizer.js +127 -0
  756. package/lib/uilogic/image-registry-contextualizer.js.map +1 -0
  757. package/lib/uilogic/index.d.ts +9 -0
  758. package/lib/uilogic/index.js +14 -0
  759. package/lib/uilogic/index.js.map +1 -0
  760. package/lib/uilogic/prompt-select-fuzzy.d.ts +0 -0
  761. package/lib/uilogic/prompt-select-fuzzy.js +139 -0
  762. package/lib/uilogic/prompt-select-fuzzy.js.map +1 -0
  763. package/lib/uilogic/render-methods.d.ts +12 -0
  764. package/lib/uilogic/render-methods.js +65 -0
  765. package/lib/uilogic/render-methods.js.map +1 -0
  766. package/lib/uilogic/tenant-contextualizer.d.ts +79 -0
  767. package/lib/uilogic/tenant-contextualizer.js +574 -0
  768. package/lib/uilogic/tenant-contextualizer.js.map +1 -0
  769. package/lib/user-context-loader.d.ts +60 -0
  770. package/lib/user-context-loader.js +184 -0
  771. package/lib/user-context-loader.js.map +1 -0
  772. package/oclif.manifest.json +8496 -0
  773. package/package.json +151 -0
  774. package/scaffolding/api/.gitignore-scaffolding +69 -0
  775. package/scaffolding/api/.vscode/launch.json +17 -0
  776. package/scaffolding/api/.vscode/settings.json +8 -0
  777. package/scaffolding/api/.vscode/tasks.json +16 -0
  778. package/scaffolding/api/src/app-config.json +3 -0
  779. package/scaffolding/api/src/index.ts-scaffolding +14 -0
  780. package/scaffolding/api/src/myApiDef.ts-scaffolding +26 -0
  781. package/scaffolding/default/.gitignore-scaffolding +2 -0
  782. package/scaffolding/typescript/.gitignore-scaffolding +69 -0
  783. package/scaffolding/typescript/.vscode/launch.json +17 -0
  784. package/scaffolding/typescript/.vscode/settings.json +8 -0
  785. package/scaffolding/typescript/.vscode/tasks.json +16 -0
  786. package/scaffolding/typescript/src/index.ts-scaffolding +1 -0
@@ -0,0 +1,300 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const core_1 = require("@oclif/core");
5
+ const autocomplete = require("inquirer-autocomplete-prompt");
6
+ // import { ImageRegistry, KvpStoreDef, KvpStoreTypesEnum } from '@codiac.io/codiac-domain';
7
+ const contracts_1 = require("../../../apis/codiac-api/contracts");
8
+ const contracts_2 = require("@codiac.io/codiac-common/contracts");
9
+ const command_base_enterprise_1 = require("../../../command-base-enterprise");
10
+ const codiac_constants_1 = require("../../../codiac-constants");
11
+ const prettify_1 = require("../../../prettify");
12
+ const cloud_resource_configurator_factory_1 = require("../../../uilogic/cloud-resource-configurator-factory");
13
+ const cloud_provider_contextualizer_1 = require("../../../uilogic/cloud-provider-contextualizer");
14
+ const image_registry_contextualizer_1 = require("../../../uilogic/image-registry-contextualizer");
15
+ const image_contextualizer_1 = require("../../../uilogic/image-contextualizer");
16
+ const pull_secret_1 = require("@codiac.io/codiac-domain/pull-secret");
17
+ // Has to be module-scoped bc the autocomplete redefines "this", so we can't use it inside searchPorts().
18
+ let ports = [];
19
+ class ImageRegistryPullSecretSet extends command_base_enterprise_1.CommandBaseEnterprise {
20
+ bootstrap() {
21
+ super.bootstrap();
22
+ cloud_provider_contextualizer_1.CloudProviderContextualizer.bootstrap(this.ioc);
23
+ this.ioc.bind(image_registry_contextualizer_1.ImageRegistryContextualizer).toSelf();
24
+ this.ioc.bind(image_contextualizer_1.ImageContextualizer).toSelf();
25
+ }
26
+ // --------------------------------------------------------------------
27
+ // Lazy-loaded properties
28
+ get uiRegistry() {
29
+ if (this._uiRegistry_backer === undefined) {
30
+ this._uiRegistry_backer = this.ioc.get(image_registry_contextualizer_1.ImageRegistryContextualizer);
31
+ }
32
+ return this._uiRegistry_backer;
33
+ }
34
+ // --------------------------------------------------------------------
35
+ run() {
36
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
37
+ this.bootstrap();
38
+ const { args, flags } = yield this.parse(ImageRegistryPullSecretSet);
39
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
40
+ try {
41
+ this._userCntx = yield this.establishTenantContext(this._userCntx);
42
+ let partial = {};
43
+ let isPrimary = flags.item === "primary";
44
+ // TODO: Revisit for pull secrets on kits
45
+ // overlay given values
46
+ if (flags.registry !== undefined)
47
+ partial.name = flags.name;
48
+ if (flags.storeType !== undefined)
49
+ partial.type = flags.storeType;
50
+ if (flags.storeName !== undefined)
51
+ partial.name = flags.storeName;
52
+ if (flags.name !== undefined)
53
+ partial.key = flags.name;
54
+ let registries = yield this._codiacApi.ImageRegistry.readMany({ all: true }, { throwNotFound: false });
55
+ if (registries.length === 0) {
56
+ throw new Error(`Cannot set pull secrets: No image registries are defined yet.`);
57
+ }
58
+ let candidate;
59
+ if (flags.silent == true) {
60
+ candidate = this.buildCandidate_silently(partial, isPrimary, flags.registry, registries);
61
+ }
62
+ else {
63
+ candidate = yield this.buildCandidate_interactively(partial, isPrimary, flags.registry, registries);
64
+ }
65
+ // FINAL EXECUTION (or not)
66
+ if (candidate !== undefined) {
67
+ if (flags.toScript === true) {
68
+ let script = this.buildScript(candidate);
69
+ this._ui.userMessage(script);
70
+ }
71
+ else {
72
+ yield this.applyPullSecret(candidate.secretRef, candidate.isPrimary, registries.find(r => r.code === candidate.regCode));
73
+ }
74
+ }
75
+ else {
76
+ this.logger.notice(`Operation cancelled. No work was done.`);
77
+ this._ui.userMessage(`Operation cancelled. No work was done.`);
78
+ }
79
+ resolve();
80
+ }
81
+ catch (err) {
82
+ this.logger.error(err);
83
+ // reject(err);
84
+ resolve();
85
+ }
86
+ }));
87
+ });
88
+ }
89
+ buildCandidate_silently(partial, isPrimary, regCode, registries) {
90
+ // Rough validation for missing args
91
+ if (!regCode)
92
+ throw new Error("A registry code must be set");
93
+ if (!partial.type)
94
+ throw new Error("store type name must be set");
95
+ if (!partial.name)
96
+ throw new Error("store name must be set");
97
+ if (!partial.key)
98
+ throw new Error("secret name must be set");
99
+ if (!registries.find(r => r.code === regCode)) {
100
+ throw new Error(`No ImageRegistry record currently exists with code: [${regCode}]. You might need to check your spelling or capture your image registry.`);
101
+ }
102
+ if (!partial.expiresOn) {
103
+ // TODO: need to use the vault client to look this up
104
+ partial.expiresOn = new Date(Date.now() + (1000 * 60 * 60 * 24 * 365 * 5)); // Stub to 5 years
105
+ }
106
+ try {
107
+ let secretRef = new pull_secret_1.PullSecretRef(partial.type, partial.name, partial.key, partial.expiresOn);
108
+ // TODO: Validate existence of secretRef in the secretStore
109
+ return { secretRef: secretRef, isPrimary: isPrimary, regCode: regCode };
110
+ }
111
+ catch (err) {
112
+ throw err;
113
+ }
114
+ }
115
+ /** Walks the user through a Q & A to build out the specs for the asset. */
116
+ buildCandidate_interactively(partialPullSecretRef, isPrimary, regCode, registries, allowAddSecrets = false) {
117
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
118
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
119
+ var _a;
120
+ let candidate;
121
+ try {
122
+ cloud_resource_configurator_factory_1.RegistryConfiguratorFactory.bootstrap(this.ioc);
123
+ let expiration;
124
+ let partial = {
125
+ storeType: partialPullSecretRef.type,
126
+ storeName: partialPullSecretRef.name,
127
+ secretName: partialPullSecretRef.key,
128
+ expiresOn: expiration,
129
+ isPrimary: isPrimary,
130
+ regCode: regCode
131
+ };
132
+ let secretStores;
133
+ let regInput = {};
134
+ if (partial.regCode) {
135
+ let found = registries.find(r => r.code === partial.regCode);
136
+ if (found)
137
+ regInput = found;
138
+ }
139
+ let confirmed;
140
+ while (!confirmed) {
141
+ // NOTE: We are gating on "confirmed != undefined" because that means they asked to revise the values.
142
+ console.clear();
143
+ // REGISTRY (we've already gated this method for registries.length > 0)
144
+ let selectedRegistry;
145
+ let keepRegistry = (partial.regCode === undefined) ? false : yield this._ui.promptConfirm("keepRegistry", `${this._styler.hilite(partial.regCode)} pull secret`);
146
+ if (!keepRegistry) {
147
+ selectedRegistry = (yield this.uiRegistry.promptForExistingRegistry(false, registries));
148
+ partial.regCode = selectedRegistry.code;
149
+ }
150
+ // PRIMARY/SECONDARY
151
+ partial.isPrimary = (_a = partial.isPrimary) !== null && _a !== void 0 ? _a : true;
152
+ let keepPrimary = yield this._ui.promptConfirm("keepPrimary", `${this._styler.hilite(partial.isPrimary ? "Primary" : "Secondary")} pull secret`);
153
+ if (!keepPrimary) {
154
+ partial.isPrimary = (yield this._ui.promptSelect("isPrimary", "Which pull secret?: ", [{ name: "Primary", value: true }, { name: "Secondary", value: false }]));
155
+ }
156
+ // SECRET STORE
157
+ let keepSecret = false;
158
+ while (keepSecret === false) {
159
+ let keepStore = (partial.storeName === undefined) ? false : yield this._ui.promptConfirm("keepStore", `Secret Store: ${this._styler.hilite(partial.storeName)}`);
160
+ if (!keepStore) {
161
+ let original = `${partial.storeType}|${partial.storeName}`;
162
+ // Lazy-load existing secret stores
163
+ secretStores = secretStores !== null && secretStores !== void 0 ? secretStores : yield this._codiacApi.KvpStoreDef.readMany({ all: true }, { throwNotFound: false });
164
+ // limit generic kvp stores to only secret stores...
165
+ secretStores = secretStores.filter(s => [contracts_1.KvpStoreTypesEnum.awsKeyVault, contracts_1.KvpStoreTypesEnum.azKeyVault].includes(s.type));
166
+ if (secretStores.length === 0)
167
+ throw new Error(`Cannot define pull secret: No secret stores have been declared.`);
168
+ let storeChoices = secretStores.map((s, n) => { return { name: `${s.name} (${s.type})`, value: n }; });
169
+ let index = (yield this._ui.promptSelect("secretStore", "Secret Store?: ", storeChoices));
170
+ partial.storeName = secretStores[index].name;
171
+ partial.storeType = secretStores[index].type;
172
+ // Reset the secret name if we changed the secret store
173
+ if (`${partial.storeType}|${partial.storeName}` !== original) {
174
+ partial.secretName = undefined;
175
+ }
176
+ }
177
+ // SECRET
178
+ keepSecret = (partial.secretName === undefined) ? false : yield this._ui.promptConfirm("keepSecret", `Secret name: ${this._styler.hilite(partial.secretName)}`);
179
+ if (!keepSecret) {
180
+ // SELECT EXISTING...
181
+ this._ui.startSpinner("Loading list of secrets...");
182
+ let secrets = yield this.relayClient.listSecretsFrom(partial.storeName);
183
+ this._ui.stopSpinner(`found ${secrets.length}`);
184
+ let origSecretName = partial.secretName;
185
+ partial.secretName = undefined;
186
+ if (secrets.length > 0) {
187
+ let choices = secrets.map(s => { return { name: s, value: s }; });
188
+ if (allowAddSecrets === true) {
189
+ choices.push({ name: "** other **", value: codiac_constants_1.CliConstants.PROMPT_ME_DESIGNATOR });
190
+ }
191
+ partial.secretName = yield this._ui.promptSelect("secretName", "Secret name: ", choices);
192
+ keepSecret = true;
193
+ }
194
+ // DECLARE NEW...
195
+ if (allowAddSecrets === true && (partial.secretName === undefined || partial.secretName === codiac_constants_1.CliConstants.PROMPT_ME_DESIGNATOR)) {
196
+ partial.secretName = yield this._ui.prompt("newSecretName", "Name of NEW secret: ", origSecretName);
197
+ let secretValue = yield this._ui.promptPassword("newSecret", "Enter the secret value: ");
198
+ // TODO: write secret
199
+ // this._ui.startSpinner(`Writing secret value to store...`);
200
+ // await this.relayClient.setSecret(partial.storeName!, partial.secretName, secretValue);
201
+ // this._ui.stopSpinner("complete.");
202
+ keepSecret = true;
203
+ }
204
+ else if (secrets.length === 0) {
205
+ this._ui.userMessage(`No secrets exist in [${partial.storeName}]`);
206
+ keepSecret = false;
207
+ }
208
+ }
209
+ }
210
+ candidate = {
211
+ secretRef: new pull_secret_1.PullSecretRef(partial.storeType, partial.storeName, partial.secretName, partial.expiresOn),
212
+ isPrimary: partial.isPrimary,
213
+ regCode: partial.regCode
214
+ };
215
+ this._ui.userMessage((0, prettify_1.prettify)(candidate));
216
+ this._ui.userMessage(`You are about to set the ${candidate.isPrimary ? "primary" : "secondary"} pull secret for ${this._styler.bold(this._styler.hilite(candidate.regCode))} [Tenant: ${this._userCntx.currentTenantCode}].`);
217
+ confirmed = yield this._ui.promptConfirm("confirmPullSecret", "Continue?", false);
218
+ }
219
+ if (candidate === undefined)
220
+ throw new Error("No PullSecret was defined."); // this shd never happen; it's just here to pacify typescript.
221
+ resolve(candidate);
222
+ }
223
+ catch (err) {
224
+ // this.logger.error(`${err.name ?? ''} ${err.message ?? ''}`, err.stack);
225
+ reject(err);
226
+ }
227
+ }));
228
+ });
229
+ }
230
+ applyPullSecret(pullSecretRef, isPrimary, registry) {
231
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
232
+ var _a;
233
+ try {
234
+ let pullSecretField = isPrimary ? "pullSecret" : "pullSecretSecondary";
235
+ let patchSpec = {
236
+ id: registry.id,
237
+ operations: [
238
+ {
239
+ op: contracts_2.patchOperationType.replace,
240
+ path: pullSecretField,
241
+ value: pullSecretRef
242
+ }
243
+ ]
244
+ };
245
+ let result = yield this._codiacApi.ImageRegistry.tryPatch(patchSpec);
246
+ if (result.success) {
247
+ this._ui.userMessage(`Successfully updated ${pullSecretField} on ${registry.type} image registry [${this._styler.hilite(registry.code)}]`);
248
+ }
249
+ else if (result.error) {
250
+ this._ui.userMessage(`${this._styler.colorCritical("Error")} updating ${pullSecretField} on ${registry.type} image registry [${registry.code}]: ${result.error.name} ${(_a = result.error.message) !== null && _a !== void 0 ? _a : result.error.stack}`);
251
+ }
252
+ resolve();
253
+ }
254
+ catch (err) {
255
+ this.logger.error(err, pullSecretRef);
256
+ resolve();
257
+ // reject(err);
258
+ }
259
+ }));
260
+ }
261
+ buildScript(candidate) {
262
+ let output;
263
+ try {
264
+ output = `codiac imageRegistry:pullSecret:set --silent`;
265
+ let args;
266
+ let flags = {};
267
+ flags.registry = candidate.regCode;
268
+ if (candidate.isPrimary !== true)
269
+ flags.item = "secondary";
270
+ flags.storeType = candidate.secretRef.type;
271
+ flags.storeName = candidate.secretRef.name;
272
+ flags.name = candidate.secretRef.key;
273
+ Object.keys(flags).forEach(k => output = output.concat(" ", `--${k}=${flags[k]}`));
274
+ return output;
275
+ }
276
+ catch (err) {
277
+ throw err;
278
+ }
279
+ }
280
+ }
281
+ exports.default = ImageRegistryPullSecretSet;
282
+ ImageRegistryPullSecretSet.description = 'Upserts the primary and secondary pull secret references for the given container registry.';
283
+ ImageRegistryPullSecretSet.aliases = ['pullsecret'];
284
+ ImageRegistryPullSecretSet.dependsOn = ["registry", "storeType", "storeName", "name"];
285
+ ImageRegistryPullSecretSet.flags = {
286
+ // kit: Flags.string({ char: 'k', required: false, exclusive: ["image", "registry"], description: "The name of the kit (with library prefix, eg: 'library/kitName') to use to create the asset. Use '?' to be prompted for a kit (Optional: used instead of calling for the image)." }),
287
+ registry: core_1.Flags.string({ char: 'r', required: false, exclusive: ["kit"], description: "The container registry in which the image exists (defaults to docker hub)." }),
288
+ // name: Flags.string({ char: 'n', required: false, description: "The name to give the enterprise asset (Optional: defaults to the image name without the scope prefix)." }),
289
+ // code: Flags.string({ char: 'c', required: false, description: "The host name to assign this asset in the domain url. eg: 'myasset' in 'myasset.your-domain.com' (Optional: defaults to the asset name)." }),
290
+ // enterprise: Flags.string({ char: 'e', required: false, description: 'The name of the enterprise in which to create this asset. (defaults to the current enterprise context)' }),
291
+ item: core_1.Flags.enum({ char: 'f', options: ["primary", "secondary"], required: false, default: "primary", description: "Applies the command to either the primary (default) or seoncdary secret for the image registry." }),
292
+ storeType: core_1.Flags.enum({ char: 't', required: false, options: Object.values(contracts_1.KvpStoreTypesEnum), description: "The type of secret store containing the actual pull secrets." }),
293
+ storeName: core_1.Flags.string({ char: 's', required: false, description: "The name of the secret store containing the actual pull secrets." }),
294
+ name: core_1.Flags.string({ char: 'n', required: false, description: "The name of the secret within the secret store." }),
295
+ toScript: core_1.Flags.boolean({ char: 'z', required: false, description: `Outputs an assembled command string, NO execution` }),
296
+ silent: core_1.Flags.boolean({ char: 'y', dependsOn: ImageRegistryPullSecretSet.dependsOn, required: false, description: `(Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs. Requires: ${ImageRegistryPullSecretSet.dependsOn}` }),
297
+ help: core_1.Flags.help({ char: 'h' })
298
+ };
299
+ ImageRegistryPullSecretSet.args = [];
300
+ //# sourceMappingURL=set.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"set.js","sourceRoot":"","sources":["../../../../src/commands/imageRegistry/pullSecret/set.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { CommandBaseEnterprise } from '../../../command-base-enterprise';
2
+ import { ImageRegistryContextualizer } from '../../../uilogic/image-registry-contextualizer';
3
+ export default class ImageRegistryPullSecretUnset extends CommandBaseEnterprise {
4
+ static description: string;
5
+ static aliases: string[];
6
+ static dependsOn: string[];
7
+ static flags: {
8
+ registry: import("@oclif/core/lib/interfaces").OptionFlag<string | undefined>;
9
+ item: import("@oclif/core/lib/interfaces").OptionFlag<string>;
10
+ toScript: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
11
+ silent: import("@oclif/core/lib/interfaces").BooleanFlag<boolean>;
12
+ help: import("@oclif/core/lib/interfaces").BooleanFlag<void>;
13
+ };
14
+ static args: never[];
15
+ protected bootstrap(): void;
16
+ protected get uiRegistry(): ImageRegistryContextualizer;
17
+ private _uiRegistry_backer;
18
+ run(): Promise<void>;
19
+ private buildCandidate_silently;
20
+ /** Walks the user through a Q & A to build out the specs for the asset. */
21
+ private buildCandidate_interactively;
22
+ private removePullSecret;
23
+ private buildScript;
24
+ }
@@ -0,0 +1,243 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const core_1 = require("@oclif/core");
5
+ const autocomplete = require("inquirer-autocomplete-prompt");
6
+ const contracts_1 = require("@codiac.io/codiac-common/contracts");
7
+ const command_base_enterprise_1 = require("../../../command-base-enterprise");
8
+ const cloud_resource_configurator_factory_1 = require("../../../uilogic/cloud-resource-configurator-factory");
9
+ const cloud_provider_contextualizer_1 = require("../../../uilogic/cloud-provider-contextualizer");
10
+ const image_registry_contextualizer_1 = require("../../../uilogic/image-registry-contextualizer");
11
+ const image_contextualizer_1 = require("../../../uilogic/image-contextualizer");
12
+ // Has to be module-scoped bc the autocomplete redefines "this", so we can't use it inside searchPorts().
13
+ let ports = [];
14
+ class ImageRegistryPullSecretUnset extends command_base_enterprise_1.CommandBaseEnterprise {
15
+ bootstrap() {
16
+ super.bootstrap();
17
+ cloud_provider_contextualizer_1.CloudProviderContextualizer.bootstrap(this.ioc);
18
+ this.ioc.bind(image_registry_contextualizer_1.ImageRegistryContextualizer).toSelf();
19
+ this.ioc.bind(image_contextualizer_1.ImageContextualizer).toSelf();
20
+ }
21
+ // --------------------------------------------------------------------
22
+ // Lazy-loaded properties
23
+ get uiRegistry() {
24
+ if (this._uiRegistry_backer === undefined) {
25
+ this._uiRegistry_backer = this.ioc.get(image_registry_contextualizer_1.ImageRegistryContextualizer);
26
+ }
27
+ return this._uiRegistry_backer;
28
+ }
29
+ // --------------------------------------------------------------------
30
+ run() {
31
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
32
+ this.bootstrap();
33
+ const { args, flags } = yield this.parse(ImageRegistryPullSecretUnset);
34
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
35
+ try {
36
+ this._userCntx = yield this.establishTenantContext(this._userCntx);
37
+ let isPrimary = flags.item === "primary";
38
+ // TODO: Revisit for pull secrets on kits
39
+ // overlay given values
40
+ let registries = yield this._codiacApi.ImageRegistry.readMany({ all: true }, { throwNotFound: false });
41
+ if (registries.length === 0) {
42
+ throw new Error(`Cannot set pull secrets: No image registries are defined yet.`);
43
+ }
44
+ let candidate;
45
+ if (flags.silent == true) {
46
+ candidate = this.buildCandidate_silently(isPrimary, flags.registry, registries);
47
+ }
48
+ else {
49
+ candidate = yield this.buildCandidate_interactively(isPrimary, flags.registry, registries);
50
+ }
51
+ // FINAL EXECUTION (or not)
52
+ if (candidate !== undefined) {
53
+ if (flags.toScript === true) {
54
+ let script = this.buildScript(candidate);
55
+ this._ui.userMessage(script);
56
+ }
57
+ else {
58
+ yield this.removePullSecret(candidate.isPrimary, registries.find(r => r.code === candidate.regCode));
59
+ }
60
+ }
61
+ else {
62
+ this.logger.notice(`Operation cancelled. No work was done.`);
63
+ this._ui.userMessage(`Operation cancelled. No work was done.`);
64
+ }
65
+ resolve();
66
+ }
67
+ catch (err) {
68
+ this.logger.error(err);
69
+ // reject(err);
70
+ resolve();
71
+ }
72
+ }));
73
+ });
74
+ }
75
+ buildCandidate_silently(isPrimary, regCode, registries) {
76
+ // Rough validation for missing args
77
+ if (!regCode)
78
+ throw new Error("A registry code must be set");
79
+ if (!registries.find(r => r.code === regCode)) {
80
+ throw new Error(`No ImageRegistry record currently exists with code: [${regCode}]. You might need to check your spelling or capture your image registry.`);
81
+ }
82
+ try {
83
+ // TODO: Validate existence of secretRef in the secretStore
84
+ return { isPrimary: isPrimary, regCode: regCode };
85
+ }
86
+ catch (err) {
87
+ throw err;
88
+ }
89
+ }
90
+ /** Walks the user through a Q & A to build out the specs for the asset. */
91
+ buildCandidate_interactively(isPrimary, regCode, registries, allowAddSecrets = false) {
92
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
93
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
94
+ var _a;
95
+ let candidate;
96
+ try {
97
+ cloud_resource_configurator_factory_1.RegistryConfiguratorFactory.bootstrap(this.ioc);
98
+ let partial = {
99
+ isPrimary: isPrimary,
100
+ regCode: regCode
101
+ };
102
+ let regInput = {};
103
+ if (partial.regCode) {
104
+ let found = registries.find(r => r.code === partial.regCode);
105
+ if (found)
106
+ regInput = found;
107
+ }
108
+ let confirmed;
109
+ while (!confirmed) {
110
+ // NOTE: We are gating on "confirmed != undefined" because that means they asked to revise the values.
111
+ console.clear();
112
+ // REGISTRY (we've already gated this method for registries.length > 0)
113
+ let keepRegistry = false;
114
+ let selectedRegistry;
115
+ while (keepRegistry === false) {
116
+ keepRegistry = (partial.regCode === undefined) ? false : yield this._ui.promptConfirm("keepRegistry", `${this._styler.hilite(partial.regCode)} pull secret`);
117
+ if (!keepRegistry) {
118
+ selectedRegistry = (yield this.uiRegistry.promptForExistingRegistry(false, registries));
119
+ partial.regCode = selectedRegistry.code;
120
+ keepRegistry = true;
121
+ }
122
+ // PRIMARY/SECONDARY
123
+ let choices = [];
124
+ if ((selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.pullSecret) !== undefined && (selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.pullSecret) !== null) {
125
+ choices.push({ name: "Primary", value: true });
126
+ }
127
+ if ((selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.pullSecretSecondary) !== undefined && (selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.pullSecretSecondary) !== null) {
128
+ choices.push({ name: "Secondary", value: false });
129
+ }
130
+ if (choices.length > 1) {
131
+ partial.isPrimary = (_a = partial.isPrimary) !== null && _a !== void 0 ? _a : true;
132
+ let keepPrimary = yield this._ui.promptConfirm("keepPrimary", `${this._styler.hilite(partial.isPrimary ? "Primary" : "Secondary")} pull secret`);
133
+ if (!keepPrimary) {
134
+ partial.isPrimary = (yield this._ui.promptSelect("isPrimary", "Which pull secret?: ", [{ name: "Primary", value: true }, { name: "Secondary", value: false }]));
135
+ }
136
+ }
137
+ else if (choices.length === 1) {
138
+ if (partial.isPrimary && choices[0].name !== "Primary") {
139
+ this._ui.userMessage(this._styler.colorWarning(`The image registry [${selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.code}] has no primary pull secret set.`));
140
+ partial.isPrimary = false; // switch to secondary
141
+ }
142
+ if (partial.isPrimary === false && choices[0].name !== "Secondary") {
143
+ this._ui.userMessage(this._styler.colorWarning(`The image registry [${selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.code}] has no secondary pull secret set.`));
144
+ partial.isPrimary = true; // switch to primary
145
+ }
146
+ // this._ui.userMessage(`Remove ${this._styler.hilite(partial.isPrimary ? "Primary" : "Secondary")} pull secret`);
147
+ }
148
+ else if (choices.length === 0) {
149
+ this._ui.userMessage(this._styler.colorWarning(`The ${selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.type} image registry [${selectedRegistry === null || selectedRegistry === void 0 ? void 0 : selectedRegistry.code}] has no pull secrets set.`));
150
+ if (registries.length > 1) {
151
+ this._ui.userMessage(`Choose another registry (or hit CTRL-C to cancel)...`);
152
+ }
153
+ else {
154
+ this.exit();
155
+ }
156
+ keepRegistry = false;
157
+ partial.regCode = undefined;
158
+ }
159
+ }
160
+ candidate = {
161
+ isPrimary: partial.isPrimary,
162
+ regCode: partial.regCode
163
+ };
164
+ // this.logger.notice(prettify(candidate));
165
+ this._ui.userMessage(`You are about to remove the ${this._styler.hilite(candidate.isPrimary ? "primary" : "secondary")} pull secret for ${this._styler.bold(this._styler.hilite(candidate.regCode))} [Tenant: ${this._userCntx.currentTenantCode}].`);
166
+ confirmed = yield this._ui.promptConfirm("confirmPullSecret", "Continue?", false);
167
+ }
168
+ if (candidate === undefined)
169
+ throw new Error("No PullSecret was defined."); // this shd never happen; it's just here to pacify typescript.
170
+ resolve(candidate);
171
+ }
172
+ catch (err) {
173
+ // this.logger.error(`${err.name ?? ''} ${err.message ?? ''}`, err.stack);
174
+ reject(err);
175
+ }
176
+ }));
177
+ });
178
+ }
179
+ removePullSecret(isPrimary, registry) {
180
+ return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
181
+ var _a;
182
+ try {
183
+ let pullSecretField = isPrimary ? "pullSecret" : "pullSecretSecondary";
184
+ let patchSpec = {
185
+ id: registry.id,
186
+ operations: [
187
+ {
188
+ op: contracts_1.patchOperationType.replace,
189
+ path: pullSecretField,
190
+ value: undefined
191
+ }
192
+ ]
193
+ };
194
+ let result = yield this._codiacApi.ImageRegistry.tryPatch(patchSpec);
195
+ if (result.success) {
196
+ this._ui.userMessage(`Successfully removed ${this._styler.hilite(isPrimary ? "primary" : "secondary")} pull secret on ${registry.type} image registry [${this._styler.hilite(registry.code)}]`);
197
+ }
198
+ else if (result.error) {
199
+ this._ui.userMessage(`${this._styler.colorCritical("Error")} removing ${isPrimary ? "primary" : "secondary"} pull secret on ${registry.type} image registry [${registry.code}]: ${result.error.name} ${(_a = result.error.message) !== null && _a !== void 0 ? _a : result.error.stack}`);
200
+ }
201
+ resolve();
202
+ }
203
+ catch (err) {
204
+ this.logger.error(err, registry);
205
+ resolve();
206
+ // reject(err);
207
+ }
208
+ }));
209
+ }
210
+ buildScript(candidate) {
211
+ let output;
212
+ try {
213
+ output = `codiac imageRegistry:pullSecret:unset --silent`;
214
+ let args;
215
+ let flags = {};
216
+ flags.registry = candidate.regCode;
217
+ if (candidate.isPrimary !== true)
218
+ flags.item = "secondary";
219
+ Object.keys(flags).forEach(k => output = output.concat(" ", `--${k}=${flags[k]}`));
220
+ return output;
221
+ }
222
+ catch (err) {
223
+ throw err;
224
+ }
225
+ }
226
+ }
227
+ exports.default = ImageRegistryPullSecretUnset;
228
+ ImageRegistryPullSecretUnset.description = 'Removes the primary or secondary pull secret reference for the given container registry.';
229
+ ImageRegistryPullSecretUnset.aliases = ['pullsecret:unset'];
230
+ ImageRegistryPullSecretUnset.dependsOn = ["registry", "storeType", "storeName", "name"];
231
+ ImageRegistryPullSecretUnset.flags = {
232
+ // kit: Flags.string({ char: 'k', required: false, exclusive: ["image", "registry"], description: "The name of the kit (with library prefix, eg: 'library/kitName') to use to create the asset. Use '?' to be prompted for a kit (Optional: used instead of calling for the image)." }),
233
+ registry: core_1.Flags.string({ char: 'r', required: false, exclusive: ["kit"], description: "The container registry in which the image exists (defaults to docker hub)." }),
234
+ // name: Flags.string({ char: 'n', required: false, description: "The name to give the enterprise asset (Optional: defaults to the image name without the scope prefix)." }),
235
+ // code: Flags.string({ char: 'c', required: false, description: "The host name to assign this asset in the domain url. eg: 'myasset' in 'myasset.your-domain.com' (Optional: defaults to the asset name)." }),
236
+ // enterprise: Flags.string({ char: 'e', required: false, description: 'The name of the enterprise in which to create this asset. (defaults to the current enterprise context)' }),
237
+ item: core_1.Flags.enum({ char: 'f', options: ["primary", "secondary"], required: false, default: "primary", description: "Applies the command to either the primary (default) or seoncdary secret for the image registry." }),
238
+ toScript: core_1.Flags.boolean({ char: 'z', required: false, description: `Outputs an assembled command string, NO execution` }),
239
+ silent: core_1.Flags.boolean({ char: 'y', dependsOn: ImageRegistryPullSecretUnset.dependsOn, required: false, description: `(Optional: defaults to false) Prevents confirmations of user-values that are remembered from prior runs. Requires: ${ImageRegistryPullSecretUnset.dependsOn}` }),
240
+ help: core_1.Flags.help({ char: 'h' })
241
+ };
242
+ ImageRegistryPullSecretUnset.args = [];
243
+ //# sourceMappingURL=unset.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unset.js","sourceRoot":"","sources":["../../../../src/commands/imageRegistry/pullSecret/unset.ts"],"names":[],"mappings":"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"}