@credibledata/cred-cli 0.0.103 → 0.0.105

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 (430) hide show
  1. package/README.md +106 -1
  2. package/dist/agent-contract.spec.js +548 -0
  3. package/dist/agent-contract.spec.js.map +1 -0
  4. package/dist/browser.js +72 -0
  5. package/dist/browser.js.map +1 -0
  6. package/dist/browser.spec.js +125 -0
  7. package/dist/browser.spec.js.map +1 -0
  8. package/dist/client/api.js +4137 -1159
  9. package/dist/client/api.js.map +1 -1
  10. package/dist/client-codeassist/api.js +476 -0
  11. package/dist/client-codeassist/api.js.map +1 -0
  12. package/dist/client-codeassist/base.js +69 -0
  13. package/dist/client-codeassist/base.js.map +1 -0
  14. package/dist/client-codeassist/common.js +162 -0
  15. package/dist/client-codeassist/common.js.map +1 -0
  16. package/dist/client-codeassist/configuration.js +44 -0
  17. package/dist/client-codeassist/configuration.js.map +1 -0
  18. package/dist/client-codeassist/index.js +32 -0
  19. package/dist/client-codeassist/index.js.map +1 -0
  20. package/dist/clientconfiguration.js +17 -289
  21. package/dist/clientconfiguration.js.map +1 -1
  22. package/dist/clientconfiguration.spec.js +35 -96
  23. package/dist/clientconfiguration.spec.js.map +1 -1
  24. package/dist/commands/add.js +103 -3
  25. package/dist/commands/add.js.map +1 -1
  26. package/dist/commands/add.spec.js +113 -0
  27. package/dist/commands/add.spec.js.map +1 -0
  28. package/dist/commands/connection/createconnections.js +104 -7
  29. package/dist/commands/connection/createconnections.js.map +1 -1
  30. package/dist/commands/connection/createconnections.spec.js +35 -1
  31. package/dist/commands/connection/createconnections.spec.js.map +1 -1
  32. package/dist/commands/connection/deleteconnection.js +4 -2
  33. package/dist/commands/connection/deleteconnection.js.map +1 -1
  34. package/dist/commands/connection/deleteconnection.spec.js +6 -1
  35. package/dist/commands/connection/deleteconnection.spec.js.map +1 -1
  36. package/dist/commands/connection/listconnections.js +2 -0
  37. package/dist/commands/connection/listconnections.js.map +1 -1
  38. package/dist/commands/connection/updateconnection.js +365 -0
  39. package/dist/commands/connection/updateconnection.js.map +1 -0
  40. package/dist/commands/connection/updateconnection.spec.js +625 -0
  41. package/dist/commands/connection/updateconnection.spec.js.map +1 -0
  42. package/dist/commands/database/createdatabase.js +52 -0
  43. package/dist/commands/database/createdatabase.js.map +1 -0
  44. package/dist/commands/database/database.spec.js +267 -0
  45. package/dist/commands/database/database.spec.js.map +1 -0
  46. package/dist/commands/database/deletedatabase.js +91 -0
  47. package/dist/commands/database/deletedatabase.js.map +1 -0
  48. package/dist/commands/database/getdatabase.js +97 -0
  49. package/dist/commands/database/getdatabase.js.map +1 -0
  50. package/dist/commands/database/listdatabases.js +36 -0
  51. package/dist/commands/database/listdatabases.js.map +1 -0
  52. package/dist/commands/database/shared.js +125 -0
  53. package/dist/commands/database/shared.js.map +1 -0
  54. package/dist/commands/database/shared.spec.js +109 -0
  55. package/dist/commands/database/shared.spec.js.map +1 -0
  56. package/dist/commands/database/updatedatabase.js +39 -0
  57. package/dist/commands/database/updatedatabase.js.map +1 -0
  58. package/dist/commands/environment/createenvironment.js +59 -28
  59. package/dist/commands/environment/createenvironment.js.map +1 -1
  60. package/dist/commands/environment/createenvironment.spec.js +29 -0
  61. package/dist/commands/environment/createenvironment.spec.js.map +1 -1
  62. package/dist/commands/environment/deleteenvironment.js +3 -2
  63. package/dist/commands/environment/deleteenvironment.js.map +1 -1
  64. package/dist/commands/environment/deleteenvironment.spec.js +5 -1
  65. package/dist/commands/environment/deleteenvironment.spec.js.map +1 -1
  66. package/dist/commands/environment/getenvironment.js +1 -0
  67. package/dist/commands/environment/getenvironment.js.map +1 -1
  68. package/dist/commands/environment/listenvironments.js +40 -8
  69. package/dist/commands/environment/listenvironments.js.map +1 -1
  70. package/dist/commands/environment/listenvironments.spec.js +41 -2
  71. package/dist/commands/environment/listenvironments.spec.js.map +1 -1
  72. package/dist/commands/environment/setenvironment.js +145 -6
  73. package/dist/commands/environment/setenvironment.js.map +1 -1
  74. package/dist/commands/environment/setenvironment.spec.js +256 -8
  75. package/dist/commands/environment/setenvironment.spec.js.map +1 -1
  76. package/dist/commands/environment/updateenvironment.js +12 -8
  77. package/dist/commands/environment/updateenvironment.js.map +1 -1
  78. package/dist/commands/environment/updateenvironment.spec.js +36 -2
  79. package/dist/commands/environment/updateenvironment.spec.js.map +1 -1
  80. package/dist/commands/get.js +64 -1
  81. package/dist/commands/get.js.map +1 -1
  82. package/dist/commands/group/addmember.js +3 -1
  83. package/dist/commands/group/addmember.js.map +1 -1
  84. package/dist/commands/group/addmember.spec.js +7 -2
  85. package/dist/commands/group/addmember.spec.js.map +1 -1
  86. package/dist/commands/group/creategroup.js +2 -0
  87. package/dist/commands/group/creategroup.js.map +1 -1
  88. package/dist/commands/group/deletegroup.js +3 -1
  89. package/dist/commands/group/deletegroup.js.map +1 -1
  90. package/dist/commands/group/deletegroup.spec.js +7 -1
  91. package/dist/commands/group/deletegroup.spec.js.map +1 -1
  92. package/dist/commands/group/getgroup.js +2 -0
  93. package/dist/commands/group/getgroup.js.map +1 -1
  94. package/dist/commands/group/listgroups.js +2 -0
  95. package/dist/commands/group/listgroups.js.map +1 -1
  96. package/dist/commands/group/removemember.js +3 -1
  97. package/dist/commands/group/removemember.js.map +1 -1
  98. package/dist/commands/group/removemember.spec.js +7 -2
  99. package/dist/commands/group/removemember.spec.js.map +1 -1
  100. package/dist/commands/groupaccesstoken/deleteToken.js +2 -1
  101. package/dist/commands/groupaccesstoken/deleteToken.js.map +1 -1
  102. package/dist/commands/groupaccesstoken/groupContainer.js +2 -0
  103. package/dist/commands/groupaccesstoken/groupContainer.js.map +1 -1
  104. package/dist/commands/list.js +24 -4
  105. package/dist/commands/list.js.map +1 -1
  106. package/dist/commands/materialization/cancelrun.js +3 -1
  107. package/dist/commands/materialization/cancelrun.js.map +1 -1
  108. package/dist/commands/materialization/getindex.js +2 -0
  109. package/dist/commands/materialization/getindex.js.map +1 -1
  110. package/dist/commands/materialization/getmaterialization.js +2 -0
  111. package/dist/commands/materialization/getmaterialization.js.map +1 -1
  112. package/dist/commands/materialization/getpreaggregate.js +2 -0
  113. package/dist/commands/materialization/getpreaggregate.js.map +1 -1
  114. package/dist/commands/materialization/getrun.js +2 -0
  115. package/dist/commands/materialization/getrun.js.map +1 -1
  116. package/dist/commands/materialization/listindexes.js +2 -0
  117. package/dist/commands/materialization/listindexes.js.map +1 -1
  118. package/dist/commands/materialization/listmaterializations.js +2 -0
  119. package/dist/commands/materialization/listmaterializations.js.map +1 -1
  120. package/dist/commands/materialization/listpreaggregates.js +2 -0
  121. package/dist/commands/materialization/listpreaggregates.js.map +1 -1
  122. package/dist/commands/materialization/listruns.js +3 -1
  123. package/dist/commands/materialization/listruns.js.map +1 -1
  124. package/dist/commands/materialization/rerun.js +3 -1
  125. package/dist/commands/materialization/rerun.js.map +1 -1
  126. package/dist/commands/misc/inquirerHost.js +87 -0
  127. package/dist/commands/misc/inquirerHost.js.map +1 -0
  128. package/dist/commands/misc/inquirerHost.spec.js +91 -0
  129. package/dist/commands/misc/inquirerHost.spec.js.map +1 -0
  130. package/dist/commands/misc/login.js +348 -58
  131. package/dist/commands/misc/login.js.map +1 -1
  132. package/dist/commands/misc/login.spec.js +525 -7
  133. package/dist/commands/misc/login.spec.js.map +1 -1
  134. package/dist/commands/misc/logout.js +26 -3
  135. package/dist/commands/misc/logout.js.map +1 -1
  136. package/dist/commands/misc/logout.spec.js +52 -12
  137. package/dist/commands/misc/logout.spec.js.map +1 -1
  138. package/dist/commands/misc/resolveLoginTarget.spec.js +90 -0
  139. package/dist/commands/misc/resolveLoginTarget.spec.js.map +1 -0
  140. package/dist/commands/misc/scope.spec.js +108 -0
  141. package/dist/commands/misc/scope.spec.js.map +1 -0
  142. package/dist/commands/misc/set-access-token.js +1 -1
  143. package/dist/commands/misc/set-access-token.js.map +1 -1
  144. package/dist/commands/misc/set-access-token.spec.js +13 -2
  145. package/dist/commands/misc/set-access-token.spec.js.map +1 -1
  146. package/dist/commands/misc/setup.js +819 -0
  147. package/dist/commands/misc/setup.js.map +1 -0
  148. package/dist/commands/misc/setup.spec.js +783 -0
  149. package/dist/commands/misc/setup.spec.js.map +1 -0
  150. package/dist/commands/misc/status.js +168 -0
  151. package/dist/commands/misc/status.js.map +1 -0
  152. package/dist/commands/misc/status.spec.js +301 -0
  153. package/dist/commands/misc/status.spec.js.map +1 -0
  154. package/dist/commands/misc/token.js +57 -0
  155. package/dist/commands/misc/token.js.map +1 -0
  156. package/dist/commands/misc/token.spec.js +92 -0
  157. package/dist/commands/misc/token.spec.js.map +1 -0
  158. package/dist/commands/package/deletepackage.js +4 -2
  159. package/dist/commands/package/deletepackage.js.map +1 -1
  160. package/dist/commands/package/deletepackage.spec.js +7 -1
  161. package/dist/commands/package/deletepackage.spec.js.map +1 -1
  162. package/dist/commands/package/getpackage.js +142 -0
  163. package/dist/commands/package/getpackage.js.map +1 -0
  164. package/dist/commands/package/getpackage.spec.js +246 -0
  165. package/dist/commands/package/getpackage.spec.js.map +1 -0
  166. package/dist/commands/package/listpackages.js +2 -0
  167. package/dist/commands/package/listpackages.js.map +1 -1
  168. package/dist/commands/package/publish.archive.spec.js +570 -0
  169. package/dist/commands/package/publish.archive.spec.js.map +1 -0
  170. package/dist/commands/package/publish.js +780 -49
  171. package/dist/commands/package/publish.js.map +1 -1
  172. package/dist/commands/package/publish.spec.js +451 -8
  173. package/dist/commands/package/publish.spec.js.map +1 -1
  174. package/dist/commands/package/updatepackage.js +22 -19
  175. package/dist/commands/package/updatepackage.js.map +1 -1
  176. package/dist/commands/package/updatepackage.spec.js +36 -1
  177. package/dist/commands/package/updatepackage.spec.js.map +1 -1
  178. package/dist/commands/permission/createpermission.js +3 -1
  179. package/dist/commands/permission/createpermission.js.map +1 -1
  180. package/dist/commands/permission/deletepermission.js +6 -3
  181. package/dist/commands/permission/deletepermission.js.map +1 -1
  182. package/dist/commands/permission/getpermission.js +2 -0
  183. package/dist/commands/permission/getpermission.js.map +1 -1
  184. package/dist/commands/permission/listpermissions.js +2 -0
  185. package/dist/commands/permission/listpermissions.js.map +1 -1
  186. package/dist/commands/rm.js +21 -0
  187. package/dist/commands/rm.js.map +1 -1
  188. package/dist/commands/set.js +40 -6
  189. package/dist/commands/set.js.map +1 -1
  190. package/dist/commands/set.spec.js +123 -0
  191. package/dist/commands/set.spec.js.map +1 -0
  192. package/dist/commands/table/addtable.js +155 -0
  193. package/dist/commands/table/addtable.js.map +1 -0
  194. package/dist/commands/table/deletetable.js +45 -0
  195. package/dist/commands/table/deletetable.js.map +1 -0
  196. package/dist/commands/table/gettable.js +32 -0
  197. package/dist/commands/table/gettable.js.map +1 -0
  198. package/dist/commands/table/listtables.js +36 -0
  199. package/dist/commands/table/listtables.js.map +1 -0
  200. package/dist/commands/table/table.spec.js +304 -0
  201. package/dist/commands/table/table.spec.js.map +1 -0
  202. package/dist/commands/table/tablefile.js +195 -0
  203. package/dist/commands/table/tablefile.js.map +1 -0
  204. package/dist/commands/table/tablefile.spec.js +158 -0
  205. package/dist/commands/table/tablefile.spec.js.map +1 -0
  206. package/dist/commands/update.js +21 -0
  207. package/dist/commands/update.js.map +1 -1
  208. package/dist/commands/version/archive-unarchive-version.js +4 -2
  209. package/dist/commands/version/archive-unarchive-version.js.map +1 -1
  210. package/dist/commands/version/archive-unarchive-version.spec.js +6 -1
  211. package/dist/commands/version/archive-unarchive-version.spec.js.map +1 -1
  212. package/dist/commands/version/listversions.js +2 -0
  213. package/dist/commands/version/listversions.js.map +1 -1
  214. package/dist/common/UserGroupId.js +9 -4
  215. package/dist/common/UserGroupId.js.map +1 -1
  216. package/dist/common/UserGroupId.spec.js +5 -0
  217. package/dist/common/UserGroupId.spec.js.map +1 -1
  218. package/dist/constants.js +37 -143
  219. package/dist/constants.js.map +1 -1
  220. package/dist/index.js +487 -90
  221. package/dist/index.js.map +1 -1
  222. package/dist/logger.js +42 -9
  223. package/dist/logger.js.map +1 -1
  224. package/dist/session.js +56 -0
  225. package/dist/session.js.map +1 -0
  226. package/dist/session.spec.js +103 -0
  227. package/dist/session.spec.js.map +1 -0
  228. package/dist/setup-core/briefing.js +176 -0
  229. package/dist/setup-core/briefing.js.map +1 -0
  230. package/dist/setup-core/credstore.js +415 -0
  231. package/dist/setup-core/credstore.js.map +1 -0
  232. package/dist/setup-core/credstore.spec.js +238 -0
  233. package/dist/setup-core/credstore.spec.js.map +1 -0
  234. package/dist/setup-core/environments.js +267 -0
  235. package/dist/setup-core/environments.js.map +1 -0
  236. package/dist/setup-core/flow.e2e.js +165 -0
  237. package/dist/setup-core/flow.e2e.js.map +1 -0
  238. package/dist/setup-core/flow.js +765 -0
  239. package/dist/setup-core/flow.js.map +1 -0
  240. package/dist/setup-core/flow.spec.js +1348 -0
  241. package/dist/setup-core/flow.spec.js.map +1 -0
  242. package/dist/setup-core/folderconfig.js +283 -0
  243. package/dist/setup-core/folderconfig.js.map +1 -0
  244. package/dist/setup-core/git.js +97 -0
  245. package/dist/setup-core/git.js.map +1 -0
  246. package/dist/setup-core/host.js +77 -0
  247. package/dist/setup-core/host.js.map +1 -0
  248. package/dist/setup-core/importconnections.js +470 -0
  249. package/dist/setup-core/importconnections.js.map +1 -0
  250. package/dist/setup-core/importconnections.spec.js +594 -0
  251. package/dist/setup-core/importconnections.spec.js.map +1 -0
  252. package/dist/setup-core/liveness.js +94 -0
  253. package/dist/setup-core/liveness.js.map +1 -0
  254. package/dist/setup-core/liveness.spec.js +59 -0
  255. package/dist/setup-core/liveness.spec.js.map +1 -0
  256. package/dist/setup-core/localpublisherconfig.js +26 -0
  257. package/dist/setup-core/localpublisherconfig.js.map +1 -0
  258. package/dist/setup-core/localpublisherconfig.spec.js +29 -0
  259. package/dist/setup-core/localpublisherconfig.spec.js.map +1 -0
  260. package/dist/setup-core/mcpconfig.js +198 -0
  261. package/dist/setup-core/mcpconfig.js.map +1 -0
  262. package/dist/setup-core/mcpconfig.spec.js +205 -0
  263. package/dist/setup-core/mcpconfig.spec.js.map +1 -0
  264. package/dist/setup-core/packagemanifest.js +55 -0
  265. package/dist/setup-core/packagemanifest.js.map +1 -0
  266. package/dist/setup-core/ports.js +182 -0
  267. package/dist/setup-core/ports.js.map +1 -0
  268. package/dist/setup-core/ports.spec.js +173 -0
  269. package/dist/setup-core/ports.spec.js.map +1 -0
  270. package/dist/setup-core/publisherconfig.js +268 -0
  271. package/dist/setup-core/publisherconfig.js.map +1 -0
  272. package/dist/setup-core/publisherconfig.oracle.js +166 -0
  273. package/dist/setup-core/publisherconfig.oracle.js.map +1 -0
  274. package/dist/setup-core/publisherconfig.spec.js +277 -0
  275. package/dist/setup-core/publisherconfig.spec.js.map +1 -0
  276. package/dist/setup-core/publisherversion.js +26 -0
  277. package/dist/setup-core/publisherversion.js.map +1 -0
  278. package/dist/setup-core/readiness.spec.js +161 -0
  279. package/dist/setup-core/readiness.spec.js.map +1 -0
  280. package/dist/setup-core/readylines.js +169 -0
  281. package/dist/setup-core/readylines.js.map +1 -0
  282. package/dist/setup-core/readylines.spec.js +70 -0
  283. package/dist/setup-core/readylines.spec.js.map +1 -0
  284. package/dist/setup-core/refresh.js +348 -0
  285. package/dist/setup-core/refresh.js.map +1 -0
  286. package/dist/setup-core/refresh.spec.js +501 -0
  287. package/dist/setup-core/refresh.spec.js.map +1 -0
  288. package/dist/setup-core/skills.js +279 -0
  289. package/dist/setup-core/skills.js.map +1 -0
  290. package/dist/setup-core/skills.spec.js +334 -0
  291. package/dist/setup-core/skills.spec.js.map +1 -0
  292. package/dist/setup-core/supervisor.js +879 -0
  293. package/dist/setup-core/supervisor.js.map +1 -0
  294. package/dist/setup-core/supervisor.spec.js +833 -0
  295. package/dist/setup-core/supervisor.spec.js.map +1 -0
  296. package/dist/setup-core/writefile.js +61 -0
  297. package/dist/setup-core/writefile.js.map +1 -0
  298. package/dist/setup-core/writefile.spec.js +68 -0
  299. package/dist/setup-core/writefile.spec.js.map +1 -0
  300. package/dist/utils.js +409 -3
  301. package/dist/utils.js.map +1 -1
  302. package/dist/utils.spec.js +373 -2
  303. package/dist/utils.spec.js.map +1 -1
  304. package/dist/versioncheck-refresh.js +18 -0
  305. package/dist/versioncheck-refresh.js.map +1 -0
  306. package/dist/versioncheck.js +324 -0
  307. package/dist/versioncheck.js.map +1 -0
  308. package/dist/versioncheck.spec.js +587 -0
  309. package/dist/versioncheck.spec.js.map +1 -0
  310. package/node_modules/@credibledata/cli-auth/dist/index.d.ts +86 -0
  311. package/node_modules/@credibledata/cli-auth/dist/index.js +102 -0
  312. package/node_modules/@credibledata/cli-auth/package.json +19 -0
  313. package/package.json +18 -6
  314. package/.github/workflows/build.yml +0 -23
  315. package/.mocharc.json +0 -10
  316. package/.prettierignore +0 -2
  317. package/.prettierrc +0 -4
  318. package/README-DEV.md +0 -40
  319. package/coverage/coverage-summary.json +0 -40
  320. package/coverage/tmp/coverage-2152-1789496974457-0.json +0 -1
  321. package/coverage/tmp/coverage-2153-1789496954404-0.json +0 -1
  322. package/docker/Dockerfile.ci +0 -18
  323. package/docker-compose.yml +0 -18
  324. package/eslint.config.mjs +0 -45
  325. package/generate-client.sh +0 -27
  326. package/mocha.setup.ts +0 -4
  327. package/openapitools.json +0 -10
  328. package/src/client/.openapi-generator/FILES +0 -9
  329. package/src/client/.openapi-generator/VERSION +0 -1
  330. package/src/client/.openapi-generator-ignore +0 -23
  331. package/src/client/api.ts +0 -15999
  332. package/src/client/base.ts +0 -86
  333. package/src/client/common.ts +0 -150
  334. package/src/client/configuration.ts +0 -110
  335. package/src/client/git_push.sh +0 -57
  336. package/src/client/index.ts +0 -18
  337. package/src/clientconfiguration.spec.ts +0 -615
  338. package/src/clientconfiguration.ts +0 -364
  339. package/src/commands/add.ts +0 -191
  340. package/src/commands/connection/createconnections.spec.ts +0 -413
  341. package/src/commands/connection/createconnections.ts +0 -109
  342. package/src/commands/connection/deleteconnection.spec.ts +0 -189
  343. package/src/commands/connection/deleteconnection.ts +0 -57
  344. package/src/commands/connection/listconnections.spec.ts +0 -132
  345. package/src/commands/connection/listconnections.ts +0 -58
  346. package/src/commands/environment/createenvironment.spec.ts +0 -249
  347. package/src/commands/environment/createenvironment.ts +0 -73
  348. package/src/commands/environment/deleteenvironment.spec.ts +0 -152
  349. package/src/commands/environment/deleteenvironment.ts +0 -48
  350. package/src/commands/environment/getenvironment.spec.ts +0 -110
  351. package/src/commands/environment/getenvironment.ts +0 -43
  352. package/src/commands/environment/listenvironments.spec.ts +0 -123
  353. package/src/commands/environment/listenvironments.ts +0 -67
  354. package/src/commands/environment/setenvironment.spec.ts +0 -63
  355. package/src/commands/environment/setenvironment.ts +0 -14
  356. package/src/commands/environment/updateenvironment.spec.ts +0 -386
  357. package/src/commands/environment/updateenvironment.ts +0 -168
  358. package/src/commands/get.ts +0 -153
  359. package/src/commands/group/addmember.spec.ts +0 -257
  360. package/src/commands/group/addmember.ts +0 -85
  361. package/src/commands/group/creategroup.spec.ts +0 -146
  362. package/src/commands/group/creategroup.ts +0 -54
  363. package/src/commands/group/deletegroup.spec.ts +0 -120
  364. package/src/commands/group/deletegroup.ts +0 -45
  365. package/src/commands/group/getgroup.spec.ts +0 -129
  366. package/src/commands/group/getgroup.ts +0 -47
  367. package/src/commands/group/listgroups.spec.ts +0 -137
  368. package/src/commands/group/listgroups.ts +0 -45
  369. package/src/commands/group/removemember.spec.ts +0 -224
  370. package/src/commands/group/removemember.ts +0 -75
  371. package/src/commands/groupaccesstoken/createToken.spec.ts +0 -211
  372. package/src/commands/groupaccesstoken/createToken.ts +0 -72
  373. package/src/commands/groupaccesstoken/deleteToken.spec.ts +0 -147
  374. package/src/commands/groupaccesstoken/deleteToken.ts +0 -29
  375. package/src/commands/groupaccesstoken/groupContainer.ts +0 -83
  376. package/src/commands/groupaccesstoken/listTokens.spec.ts +0 -147
  377. package/src/commands/groupaccesstoken/listTokens.ts +0 -29
  378. package/src/commands/legacy.ts +0 -5
  379. package/src/commands/list.ts +0 -326
  380. package/src/commands/materialization/cancelrun.ts +0 -70
  381. package/src/commands/materialization/getindex.ts +0 -55
  382. package/src/commands/materialization/getmaterialization.ts +0 -57
  383. package/src/commands/materialization/getpreaggregate.ts +0 -58
  384. package/src/commands/materialization/getrun.ts +0 -55
  385. package/src/commands/materialization/listindexes.ts +0 -69
  386. package/src/commands/materialization/listmaterializations.ts +0 -53
  387. package/src/commands/materialization/listpreaggregates.ts +0 -74
  388. package/src/commands/materialization/listruns.ts +0 -77
  389. package/src/commands/materialization/rerun.ts +0 -123
  390. package/src/commands/misc/login.spec.ts +0 -371
  391. package/src/commands/misc/login.ts +0 -343
  392. package/src/commands/misc/logout.spec.ts +0 -32
  393. package/src/commands/misc/logout.ts +0 -9
  394. package/src/commands/misc/loopbackOAuth.ts +0 -127
  395. package/src/commands/misc/set-access-token.spec.ts +0 -95
  396. package/src/commands/misc/set-access-token.ts +0 -32
  397. package/src/commands/package/deletepackage.spec.ts +0 -164
  398. package/src/commands/package/deletepackage.ts +0 -58
  399. package/src/commands/package/listpackages.spec.ts +0 -163
  400. package/src/commands/package/listpackages.ts +0 -74
  401. package/src/commands/package/publish.spec.ts +0 -642
  402. package/src/commands/package/publish.ts +0 -236
  403. package/src/commands/package/updatepackage.spec.ts +0 -319
  404. package/src/commands/package/updatepackage.ts +0 -95
  405. package/src/commands/permission/createpermission.spec.ts +0 -507
  406. package/src/commands/permission/createpermission.ts +0 -181
  407. package/src/commands/permission/deletepermission.ts +0 -117
  408. package/src/commands/permission/getpermission.ts +0 -115
  409. package/src/commands/permission/listpermissions.ts +0 -101
  410. package/src/commands/permission/scope.ts +0 -180
  411. package/src/commands/rm.ts +0 -146
  412. package/src/commands/set.ts +0 -25
  413. package/src/commands/update.ts +0 -107
  414. package/src/commands/version/archive-unarchive-version.spec.ts +0 -456
  415. package/src/commands/version/archive-unarchive-version.ts +0 -108
  416. package/src/commands/version/listversions.spec.ts +0 -138
  417. package/src/commands/version/listversions.ts +0 -45
  418. package/src/common/UserGroupId.spec.ts +0 -115
  419. package/src/common/UserGroupId.ts +0 -137
  420. package/src/constants.spec.ts +0 -111
  421. package/src/constants.ts +0 -228
  422. package/src/index.ts +0 -378
  423. package/src/logger.spec.ts +0 -158
  424. package/src/logger.ts +0 -90
  425. package/src/polyfills/file.polyfill.ts +0 -6
  426. package/src/utils.spec.ts +0 -135
  427. package/src/utils.ts +0 -115
  428. package/src/validator.spec.ts +0 -51
  429. package/src/validator.ts +0 -44
  430. package/tsconfig.json +0 -17
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const chai_1 = require("chai");
16
+ const fs_1 = __importDefault(require("fs"));
17
+ const os_1 = __importDefault(require("os"));
18
+ const path_1 = __importDefault(require("path"));
19
+ const sinon_1 = __importDefault(require("sinon"));
20
+ const environments_1 = require("../../setup-core/environments");
21
+ const token_1 = require("./token");
22
+ function accessTokenExpiringIn(seconds) {
23
+ const part = (value) => Buffer.from(JSON.stringify(value)).toString("base64url");
24
+ return `${part({ alg: "HS256" })}.${part({
25
+ aud: environments_1.auth0ConfigsByEnv.production.audience,
26
+ exp: Math.floor(Date.now() / 1000) + seconds,
27
+ })}.sig`;
28
+ }
29
+ describe("cred token", () => {
30
+ let workDir;
31
+ let credPath;
32
+ beforeEach(() => {
33
+ workDir = fs_1.default.mkdtempSync(path_1.default.join(os_1.default.tmpdir(), "token-"));
34
+ credPath = path_1.default.join(workDir, ".cred");
35
+ // Auth0 unreachable: the refresh cannot happen.
36
+ sinon_1.default.stub(globalThis, "fetch").rejects(Object.assign(new Error("getaddrinfo ENOTFOUND"), {
37
+ cause: { code: "ENOTFOUND" },
38
+ }));
39
+ });
40
+ afterEach(() => {
41
+ sinon_1.default.restore();
42
+ process.exitCode = undefined;
43
+ fs_1.default.rmSync(workDir, { recursive: true, force: true });
44
+ });
45
+ function storeToken(jwtAccessToken) {
46
+ fs_1.default.writeFileSync(credPath, JSON.stringify({
47
+ configPerEnvironment: {
48
+ production: { jwtAccessToken, refreshToken: "r" },
49
+ },
50
+ activeEnvironment: "production",
51
+ }));
52
+ }
53
+ /** Run `printToken` with both streams captured, restored before asserting. */
54
+ function run() {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ const captured = { stdout: "", stderr: "" };
57
+ const capture = (stream) => sinon_1.default
58
+ .stub(process[stream], "write")
59
+ .callsFake((chunk) => {
60
+ captured[stream] += String(chunk);
61
+ return true;
62
+ });
63
+ const stdout = capture("stdout");
64
+ const stderr = capture("stderr");
65
+ try {
66
+ yield (0, token_1.printToken)(credPath);
67
+ }
68
+ finally {
69
+ stdout.restore();
70
+ stderr.restore();
71
+ }
72
+ return captured;
73
+ });
74
+ }
75
+ it("refuses an already-expired token it could not refresh", () => __awaiter(void 0, void 0, void 0, function* () {
76
+ storeToken(accessTokenExpiringIn(-3 * 3600));
77
+ const { stdout, stderr } = yield run();
78
+ (0, chai_1.expect)(stdout).to.equal("");
79
+ (0, chai_1.expect)(stderr).to.contain("Could not reach");
80
+ (0, chai_1.expect)(stderr).to.contain("Token expired");
81
+ (0, chai_1.expect)(process.exitCode).to.equal(1);
82
+ }));
83
+ it("still prints a token that has not expired yet when offline", () => __awaiter(void 0, void 0, void 0, function* () {
84
+ const token = accessTokenExpiringIn(60);
85
+ storeToken(token);
86
+ const { stdout, stderr } = yield run();
87
+ (0, chai_1.expect)(stdout).to.equal(`${token}\n`);
88
+ (0, chai_1.expect)(stderr).to.contain("Could not reach");
89
+ (0, chai_1.expect)(process.exitCode).to.equal(undefined);
90
+ }));
91
+ });
92
+ //# sourceMappingURL=token.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.spec.js","sourceRoot":"","sources":["../../../src/commands/misc/token.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,+BAA8B;AAC9B,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AACxB,kDAA0B;AAC1B,gEAAkE;AAClE,mCAAqC;AAErC,SAAS,qBAAqB,CAAC,OAAe;IAC3C,MAAM,IAAI,GAAG,CAAC,KAAc,EAAE,EAAE,CAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC5D,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,IAAI,IAAI,CAAC;QACtC,GAAG,EAAE,gCAAiB,CAAC,UAAU,CAAC,QAAQ;QAC1C,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,OAAO;KAC9C,CAAC,MAAM,CAAC;AACZ,CAAC;AAED,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IACzB,IAAI,OAAe,CAAC;IACpB,IAAI,QAAgB,CAAC;IAErB,UAAU,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,YAAE,CAAC,WAAW,CAAC,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC3D,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACvC,gDAAgD;QAChD,eAAK,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,OAAO,CACpC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,uBAAuB,CAAC,EAAE;YAC/C,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;SAC9B,CAAC,CACJ,CAAC;IACL,CAAC,CAAC,CAAC;IACH,SAAS,CAAC,GAAG,EAAE;QACZ,eAAK,CAAC,OAAO,EAAE,CAAC;QAChB,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC7B,YAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,SAAS,UAAU,CAAC,cAAsB;QACvC,YAAE,CAAC,aAAa,CACb,QAAQ,EACR,IAAI,CAAC,SAAS,CAAC;YACZ,oBAAoB,EAAE;gBACnB,UAAU,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,EAAE;aACnD;YACD,iBAAiB,EAAE,YAAY;SACjC,CAAC,CACJ,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,SAAe,GAAG;;YACf,MAAM,QAAQ,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,CAAC,MAA2B,EAAE,EAAE,CAC7C,eAAK;iBACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;iBAC9B,SAAS,CAAC,CAAC,KAA0B,EAAE,EAAE;gBACvC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClC,OAAO,IAAI,CAAC;YACf,CAAC,CAAC,CAAC;YACT,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,CAAC;gBACF,MAAM,IAAA,kBAAU,EAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;oBAAS,CAAC;gBACR,MAAM,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,CAAC;YACD,OAAO,QAAQ,CAAC;QACnB,CAAC;KAAA;IAED,EAAE,CAAC,uDAAuD,EAAE,GAAS,EAAE;QACpE,UAAU,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAC7C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,EAAE,CAAC;QACvC,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC7C,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAC3C,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAS,EAAE;QACzE,MAAM,KAAK,GAAG,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACxC,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,EAAE,CAAC;QACvC,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;QACtC,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAC7C,IAAA,aAAM,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAChD,CAAC,CAAA,CAAC,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -24,14 +24,16 @@ function deletePackage(packageServer, packagePath, debug, autoConfirm) {
24
24
  const packageName = packagePath.replace("/", "");
25
25
  if (!clientConfig.doesConfigExists()) {
26
26
  logger_1.logger.error("Please, make sure that you are logged in");
27
+ process.exitCode = 1;
27
28
  return;
28
29
  }
29
30
  if (!environmentName) {
30
31
  logger_1.logger.error("Please, make sure to set an environment");
32
+ process.exitCode = 1;
31
33
  return;
32
34
  }
33
35
  if (!autoConfirm) {
34
- const confirmation = yield (0, utils_1.getConfirmation)(`Are you sure you that want to delete the ${packagePath} package? This action cannot be undone.`);
36
+ const confirmation = yield (0, utils_1.getConfirmation)(`Are you sure you want to delete the ${packagePath} package? This action cannot be undone.`, clientConfig);
35
37
  if (!confirmation) {
36
38
  logger_1.logger.info("Operation cancelled.");
37
39
  return;
@@ -43,7 +45,7 @@ function deletePackage(packageServer, packagePath, debug, autoConfirm) {
43
45
  baseURL: packageServer,
44
46
  headers: clientConfig.getHeaders(),
45
47
  });
46
- logger_1.logger.info("Package deleted successfully");
48
+ console.log((0, utils_1.withTarget)("Package deleted successfully"));
47
49
  }
48
50
  catch (e) {
49
51
  logger_1.logger.error("Failed to delete package");
@@ -1 +1 @@
1
- {"version":3,"file":"deletepackage.js","sourceRoot":"","sources":["../../../src/commands/package/deletepackage.ts"],"names":[],"mappings":";;;;;;;;;;;AAQA,sCAiDC;AAzDD,0CAA+C;AAC/C,8DAA2D;AAC3D,mEAAgE;AAChE,yCAAsC;AACtC,uCAA6D;AAE7D,MAAM,WAAW,GAAG,IAAI,iBAAW,CAAC,IAAI,6BAAa,EAAE,CAAC,CAAC;AAEzD,SAAsB,aAAa,CAChC,aAAqB,EACrB,WAAmB,EACnB,KAAc,EACd,WAAoB;;QAEpB,MAAM,YAAY,GAAG,IAAI,yCAAmB,EAAE,CAAC;QAC/C,MAAM,gBAAgB,GAAG,YAAY,CAAC,eAAe,EAAE,CAAC;QACxD,MAAM,eAAe,GAAG,YAAY,CAAC,UAAU,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEjD,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE,CAAC;YACpC,eAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACzD,OAAO;QACV,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACpB,eAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACxD,OAAO;QACV,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YAChB,MAAM,YAAY,GAAG,MAAM,IAAA,uBAAe,EACvC,4CAA4C,WAAW,yCAAyC,CAClG,CAAC;YACF,IAAI,CAAC,YAAY,EAAE,CAAC;gBACjB,eAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACpC,OAAO;YACV,CAAC;QACJ,CAAC;QAED,eAAM,CAAC,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,CAAC;QAE/C,IAAI,CAAC;YACF,MAAM,WAAW,CAAC,aAAa,CAC5B,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX;gBACG,OAAO,EAAE,aAAa;gBACtB,OAAO,EAAE,YAAY,CAAC,UAAU,EAAE;aACpC,CACH,CAAC;YAEF,eAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACV,eAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YACzC,IAAA,qBAAa,EAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC;IACJ,CAAC;CAAA"}
1
+ {"version":3,"file":"deletepackage.js","sourceRoot":"","sources":["../../../src/commands/package/deletepackage.ts"],"names":[],"mappings":";;;;;;;;;;;AAQA,sCAoDC;AA5DD,0CAA+C;AAC/C,8DAA2D;AAC3D,mEAAgE;AAChE,yCAAsC;AACtC,uCAAyE;AAEzE,MAAM,WAAW,GAAG,IAAI,iBAAW,CAAC,IAAI,6BAAa,EAAE,CAAC,CAAC;AAEzD,SAAsB,aAAa,CAChC,aAAqB,EACrB,WAAmB,EACnB,KAAc,EACd,WAAoB;;QAEpB,MAAM,YAAY,GAAG,IAAI,yCAAmB,EAAE,CAAC;QAC/C,MAAM,gBAAgB,GAAG,YAAY,CAAC,eAAe,EAAE,CAAC;QACxD,MAAM,eAAe,GAAG,YAAY,CAAC,UAAU,EAAE,CAAC;QAClD,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAEjD,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,EAAE,CAAC;YACpC,eAAM,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YACzD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACV,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACpB,eAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;YACxD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACV,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YAChB,MAAM,YAAY,GAAG,MAAM,IAAA,uBAAe,EACvC,uCAAuC,WAAW,yCAAyC,EAC3F,YAAY,CACd,CAAC;YACF,IAAI,CAAC,YAAY,EAAE,CAAC;gBACjB,eAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACpC,OAAO;YACV,CAAC;QACJ,CAAC;QAED,eAAM,CAAC,IAAI,CAAC,mBAAmB,GAAG,WAAW,CAAC,CAAC;QAE/C,IAAI,CAAC;YACF,MAAM,WAAW,CAAC,aAAa,CAC5B,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX;gBACG,OAAO,EAAE,aAAa;gBACtB,OAAO,EAAE,YAAY,CAAC,UAAU,EAAE;aACpC,CACH,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,IAAA,kBAAU,EAAC,8BAA8B,CAAC,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACV,eAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YACzC,IAAA,qBAAa,EAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC;IACJ,CAAC;CAAA"}
@@ -18,6 +18,8 @@ const api_1 = require("../../client/api");
18
18
  const clientconfiguration_1 = require("../../clientconfiguration");
19
19
  const logger_1 = require("../../logger");
20
20
  const deletepackage_1 = require("./deletepackage");
21
+ // A command's closing line is its result, printed on stdout.
22
+ let stdoutStub;
21
23
  describe("delete-package", () => {
22
24
  let sandbox;
23
25
  let deletePackageStub;
@@ -27,6 +29,7 @@ describe("delete-package", () => {
27
29
  sandbox = sinon_1.default.createSandbox();
28
30
  deletePackageStub = sandbox.stub();
29
31
  loggerStub = sandbox.stub(logger_1.logger);
32
+ stdoutStub = sandbox.stub(console, "log");
30
33
  getConfirmationStub = sandbox.stub();
31
34
  sandbox
32
35
  .stub(clientconfiguration_1.ClientConfiguration.prototype, "getOrganization")
@@ -62,7 +65,8 @@ describe("delete-package", () => {
62
65
  baseURL: "http://test-server",
63
66
  headers: { Authorization: "Bearer test-token" },
64
67
  });
65
- (0, chai_1.expect)(loggerStub.info.calledWith(sinon_1.default.match("Package deleted successfully"))).to.be.true;
68
+ (0, chai_1.expect)(stdoutStub.calledWith(sinon_1.default.match("Package deleted successfully")))
69
+ .to.be.true;
66
70
  }));
67
71
  it("should handle package path without leading slash", () => __awaiter(void 0, void 0, void 0, function* () {
68
72
  deletePackageStub.resolves({ status: 200 });
@@ -75,6 +79,7 @@ describe("delete-package", () => {
75
79
  sandbox = sinon_1.default.createSandbox();
76
80
  deletePackageStub = sandbox.stub();
77
81
  loggerStub = sandbox.stub(logger_1.logger);
82
+ stdoutStub = sandbox.stub(console, "log");
78
83
  getConfirmationStub = sandbox.stub();
79
84
  sandbox
80
85
  .stub(clientconfiguration_1.ClientConfiguration.prototype, "doesConfigExists")
@@ -94,6 +99,7 @@ describe("delete-package", () => {
94
99
  sandbox = sinon_1.default.createSandbox();
95
100
  deletePackageStub = sandbox.stub();
96
101
  loggerStub = sandbox.stub(logger_1.logger);
102
+ stdoutStub = sandbox.stub(console, "log");
97
103
  getConfirmationStub = sandbox.stub();
98
104
  sandbox
99
105
  .stub(clientconfiguration_1.ClientConfiguration.prototype, "doesConfigExists")
@@ -1 +1 @@
1
- {"version":3,"file":"deletepackage.spec.js","sourceRoot":"","sources":["../../../src/commands/package/deletepackage.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deletepackage.spec.js","sourceRoot":"","sources":["../../../src/commands/package/deletepackage.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,+BAA8B;AAC9B,kDAA0B;AAC1B,0CAA+C;AAC/C,mEAAgE;AAChE,yCAAsC;AAEtC,mDAAgD;AAEhD,6DAA6D;AAC7D,IAAI,UAA2B,CAAC;AAEhC,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC7B,IAAI,OAA2B,CAAC;IAChC,IAAI,iBAAkC,CAAC;IACvC,IAAI,UAAqD,CAAC;IAC1D,IAAI,mBAAoC,CAAC;IAEzC,UAAU,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,eAAK,CAAC,aAAa,EAAE,CAAC;QAChC,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QACnC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,eAAM,CAAC,CAAC;QAClC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1C,mBAAmB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAErC,OAAO;aACH,IAAI,CAAC,yCAAmB,CAAC,SAAS,EAAE,iBAAiB,CAAC;aACtD,OAAO,CAAC,UAAU,CAAC,CAAC;QACxB,OAAO;aACH,IAAI,CAAC,yCAAmB,CAAC,SAAS,EAAE,YAAY,CAAC;aACjD,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO;aACH,IAAI,CAAC,yCAAmB,CAAC,SAAS,EAAE,kBAAkB,CAAC;aACvD,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO;aACH,IAAI,CAAC,yCAAmB,CAAC,SAAS,EAAE,YAAY,CAAC;aACjD,OAAO,CAAC,EAAE,aAAa,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAEpD,OAAO;aACH,IAAI,CAAC,iBAAW,CAAC,SAAS,EAAE,eAAe,CAAC;aAC5C,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACjC,OAAO;aACH,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;aAC/C,SAAS,CAAC,mBAAmB,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACZ,OAAO,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oCAAoC,EAAE,GAAS,EAAE;QACjD,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5C,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,IAAA,6BAAa,EAAC,oBAAoB,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAExE,IAAA,aAAM,EAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChD,IAAA,aAAM,EAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACjE,IAAA,aAAM,EAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACrE,IAAA,aAAM,EAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;YACzD,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,EAAE,aAAa,EAAE,mBAAmB,EAAE;SACjD,CAAC,CAAC;QACH,IAAA,aAAM,EAAC,UAAU,CAAC,UAAU,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;aACtE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAClB,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAS,EAAE;QAC/D,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5C,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,IAAA,6BAAa,EAAC,oBAAoB,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAEvE,IAAA,aAAM,EAAC,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACxE,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,8BAA8B,EAAE,GAAS,EAAE;QAC3C,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,GAAG,eAAK,CAAC,aAAa,EAAE,CAAC;QAChC,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QACnC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,eAAM,CAAC,CAAC;QAClC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1C,mBAAmB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAErC,OAAO;aACH,IAAI,CAAC,yCAAmB,CAAC,SAAS,EAAE,kBAAkB,CAAC;aACvD,OAAO,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO;aACH,IAAI,CAAC,iBAAW,CAAC,SAAS,EAAE,eAAe,CAAC;aAC5C,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACjC,OAAO;aACH,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;aAC/C,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAEnC,MAAM,IAAA,6BAAa,EAAC,oBAAoB,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAExE,IAAA,aAAM,EAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7C,IAAA,aAAM,EACH,UAAU,CAAC,KAAK,CAAC,UAAU,CACxB,eAAK,CAAC,KAAK,CAAC,0CAA0C,CAAC,CACzD,CACH,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAChB,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,+BAA+B,EAAE,GAAS,EAAE;QAC5C,OAAO,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,GAAG,eAAK,CAAC,aAAa,EAAE,CAAC;QAChC,iBAAiB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QACnC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,eAAM,CAAC,CAAC;QAClC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1C,mBAAmB,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAErC,OAAO;aACH,IAAI,CAAC,yCAAmB,CAAC,SAAS,EAAE,kBAAkB,CAAC;aACvD,OAAO,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,yCAAmB,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACtE,OAAO;aACH,IAAI,CAAC,iBAAW,CAAC,SAAS,EAAE,eAAe,CAAC;aAC5C,SAAS,CAAC,iBAAiB,CAAC,CAAC;QACjC,OAAO;aACH,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,iBAAiB,CAAC;aAC/C,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAEnC,MAAM,IAAA,6BAAa,EAAC,oBAAoB,EAAE,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;QAExE,IAAA,aAAM,EAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7C,IAAA,aAAM,EACH,UAAU,CAAC,KAAK,CAAC,UAAU,CACxB,eAAK,CAAC,KAAK,CAAC,yCAAyC,CAAC,CACxD,CACH,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAChB,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAS,EAAE;QACpE,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC5C,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,IAAA,6BAAa,EAAC,oBAAoB,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAEzE,IAAA,aAAM,EAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClD,IAAA,aAAM,EAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACnD,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAS,EAAE;QACxD,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEpC,MAAM,IAAA,6BAAa,EAAC,oBAAoB,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAEzE,IAAA,aAAM,EAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAClD,IAAA,aAAM,EAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC;QAC7C,IAAA,aAAM,EAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,EAAE;aACtE,EAAE,CAAC,IAAI,CAAC;IACf,CAAC,CAAA,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAS,EAAE;QACvC,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;QACzC,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,IAAA,6BAAa,EAAC,oBAAoB,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAEvE,IAAA,aAAM,EAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;QAChD,IAAA,aAAM,EACH,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,eAAK,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC,CACtE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IAChB,CAAC,CAAA,CAAC,CAAC;AACN,CAAC,CAAC,CAAC"}
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BUILD_END_STATES = void 0;
13
+ exports.readTarget = readTarget;
14
+ exports.getPackage = getPackage;
15
+ exports.getVersion = getVersion;
16
+ const api_1 = require("../../client/api");
17
+ const configuration_1 = require("../../client/configuration");
18
+ const clientconfiguration_1 = require("../../clientconfiguration");
19
+ const logger_1 = require("../../logger");
20
+ const refresh_1 = require("../../setup-core/refresh");
21
+ const utils_1 = require("../../utils");
22
+ const packagesApi = new api_1.PackagesApi(new configuration_1.Configuration());
23
+ const versionsApi = new api_1.VersionsApi(new configuration_1.Configuration());
24
+ /**
25
+ * The organization and environment a read goes to, or undefined after saying
26
+ * why there is none. In a pinned directory the default store already reads
27
+ * the pin (`scopeCommandToDirectory` scopes it at startup), so a read there
28
+ * looks where `cred publish` publishes.
29
+ */
30
+ function readTarget(clientConfig) {
31
+ const organization = clientConfig.getOrganization();
32
+ const environment = clientConfig.getProject();
33
+ if (!clientConfig.doesConfigExists() || !organization) {
34
+ logger_1.logger.error("Please, make sure that you are logged in");
35
+ process.exitCode = 1;
36
+ return undefined;
37
+ }
38
+ if (!environment) {
39
+ logger_1.logger.error("Please, make sure to set an environment");
40
+ process.exitCode = 1;
41
+ return undefined;
42
+ }
43
+ return { organization, environment };
44
+ }
45
+ /** `cred get package <name>`: latest version, index status, auto-promote. */
46
+ function getPackage(controlPlane_1, packageName_1, debug_1) {
47
+ return __awaiter(this, arguments, void 0, function* (controlPlane, packageName, debug, clientConfig = new clientconfiguration_1.ClientConfiguration()) {
48
+ const target = readTarget(clientConfig);
49
+ if (!target)
50
+ return;
51
+ try {
52
+ const response = yield packagesApi.getPackage(target.organization, target.environment, packageName, undefined, { baseURL: controlPlane, headers: clientConfig.getHeaders() });
53
+ console.log((0, utils_1.prettifyJson)(response.data));
54
+ }
55
+ catch (e) {
56
+ logger_1.logger.error(`Failed to get package ${packageName}`);
57
+ (0, utils_1.printOutError)(e, debug);
58
+ process.exitCode = 1;
59
+ }
60
+ });
61
+ }
62
+ /** Where a version's `buildStatus` stops moving. `BUILDING` is the only other. */
63
+ exports.BUILD_END_STATES = ["READY", "FAILED", "UNSUPPORTED"];
64
+ const DEFAULT_WAIT_INTERVAL_MS = 10000;
65
+ /**
66
+ * The least a read gets while waiting. The last read lands on the deadline, and
67
+ * a timeout of 0 means no timeout at all to axios.
68
+ */
69
+ const MIN_READ_TIMEOUT_MS = 5000;
70
+ /**
71
+ * `cred get version <package> <version>`: whether a published version has
72
+ * built (`buildStatus`, `indexingProgress`) and whether it is waiting to
73
+ * become latest (`promoteWhenReady`, `promotedAt`).
74
+ *
75
+ * With `wait`, it reads again until `buildStatus` reaches an end state, then
76
+ * prints that last read. Exit 1 on `FAILED`, or when the timeout passes first.
77
+ * `UNSUPPORTED` exits 0: the spec defines it as a version whose persist
78
+ * sources cannot be materialized in this dialect and serve live instead, so it
79
+ * is servable, just not materialized. The JSON is the data, on stdout, once;
80
+ * progress lines go to stderr, so `cred get version … --wait | jq` works.
81
+ */
82
+ function getVersion(controlPlane_1, packageName_1, versionId_1, debug_1) {
83
+ return __awaiter(this, arguments, void 0, function* (controlPlane, packageName, versionId, debug, clientConfig = new clientconfiguration_1.ClientConfiguration(), wait) {
84
+ var _a, _b, _c;
85
+ const target = readTarget(clientConfig);
86
+ if (!target)
87
+ return;
88
+ const read = (timeoutMs) => versionsApi.getVersion(target.organization, target.environment, packageName, versionId, Object.assign({ baseURL: controlPlane, headers: clientConfig.getHeaders() }, (timeoutMs === undefined ? {} : { timeout: timeoutMs })));
89
+ try {
90
+ if (!wait) {
91
+ console.log((0, utils_1.prettifyJson)((yield read()).data));
92
+ return;
93
+ }
94
+ const now = (_a = wait.now) !== null && _a !== void 0 ? _a : Date.now;
95
+ const sleep = (_b = wait.sleep) !== null && _b !== void 0 ? _b : ((ms) => new Promise((r) => setTimeout(r, ms)));
96
+ const deadline = now() + wait.timeoutMs;
97
+ let reported;
98
+ const remaining = () => Math.max(deadline - now(), 0);
99
+ for (;;) {
100
+ // The preAction hook renewed the token once, and a wait outlasts it:
101
+ // a 30-minute wait that starts with 20 minutes left would poll with
102
+ // an expired token. Renew before every read, as `cred dev` does.
103
+ const session = yield (0, refresh_1.ensureFreshTokens)(clientConfig);
104
+ if (session.status === "logged-out") {
105
+ logger_1.logger.error(session.reason);
106
+ process.exitCode = 1;
107
+ return;
108
+ }
109
+ // A read that hangs must not outlast --timeout.
110
+ const version = (yield read(Math.max(remaining(), MIN_READ_TIMEOUT_MS))).data;
111
+ const status = version.buildStatus;
112
+ if (status &&
113
+ exports.BUILD_END_STATES.includes(status)) {
114
+ console.log((0, utils_1.prettifyJson)(version));
115
+ if (status === "FAILED") {
116
+ logger_1.logger.error(`${packageName} ${versionId} failed to build. The JSON above has its materialization and indexing state.`);
117
+ process.exitCode = 1;
118
+ }
119
+ return;
120
+ }
121
+ if (status !== reported) {
122
+ logger_1.logger.info(`${packageName} ${versionId} is ${status !== null && status !== void 0 ? status : "not reporting a build status yet"}; waiting for READY, FAILED or UNSUPPORTED.`);
123
+ reported = status;
124
+ }
125
+ if (now() >= deadline) {
126
+ console.log((0, utils_1.prettifyJson)(version));
127
+ logger_1.logger.error(`${packageName} ${versionId} was still ${status !== null && status !== void 0 ? status : "without a build status"} when --timeout ran out. Run the same command again to keep waiting.`);
128
+ process.exitCode = 1;
129
+ return;
130
+ }
131
+ // The last pause ends on the deadline, for one read there.
132
+ yield sleep(Math.min((_c = wait.intervalMs) !== null && _c !== void 0 ? _c : DEFAULT_WAIT_INTERVAL_MS, remaining()));
133
+ }
134
+ }
135
+ catch (e) {
136
+ logger_1.logger.error(`Failed to get version ${versionId} of ${packageName}`);
137
+ (0, utils_1.printOutError)(e, debug);
138
+ process.exitCode = 1;
139
+ }
140
+ });
141
+ }
142
+ //# sourceMappingURL=getpackage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getpackage.js","sourceRoot":"","sources":["../../../src/commands/package/getpackage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const chai_1 = require("chai");
16
+ const fs_1 = __importDefault(require("fs"));
17
+ const os_1 = __importDefault(require("os"));
18
+ const path_1 = __importDefault(require("path"));
19
+ const sinon_1 = __importDefault(require("sinon"));
20
+ const api_1 = require("../../client/api");
21
+ const clientconfiguration_1 = require("../../clientconfiguration");
22
+ const logger_1 = require("../../logger");
23
+ const environments_1 = require("../../setup-core/environments");
24
+ const refresh_1 = require("../../setup-core/refresh");
25
+ const utils_1 = require("../../utils");
26
+ const setup_1 = require("../misc/setup");
27
+ const getpackage_1 = require("./getpackage");
28
+ /**
29
+ * A production API access token that expires `seconds` from now. `jti` keeps
30
+ * two tokens minted in the same second apart.
31
+ */
32
+ let minted = 0;
33
+ function tokenExpiringIn(seconds) {
34
+ const part = (value) => Buffer.from(JSON.stringify(value)).toString("base64url");
35
+ return `${part({ alg: "HS256" })}.${part({
36
+ aud: environments_1.auth0ConfigsByEnv.production.audience,
37
+ exp: Math.floor(Date.now() / 1000) + seconds,
38
+ jti: String(++minted),
39
+ })}.signature`;
40
+ }
41
+ // A directory pinned to acme/analytics on staging, with ~/.cred on
42
+ // global-org/global-env on production. `cred publish` there publishes to
43
+ // acme/analytics, so `cred get package` and `cred get version` must read there
44
+ // too, through the same startup scoping every other command gets.
45
+ describe("cred get package and cred get version", () => {
46
+ let sandbox;
47
+ let originalExitCode;
48
+ let home;
49
+ let workDir;
50
+ beforeEach(() => {
51
+ sandbox = sinon_1.default.createSandbox();
52
+ sandbox.stub(logger_1.logger);
53
+ sandbox.stub(console, "log");
54
+ originalExitCode = process.exitCode;
55
+ process.exitCode = 0;
56
+ home = fs_1.default.mkdtempSync(path_1.default.join(os_1.default.tmpdir(), "getpackage-home-"));
57
+ workDir = fs_1.default.mkdtempSync(path_1.default.join(os_1.default.tmpdir(), "getpackage-work-"));
58
+ sandbox.stub(os_1.default, "homedir").returns(home);
59
+ fs_1.default.writeFileSync(path_1.default.join(home, ".cred"), JSON.stringify({
60
+ configPerEnvironment: {
61
+ production: {
62
+ organization: "global-org",
63
+ project: "global-env",
64
+ jwtAccessToken: tokenExpiringIn(3600),
65
+ },
66
+ staging: { organization: "acme", project: "other" },
67
+ },
68
+ activeEnvironment: "production",
69
+ }));
70
+ fs_1.default.mkdirSync(path_1.default.join(workDir, ".credible"));
71
+ fs_1.default.writeFileSync(path_1.default.join(workDir, ".credible", "config.json"), JSON.stringify({
72
+ deployment: "staging",
73
+ organization: "acme",
74
+ environment: "analytics",
75
+ }));
76
+ });
77
+ afterEach(() => {
78
+ clientconfiguration_1.ClientConfiguration.scopeCommand(undefined);
79
+ (0, utils_1.setCommandTarget)(undefined);
80
+ sandbox.restore();
81
+ process.exitCode = originalExitCode;
82
+ fs_1.default.rmSync(home, { recursive: true, force: true });
83
+ fs_1.default.rmSync(workDir, { recursive: true, force: true });
84
+ });
85
+ function loggedOut() {
86
+ const config = new clientconfiguration_1.ClientConfiguration();
87
+ sandbox.stub(config, "doesConfigExists").returns(false);
88
+ return config;
89
+ }
90
+ describe("get package", () => {
91
+ it("reads the pinned organization and environment, not the global ones", () => __awaiter(void 0, void 0, void 0, function* () {
92
+ var _a;
93
+ const read = sandbox
94
+ .stub(api_1.PackagesApi.prototype, "getPackage")
95
+ .resolves({ data: { name: "bars" } });
96
+ (0, setup_1.scopeCommandToDirectory)("get package", workDir, () => undefined);
97
+ yield (0, getpackage_1.getPackage)("http://cp", "bars", false);
98
+ (0, chai_1.expect)(read.firstCall.args.slice(0, 3)).to.eql([
99
+ "acme",
100
+ "analytics",
101
+ "bars",
102
+ ]);
103
+ (0, chai_1.expect)((_a = read.firstCall.args[4]) === null || _a === void 0 ? void 0 : _a.baseURL).to.equal("http://cp");
104
+ (0, chai_1.expect)(process.exitCode).to.equal(0);
105
+ }));
106
+ it("exits 1 without a login, and asks for nothing", () => __awaiter(void 0, void 0, void 0, function* () {
107
+ const read = sandbox.stub(api_1.PackagesApi.prototype, "getPackage");
108
+ yield (0, getpackage_1.getPackage)("http://cp", "bars", false, loggedOut());
109
+ (0, chai_1.expect)(read.called).to.equal(false);
110
+ (0, chai_1.expect)(process.exitCode).to.equal(1);
111
+ }));
112
+ });
113
+ describe("get version", () => {
114
+ it("reads the pinned organization and environment, not the global ones", () => __awaiter(void 0, void 0, void 0, function* () {
115
+ const read = sandbox
116
+ .stub(api_1.VersionsApi.prototype, "getVersion")
117
+ .resolves({ data: { id: "0.0.2" } });
118
+ (0, setup_1.scopeCommandToDirectory)("get version", workDir, () => undefined);
119
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false);
120
+ (0, chai_1.expect)(read.firstCall.args.slice(0, 4)).to.eql([
121
+ "acme",
122
+ "analytics",
123
+ "bars",
124
+ "0.0.2",
125
+ ]);
126
+ (0, chai_1.expect)(process.exitCode).to.equal(0);
127
+ }));
128
+ describe("--wait", () => {
129
+ /** Reads that return these statuses in turn; a fake clock that moves a minute per pause. */
130
+ function polling(statuses) {
131
+ const read = sandbox.stub(api_1.VersionsApi.prototype, "getVersion");
132
+ statuses.forEach((buildStatus, i) => read.onCall(i).resolves({
133
+ data: { id: "0.0.2", buildStatus },
134
+ }));
135
+ let clock = 0;
136
+ const wait = {
137
+ timeoutMs: 5 * 60000,
138
+ now: () => clock,
139
+ sleep: (ms) => __awaiter(this, void 0, void 0, function* () {
140
+ clock += ms;
141
+ }),
142
+ intervalMs: 60000,
143
+ };
144
+ return { read, wait };
145
+ }
146
+ const printed = () => console.log.args.map((a) => JSON.parse(String(a[0])));
147
+ it("reads until READY, prints only that read, and exits 0", () => __awaiter(void 0, void 0, void 0, function* () {
148
+ var _a;
149
+ const { read, wait } = polling(["BUILDING", "BUILDING", "READY"]);
150
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, wait);
151
+ (0, chai_1.expect)(read.callCount).to.equal(3);
152
+ (0, chai_1.expect)(printed()).to.eql([{ id: "0.0.2", buildStatus: "READY" }]);
153
+ (0, chai_1.expect)((_a = process.exitCode) !== null && _a !== void 0 ? _a : 0).to.equal(0);
154
+ }));
155
+ it("exits 1 on FAILED", () => __awaiter(void 0, void 0, void 0, function* () {
156
+ const { wait } = polling(["BUILDING", "FAILED"]);
157
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, wait);
158
+ (0, chai_1.expect)(printed()).to.eql([{ id: "0.0.2", buildStatus: "FAILED" }]);
159
+ (0, chai_1.expect)(process.exitCode).to.equal(1);
160
+ }));
161
+ it("exits 0 on UNSUPPORTED, which serves live", () => __awaiter(void 0, void 0, void 0, function* () {
162
+ var _a;
163
+ const { wait } = polling(["UNSUPPORTED"]);
164
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, wait);
165
+ (0, chai_1.expect)((_a = process.exitCode) !== null && _a !== void 0 ? _a : 0).to.equal(0);
166
+ }));
167
+ it("gives up with exit 1 when the timeout passes, printing the last read", () => __awaiter(void 0, void 0, void 0, function* () {
168
+ const { read, wait } = polling(Array(10).fill("BUILDING"));
169
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, wait);
170
+ // Reads at minutes 0..5; the one at 5 is past the deadline.
171
+ (0, chai_1.expect)(read.callCount).to.equal(6);
172
+ (0, chai_1.expect)(printed()).to.eql([
173
+ { id: "0.0.2", buildStatus: "BUILDING" },
174
+ ]);
175
+ (0, chai_1.expect)(logger_1.logger.error.calledWith(sinon_1.default.match("was still BUILDING when --timeout ran out"))).to.equal(true);
176
+ (0, chai_1.expect)(process.exitCode).to.equal(1);
177
+ }));
178
+ it("bounds each read and the last pause by the time left", () => __awaiter(void 0, void 0, void 0, function* () {
179
+ const { read, wait } = polling(Array(10).fill("BUILDING"));
180
+ const sleeps = [];
181
+ const sleep = wait.sleep;
182
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, Object.assign(Object.assign({}, wait), { timeoutMs: 90000, sleep: (ms) => __awaiter(void 0, void 0, void 0, function* () {
183
+ sleeps.push(ms);
184
+ yield sleep(ms);
185
+ }) }));
186
+ // Reads at 0s, 60s and 90s: the second pause stops at the deadline.
187
+ (0, chai_1.expect)(sleeps).to.eql([60000, 30000]);
188
+ // Each read's timeout is the time left, with a floor for the one on
189
+ // the deadline (0 would mean no timeout).
190
+ (0, chai_1.expect)(read.args.map((a) => a[4].timeout)).to.eql([90000, 30000, 5000]);
191
+ (0, chai_1.expect)(process.exitCode).to.equal(1);
192
+ }));
193
+ it("renews a token that is about to expire before every read", () => __awaiter(void 0, void 0, void 0, function* () {
194
+ var _a;
195
+ // Each renewal hands back a token that is itself near expiry, so
196
+ // only a renewal per read keeps every read on a new token.
197
+ const credPath = path_1.default.join(home, ".cred");
198
+ const cred = JSON.parse(fs_1.default.readFileSync(credPath, "utf8"));
199
+ cred.configPerEnvironment.production.jwtAccessToken =
200
+ tokenExpiringIn(refresh_1.REFRESH_SKEW_SECONDS - 10);
201
+ cred.configPerEnvironment.production.refreshToken = "r";
202
+ fs_1.default.writeFileSync(credPath, JSON.stringify(cred));
203
+ const issued = [1, 2, 3].map(() => tokenExpiringIn(refresh_1.REFRESH_SKEW_SECONDS - 10));
204
+ const auth0 = sandbox.stub(globalThis, "fetch");
205
+ issued.forEach((token, i) => auth0.onCall(i).resolves({
206
+ status: 200,
207
+ json: () => __awaiter(void 0, void 0, void 0, function* () { return ({ access_token: token }); }),
208
+ }));
209
+ const { read, wait } = polling(["BUILDING", "BUILDING", "READY"]);
210
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, wait);
211
+ (0, chai_1.expect)(read.args.map((a) => a[4].headers
212
+ .Authorization)).to.eql(issued.map((token) => `Bearer ${token}`));
213
+ (0, chai_1.expect)((_a = process.exitCode) !== null && _a !== void 0 ? _a : 0).to.equal(0);
214
+ }));
215
+ it("stops with exit 1, before reading, when there is no session to renew", () => __awaiter(void 0, void 0, void 0, function* () {
216
+ const credPath = path_1.default.join(home, ".cred");
217
+ const cred = JSON.parse(fs_1.default.readFileSync(credPath, "utf8"));
218
+ delete cred.configPerEnvironment.production.jwtAccessToken;
219
+ fs_1.default.writeFileSync(credPath, JSON.stringify(cred));
220
+ const { read, wait } = polling(["BUILDING", "READY"]);
221
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, wait);
222
+ (0, chai_1.expect)(read.called).to.equal(false);
223
+ (0, chai_1.expect)(logger_1.logger.error.calledWith(sinon_1.default.match("cred login"))).to.equal(true);
224
+ (0, chai_1.expect)(process.exitCode).to.equal(1);
225
+ }));
226
+ it("says a status once, not once per read", () => __awaiter(void 0, void 0, void 0, function* () {
227
+ const { wait } = polling([
228
+ "BUILDING",
229
+ "BUILDING",
230
+ "BUILDING",
231
+ "READY",
232
+ ]);
233
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, undefined, wait);
234
+ const waiting = logger_1.logger.info.args.filter((a) => String(a[0]).includes("is BUILDING"));
235
+ (0, chai_1.expect)(waiting).to.have.length(1);
236
+ }));
237
+ });
238
+ it("exits 1 without a login, and asks for nothing", () => __awaiter(void 0, void 0, void 0, function* () {
239
+ const read = sandbox.stub(api_1.VersionsApi.prototype, "getVersion");
240
+ yield (0, getpackage_1.getVersion)("http://cp", "bars", "0.0.2", false, loggedOut());
241
+ (0, chai_1.expect)(read.called).to.equal(false);
242
+ (0, chai_1.expect)(process.exitCode).to.equal(1);
243
+ }));
244
+ });
245
+ });
246
+ //# sourceMappingURL=getpackage.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getpackage.spec.js","sourceRoot":"","sources":["../../../src/commands/package/getpackage.spec.ts"],"names":[],"mappings":"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"}