@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
@@ -1,364 +0,0 @@
1
- import crypto from "crypto";
2
- import fs from "fs";
3
- import { jwtDecode } from "jwt-decode";
4
- import kleur from "kleur";
5
- import os from "os";
6
- import {
7
- ALL_ENVIRONMENTS,
8
- ASCII_TITLE,
9
- controlPlanesByEnv,
10
- Environment,
11
- } from "./constants";
12
- import { logger } from "./logger";
13
-
14
- interface ConfigFile {
15
- configPerEnvironment: Partial<
16
- Record<
17
- Environment,
18
- {
19
- organization?: string;
20
- project?: string;
21
- auth?: { username: string; password: string };
22
- vsCodeUser?: {
23
- username: string;
24
- email: string;
25
- };
26
- accessToken?: string;
27
- jwtAccessToken?: string;
28
- refreshToken?: string;
29
- isServiceAccountToken?: boolean;
30
- }
31
- >
32
- >;
33
- activeEnvironment: Environment;
34
- }
35
-
36
- interface JwtPayload {
37
- exp: number;
38
- iat?: number;
39
- sub?: string;
40
- }
41
-
42
- /**
43
- * Thrown when `.cred` exists but cannot be used: either it does not parse as
44
- * JSON or it parses but lacks the required top-level shape. Distinct from fs
45
- * errors (ENOENT, EACCES) so callers that want to recover — `cred login` —
46
- * can target *only* a corrupt-content failure and leave permission/IO errors
47
- * to surface loudly.
48
- */
49
- export class InvalidConfigError extends Error {}
50
-
51
- export class ClientConfiguration {
52
- private configPath = `${os.homedir()}/.cred`;
53
- private config: ConfigFile;
54
-
55
- constructor(customConfigPath?: string) {
56
- if (customConfigPath) {
57
- this.configPath = customConfigPath;
58
- }
59
- }
60
-
61
- public loadConfig(): ConfigFile {
62
- let fileContents: Buffer | undefined;
63
- try {
64
- fileContents = fs.readFileSync(this.configPath);
65
- } catch (error) {
66
- if ((error as NodeJS.ErrnoException)?.code === "ENOENT") {
67
- // First-time setup: create a default config on disk.
68
- this.config = this.defaultConfig();
69
- this.writeConfig();
70
- return this.config;
71
- }
72
- throw error;
73
- }
74
-
75
- try {
76
- this.config = JSON.parse(fileContents.toString());
77
- } catch (error) {
78
- // Non-atomic writes from older binaries, or a manually corrupted file,
79
- // can leave `.cred` unparseable. Fail loud rather than silently
80
- // overwriting — a silent reset erases the access token for every
81
- // subsequent caller on the same machine.
82
- throw new InvalidConfigError(
83
- `Failed to parse ${this.configPath}: ${error}. The file may be corrupt; re-run \`cred login\` to reset.`,
84
- );
85
- }
86
-
87
- if (!this.config.activeEnvironment || !this.config.configPerEnvironment) {
88
- throw new InvalidConfigError(
89
- `Invalid config structure in ${this.configPath}; re-run \`cred login\` to reset.`,
90
- );
91
- }
92
-
93
- for (const env of ALL_ENVIRONMENTS) {
94
- if (!this.config.configPerEnvironment[env]) {
95
- this.config.configPerEnvironment[env] = {};
96
- }
97
- }
98
-
99
- return this.config;
100
- }
101
-
102
- /**
103
- * Ensure `.cred` is usable, recovering from a corrupt file if needed.
104
- *
105
- * `loadConfig` deliberately fails loud on a corrupt/invalid file so a read
106
- * path never silently erases tokens. But `cred login` exists precisely to
107
- * (re)establish config, so it must be able to get past a bad file — that is
108
- * what the "re-run `cred login` to reset" message promises. We make the
109
- * message true here: the bad file is renamed aside (never deleted, so a
110
- * support engineer can still inspect it) and a fresh default is written.
111
- *
112
- * Only an {@link InvalidConfigError} triggers recovery. fs errors such as
113
- * EACCES are real environment problems and are rethrown — resetting would
114
- * just fail to write anyway, and we must not mask a permissions issue as a
115
- * successful reset.
116
- *
117
- * @returns the path the corrupt file was backed up to, or null if the
118
- * existing config was already valid.
119
- */
120
- public recoverIfCorrupt(): string | null {
121
- try {
122
- this.loadConfig();
123
- return null;
124
- } catch (error) {
125
- if (!(error instanceof InvalidConfigError)) {
126
- throw error;
127
- }
128
- const backupPath = `${this.configPath}.corrupt-${crypto
129
- .randomBytes(8)
130
- .toString("hex")}`;
131
- fs.renameSync(this.configPath, backupPath);
132
- logger.warn(
133
- `Existing config at ${this.configPath} was invalid and could not be read. ` +
134
- `Backed it up to ${backupPath} and reset to defaults.`,
135
- );
136
- this.config = this.defaultConfig();
137
- this.writeConfig();
138
- return backupPath;
139
- }
140
- }
141
-
142
- private defaultConfig(): ConfigFile {
143
- const configPerEnvironment: ConfigFile["configPerEnvironment"] = {};
144
- for (const env of ALL_ENVIRONMENTS) {
145
- configPerEnvironment[env] = {};
146
- }
147
- return { configPerEnvironment, activeEnvironment: "production" };
148
- }
149
-
150
- // Atomic: write to a sibling temp file, then rename into place.
151
- // Readers either see the old file or the new file, never a truncated
152
- // zero-byte snapshot (the window that `writeFileSync` exposes between
153
- // open(O_TRUNC) and write).
154
- //
155
- // The temp suffix uses 16 bytes of crypto-random hex so the temp
156
- // path is unguessable — a predictable name (pid + Date.now()) lets a
157
- // co-located attacker pre-create a symlink at that path and trick
158
- // us into clobbering an arbitrary file (CodeQL js/insecure-temporary-file).
159
- // O_EXCL on open further refuses to follow a pre-existing entry.
160
- private writeConfig(): void {
161
- const tmp = `${this.configPath}.${crypto.randomBytes(16).toString("hex")}.tmp`;
162
- const fd = fs.openSync(
163
- tmp,
164
- fs.constants.O_WRONLY | fs.constants.O_CREAT | fs.constants.O_EXCL,
165
- 0o600,
166
- );
167
- try {
168
- fs.writeFileSync(fd, JSON.stringify(this.config));
169
- } finally {
170
- fs.closeSync(fd);
171
- }
172
- fs.renameSync(tmp, this.configPath);
173
- }
174
-
175
- public setOrganization(organizationName: string) {
176
- this.loadConfig();
177
- // TODO: Validate organization exists and user has access.
178
- const environment = this.getEnvironment();
179
- this.config.configPerEnvironment[environment].organization =
180
- organizationName;
181
- this.writeConfig();
182
- }
183
-
184
- public setProject(projectName: string) {
185
- this.loadConfig();
186
- // TODO: Validate project exists and user has access.
187
- const environment = this.getEnvironment();
188
- this.config.configPerEnvironment[environment].project = projectName;
189
- this.writeConfig();
190
- }
191
-
192
- public getOrganization() {
193
- this.loadConfig();
194
- const environment = this.getEnvironment();
195
- return this.config.configPerEnvironment[environment].organization;
196
- }
197
-
198
- public getProject() {
199
- this.loadConfig();
200
- const environment = this.getEnvironment();
201
- return this.config.configPerEnvironment[environment].project;
202
- }
203
-
204
- public setAccessToken(userToken: boolean, accessToken: string) {
205
- this.loadConfig();
206
- const environment = this.getEnvironment();
207
- this.config.configPerEnvironment[environment].isServiceAccountToken =
208
- !userToken;
209
- this.config.configPerEnvironment[environment].accessToken = accessToken;
210
- this.writeConfig();
211
- }
212
-
213
- public getAuthenticationHeader() {
214
- const environment = this.getEnvironment();
215
- const jwt = this.config.configPerEnvironment[environment].accessToken;
216
- const isServiceAccountToken =
217
- this.config.configPerEnvironment[environment].isServiceAccountToken;
218
- const authType = isServiceAccountToken ? "ApiKey" : "Bearer";
219
- return `${authType} ${jwt}`;
220
- }
221
-
222
- getAccessToken() {
223
- this.loadConfig();
224
- const environment = this.getEnvironment();
225
- return this.config.configPerEnvironment[environment].accessToken;
226
- }
227
-
228
- public setJwtAccessToken(jwtAccessToken: string) {
229
- this.loadConfig();
230
- const environment = this.getEnvironment();
231
- this.config.configPerEnvironment[environment].jwtAccessToken =
232
- jwtAccessToken;
233
- this.writeConfig();
234
- }
235
-
236
- public getJwtAccessToken(): string | undefined {
237
- this.loadConfig();
238
- const environment = this.getEnvironment();
239
- return this.config.configPerEnvironment[environment].jwtAccessToken;
240
- }
241
-
242
- public setVSCodeUser(username: string, email: string) {
243
- this.loadConfig();
244
- const environment = this.getEnvironment();
245
- if (!this.config.configPerEnvironment[environment]) {
246
- this.config.configPerEnvironment[environment] = {};
247
- }
248
- this.config.configPerEnvironment[environment].vsCodeUser = {
249
- username,
250
- email,
251
- };
252
- this.writeConfig();
253
- }
254
-
255
- public getVSCodeUser(): { username: string; email: string } | undefined {
256
- this.loadConfig();
257
- const environment = this.getEnvironment();
258
- return this.config.configPerEnvironment[environment].vsCodeUser;
259
- }
260
-
261
- public setRefreshToken(refreshToken: string) {
262
- this.loadConfig();
263
- const environment = this.getEnvironment();
264
- this.config.configPerEnvironment[environment].refreshToken = refreshToken;
265
- this.writeConfig();
266
- }
267
-
268
- public getRefreshToken(): string | undefined {
269
- this.loadConfig();
270
- const environment = this.getEnvironment();
271
- return this.config.configPerEnvironment[environment].refreshToken;
272
- }
273
-
274
- public doesConfigExists() {
275
- this.loadConfig();
276
- const environment = this.getEnvironment();
277
- return Boolean(this.config.configPerEnvironment[environment]);
278
- }
279
-
280
- public getHeaders() {
281
- return {
282
- Authorization: this.getAuthenticationHeader(),
283
- };
284
- }
285
-
286
- public destroyConfig() {
287
- this.loadConfig();
288
- const environment = this.getEnvironment();
289
- this.config.configPerEnvironment[environment] = {};
290
- this.writeConfig();
291
- }
292
-
293
- public setEnvironment(environment: Environment) {
294
- this.loadConfig();
295
- this.config.activeEnvironment = environment;
296
- this.writeConfig();
297
- }
298
-
299
- public getEnvironment() {
300
- this.loadConfig();
301
- return this.config.activeEnvironment || "production";
302
- }
303
-
304
- public isTokenValid(): { valid: boolean; reason?: string } {
305
- this.loadConfig();
306
- const environment = this.getEnvironment();
307
- const accessToken =
308
- this.config.configPerEnvironment[environment]?.accessToken;
309
-
310
- if (!accessToken) {
311
- return { valid: false, reason: "No token found. Please login." };
312
- }
313
-
314
- const isServiceAccountToken =
315
- this.config.configPerEnvironment[environment]?.isServiceAccountToken;
316
- if (isServiceAccountToken) {
317
- return { valid: true };
318
- }
319
-
320
- try {
321
- const decoded = jwtDecode<JwtPayload>(accessToken);
322
- const currentTime = Math.floor(Date.now() / 1000);
323
-
324
- if (decoded.exp && decoded.exp < currentTime) {
325
- return {
326
- valid: false,
327
- reason: "Token expired. Please login again.",
328
- };
329
- }
330
-
331
- return { valid: true };
332
- } catch {
333
- return {
334
- valid: false,
335
- reason: "Invalid token format. Please login again.",
336
- };
337
- }
338
- }
339
-
340
- public printStatus() {
341
- this.loadConfig();
342
- const tokenStatus = this.isTokenValid();
343
- const cell = this.getEnvironment();
344
-
345
- // The cell prints on both branches, and before anything else: an org and an
346
- // environment name alone do not identify a cell (two cells can both hold a
347
- // `demo`), and a stale token is most often a token for the wrong one.
348
- console.log(kleur.green(ASCII_TITLE));
349
- logger.info(`Cell: ${kleur.green(cell)} (${controlPlanesByEnv[cell]})`);
350
-
351
- if (tokenStatus.valid) {
352
- const organization = this.getOrganization();
353
- const project = this.getProject();
354
-
355
- logger.info(`Organization: ${kleur.green(organization || "Not set")}`);
356
- logger.info(`Environment: ${kleur.green(project || "Not set")}`);
357
- } else {
358
- logger.error("Failed to get status");
359
- logger.error(
360
- tokenStatus.reason || "Please, make sure that you are logged in",
361
- );
362
- }
363
- }
364
- }
@@ -1,191 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { Command } from "commander";
3
- import { controlPlanesByEnv, Environment } from "../constants";
4
- import { createConnections } from "./connection/createconnections";
5
- import { addMember } from "./group/addmember";
6
- import { createGroup } from "./group/creategroup";
7
- import { createGroupAccessToken } from "./groupaccesstoken/createToken";
8
- import { createEnvironment } from "./environment/createenvironment";
9
- import { warnProjectDeprecated } from "./legacy";
10
- import { createPermission } from "./permission/createpermission";
11
-
12
- export const registerAddCommands = (cli: Command, environment: Environment) => {
13
- const add = cli
14
- .command("add")
15
- .description("Add a resource")
16
- .argument("<resource>", "The resource to add");
17
-
18
- const addEnvironmentAction = (environmentName: string, options: any) => {
19
- createEnvironment(
20
- controlPlanesByEnv[environment],
21
- environmentName,
22
- options.readmeFile,
23
- options.replication,
24
- options.debug,
25
- options.yes,
26
- );
27
- };
28
-
29
- add.command("environment")
30
- .description("Add an environment.")
31
- .argument("<environmentName>", "The name of the environment to create.")
32
- .option("--debug")
33
- .option("-y, --yes", "Skip confirmation.")
34
- .option(
35
- "--readmeFile <readmeFile>",
36
- "The path to the readme file for the environment.",
37
- )
38
- .option(
39
- "--replication <replicationCount>",
40
- "The replication count (must be at least 1).",
41
- parseInt,
42
- )
43
- .action(addEnvironmentAction);
44
-
45
- add.command("project")
46
- .description("[deprecated] Alias for 'add environment'.")
47
- .argument("<projectName>", "The name of the environment to create.")
48
- .option("--debug")
49
- .option("-y, --yes", "Skip confirmation.")
50
- .option(
51
- "--readmeFile <readmeFile>",
52
- "The path to the readme file for the environment.",
53
- )
54
- .option(
55
- "--replication <replicationCount>",
56
- "The replication count (must be at least 1).",
57
- parseInt,
58
- )
59
- .action((projectName, options) => {
60
- warnProjectDeprecated("add environment");
61
- addEnvironmentAction(projectName, options);
62
- });
63
-
64
- add.command("connection")
65
- .argument(
66
- "<connectionFileName>",
67
- "The path to the file containing the connections to create.",
68
- )
69
- .option(
70
- "--include-tables <includeTables>",
71
- "The list of tables to include. Ex: {dataset/schema}.{table}",
72
- )
73
- .option(
74
- "--exclude-tables <excludeTables>",
75
- "The list of tables to exclude. Ex: {dataset/schema}.{table}",
76
- )
77
- .option(
78
- "--skip-indexing",
79
- "Disable automatic indexing for this connection.",
80
- false,
81
- )
82
- .option("--debug")
83
- .option("-y, --yes", "Skip confirmation.")
84
- .action((connectionFileName, options) => {
85
- createConnections(
86
- controlPlanesByEnv[environment],
87
- connectionFileName,
88
- options.includeTables,
89
- options.excludeTables,
90
- options.skipIndexing,
91
- options.debug,
92
- options.yes,
93
- );
94
- });
95
-
96
- add.command("group")
97
- .description("Add a group.")
98
- .argument("<groupName>", "The name of the group to create")
99
- .option("-d, --description <description>", "Description for the group")
100
- .option("--debug")
101
- .option("-y, --yes", "Skip confirmation.")
102
- .action((groupName, options) => {
103
- createGroup(
104
- controlPlanesByEnv[environment],
105
- groupName,
106
- options.debug || false,
107
- options.description,
108
- );
109
- });
110
-
111
- add.command("member")
112
- .description("Add a member to a group.")
113
- .argument("<groupName>", "The name of the group")
114
- .argument("<memberType>", "The type of member (user or group)")
115
- .argument("<memberName>", "The name of the member")
116
- .argument("<role>", "The role for the member (admin or member)")
117
- .option("--debug")
118
- .action((groupName, memberType, memberName, role, options) => {
119
- addMember(
120
- controlPlanesByEnv[environment],
121
- groupName,
122
- memberType,
123
- memberName,
124
- role,
125
- options.debug || false,
126
- );
127
- });
128
-
129
- add.command("permission")
130
- .description(
131
- "Grant a user or group a permission on the organization, an environment, or a package.",
132
- )
133
- .argument(
134
- "<userGroupId>",
135
- "Who to grant it to [user:{email}|group:{groupName}|user:*]",
136
- )
137
- .argument(
138
- "<role>",
139
- "The role to grant (organization: admin|modeler|member; environment: admin|modeler|viewer; package: viewer)",
140
- )
141
- .option(
142
- "--environment <environmentName>",
143
- "Grant on this environment instead of the organization.",
144
- )
145
- .option(
146
- "--package <packageName>",
147
- "Grant on this package. Uses --environment, or the current environment.",
148
- )
149
- .option(
150
- "--notifyPeople",
151
- "Email the person about the new access. Applies to an environment or a package; an organization grant always notifies a user subject.",
152
- false,
153
- )
154
- .option("--debug")
155
- .option("-y, --yes", "Skip confirmation.")
156
- .action((userGroupId, role, options) => {
157
- createPermission(
158
- controlPlanesByEnv[environment],
159
- userGroupId,
160
- role,
161
- options.debug || false,
162
- {
163
- environment: options.environment,
164
- package: options.package,
165
- notifyPeople: options.notifyPeople === true,
166
- yes: options.yes === true,
167
- },
168
- );
169
- });
170
-
171
- add.command("group-access-token")
172
- .description("Create an access token for a group.")
173
- .argument("<groupName>", "The name of the group")
174
- .argument("<tokenName>", "The name of the token to create")
175
- .option(
176
- "-e, --expires-at <expiresAt>",
177
- "Token expiration date in ISO 8601 format (e.g., 2025-12-31T23:59:59Z). If not provided, token will expire in 99 years.",
178
- )
179
- .option("--debug")
180
- .option("-j, --json-output", "Output only JSON (for use in scripts)")
181
- .action((groupName, tokenName, options) => {
182
- createGroupAccessToken(
183
- controlPlanesByEnv[environment],
184
- groupName,
185
- tokenName,
186
- options.expiresAt,
187
- options.jsonOutput === true,
188
- options.debug || false,
189
- );
190
- });
191
- };