heroku 11.0.0-alpha.11 → 11.0.0-alpha.13

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 (895) hide show
  1. package/README.md +17 -2
  2. package/lib/commands/access/add.d.ts +5 -5
  3. package/lib/commands/access/add.js +13 -13
  4. package/lib/commands/access/index.d.ts +2 -2
  5. package/lib/commands/access/index.js +7 -8
  6. package/lib/commands/access/remove.d.ts +1 -1
  7. package/lib/commands/access/remove.js +5 -5
  8. package/lib/commands/access/update.d.ts +5 -5
  9. package/lib/commands/access/update.js +9 -9
  10. package/lib/commands/accounts/add.d.ts +1 -1
  11. package/lib/commands/accounts/add.js +3 -2
  12. package/lib/commands/accounts/current.js +4 -5
  13. package/lib/commands/accounts/index.js +2 -1
  14. package/lib/commands/accounts/remove.d.ts +1 -1
  15. package/lib/commands/accounts/remove.js +3 -2
  16. package/lib/commands/accounts/set.d.ts +1 -1
  17. package/lib/commands/accounts/set.js +3 -2
  18. package/lib/commands/addons/attach.d.ts +6 -6
  19. package/lib/commands/addons/attach.js +14 -14
  20. package/lib/commands/addons/create.d.ts +9 -10
  21. package/lib/commands/addons/create.js +31 -29
  22. package/lib/commands/addons/destroy.d.ts +9 -9
  23. package/lib/commands/addons/destroy.js +19 -19
  24. package/lib/commands/addons/detach.d.ts +4 -4
  25. package/lib/commands/addons/detach.js +9 -9
  26. package/lib/commands/addons/docs.d.ts +5 -5
  27. package/lib/commands/addons/docs.js +9 -9
  28. package/lib/commands/addons/index.d.ts +5 -5
  29. package/lib/commands/addons/index.js +32 -30
  30. package/lib/commands/addons/info.d.ts +4 -4
  31. package/lib/commands/addons/info.js +18 -14
  32. package/lib/commands/addons/open.d.ts +26 -27
  33. package/lib/commands/addons/open.js +21 -24
  34. package/lib/commands/addons/rename.d.ts +2 -2
  35. package/lib/commands/addons/rename.js +6 -6
  36. package/lib/commands/addons/services.d.ts +1 -1
  37. package/lib/commands/addons/services.js +5 -4
  38. package/lib/commands/addons/upgrade.d.ts +10 -11
  39. package/lib/commands/addons/upgrade.js +74 -70
  40. package/lib/commands/addons/wait.d.ts +5 -5
  41. package/lib/commands/addons/wait.js +10 -10
  42. package/lib/commands/apps/create.d.ts +12 -12
  43. package/lib/commands/apps/create.js +50 -58
  44. package/lib/commands/apps/destroy.d.ts +6 -6
  45. package/lib/commands/apps/destroy.js +10 -10
  46. package/lib/commands/apps/errors.d.ts +3 -3
  47. package/lib/commands/apps/errors.js +24 -12
  48. package/lib/commands/apps/favorites/add.d.ts +1 -1
  49. package/lib/commands/apps/favorites/add.js +4 -4
  50. package/lib/commands/apps/favorites/index.d.ts +1 -1
  51. package/lib/commands/apps/favorites/index.js +4 -4
  52. package/lib/commands/apps/favorites/remove.d.ts +1 -1
  53. package/lib/commands/apps/favorites/remove.js +3 -3
  54. package/lib/commands/apps/index.d.ts +4 -4
  55. package/lib/commands/apps/index.js +21 -21
  56. package/lib/commands/apps/info.d.ts +8 -8
  57. package/lib/commands/apps/info.js +31 -31
  58. package/lib/commands/apps/join.d.ts +2 -2
  59. package/lib/commands/apps/join.js +3 -3
  60. package/lib/commands/apps/leave.d.ts +1 -1
  61. package/lib/commands/apps/leave.js +3 -3
  62. package/lib/commands/apps/lock.d.ts +2 -2
  63. package/lib/commands/apps/lock.js +5 -5
  64. package/lib/commands/apps/open.d.ts +5 -5
  65. package/lib/commands/apps/open.js +11 -9
  66. package/lib/commands/apps/rename.d.ts +6 -6
  67. package/lib/commands/apps/rename.js +13 -13
  68. package/lib/commands/apps/stacks/index.d.ts +2 -2
  69. package/lib/commands/apps/stacks/index.js +5 -6
  70. package/lib/commands/apps/stacks/set.d.ts +4 -4
  71. package/lib/commands/apps/stacks/set.js +9 -9
  72. package/lib/commands/apps/transfer.d.ts +8 -8
  73. package/lib/commands/apps/transfer.js +33 -32
  74. package/lib/commands/apps/unlock.d.ts +2 -2
  75. package/lib/commands/apps/unlock.js +3 -3
  76. package/lib/commands/auth/2fa/disable.d.ts +1 -1
  77. package/lib/commands/auth/2fa/disable.js +3 -2
  78. package/lib/commands/auth/2fa/index.d.ts +1 -1
  79. package/lib/commands/auth/2fa/index.js +4 -4
  80. package/lib/commands/auth/login.d.ts +3 -3
  81. package/lib/commands/auth/login.js +6 -6
  82. package/lib/commands/auth/logout.js +1 -0
  83. package/lib/commands/auth/token.js +4 -2
  84. package/lib/commands/authorizations/create.js +2 -1
  85. package/lib/commands/authorizations/index.js +3 -4
  86. package/lib/commands/authorizations/revoke.d.ts +2 -2
  87. package/lib/commands/authorizations/revoke.js +6 -6
  88. package/lib/commands/autocomplete/create.d.ts +29 -0
  89. package/lib/commands/autocomplete/create.js +223 -0
  90. package/lib/commands/autocomplete/doctor.d.ts +12 -0
  91. package/lib/commands/autocomplete/doctor.js +111 -0
  92. package/lib/commands/autocomplete/index.d.ts +12 -0
  93. package/lib/commands/autocomplete/index.js +65 -0
  94. package/lib/commands/autocomplete/options.d.ts +25 -0
  95. package/lib/commands/autocomplete/options.js +208 -0
  96. package/lib/commands/autocomplete/script.d.ts +10 -0
  97. package/lib/commands/autocomplete/script.js +20 -0
  98. package/lib/commands/buildpacks/index.js +2 -3
  99. package/lib/commands/buildpacks/remove.d.ts +4 -4
  100. package/lib/commands/buildpacks/remove.js +9 -8
  101. package/lib/commands/certs/add.d.ts +8 -8
  102. package/lib/commands/certs/add.js +27 -29
  103. package/lib/commands/certs/auto/disable.d.ts +2 -2
  104. package/lib/commands/certs/auto/disable.js +4 -4
  105. package/lib/commands/certs/auto/enable.d.ts +2 -2
  106. package/lib/commands/certs/auto/enable.js +8 -9
  107. package/lib/commands/certs/auto/index.d.ts +2 -2
  108. package/lib/commands/certs/auto/index.js +16 -17
  109. package/lib/commands/certs/generate.d.ts +2 -3
  110. package/lib/commands/certs/generate.js +1 -2
  111. package/lib/commands/certs/index.d.ts +1 -1
  112. package/lib/commands/certs/index.js +3 -3
  113. package/lib/commands/certs/info.d.ts +4 -4
  114. package/lib/commands/certs/info.js +6 -6
  115. package/lib/commands/certs/remove.d.ts +3 -3
  116. package/lib/commands/certs/remove.js +5 -5
  117. package/lib/commands/certs/update.d.ts +8 -8
  118. package/lib/commands/certs/update.js +19 -19
  119. package/lib/commands/ci/config/get.d.ts +5 -5
  120. package/lib/commands/ci/config/get.js +8 -8
  121. package/lib/commands/ci/config/index.d.ts +2 -2
  122. package/lib/commands/ci/config/index.js +8 -9
  123. package/lib/commands/ci/config/set.d.ts +2 -2
  124. package/lib/commands/ci/config/set.js +10 -10
  125. package/lib/commands/ci/config/unset.d.ts +3 -3
  126. package/lib/commands/ci/config/unset.js +6 -5
  127. package/lib/commands/ci/index.d.ts +2 -2
  128. package/lib/commands/ci/index.js +5 -4
  129. package/lib/commands/ci/info.js +3 -2
  130. package/lib/commands/ci/last.d.ts +1 -1
  131. package/lib/commands/ci/last.js +4 -3
  132. package/lib/commands/ci/migrate-manifest.d.ts +1 -1
  133. package/lib/commands/ci/migrate-manifest.js +4 -4
  134. package/lib/commands/ci/open.d.ts +2 -2
  135. package/lib/commands/ci/open.js +4 -3
  136. package/lib/commands/ci/rerun.d.ts +4 -4
  137. package/lib/commands/ci/rerun.js +9 -8
  138. package/lib/commands/ci/run.d.ts +1 -1
  139. package/lib/commands/ci/run.js +9 -7
  140. package/lib/commands/clients/create.js +4 -3
  141. package/lib/commands/clients/destroy.d.ts +1 -1
  142. package/lib/commands/clients/destroy.js +4 -4
  143. package/lib/commands/clients/index.js +5 -4
  144. package/lib/commands/clients/info.d.ts +3 -3
  145. package/lib/commands/clients/info.js +5 -5
  146. package/lib/commands/clients/rotate.d.ts +3 -3
  147. package/lib/commands/clients/rotate.js +5 -6
  148. package/lib/commands/clients/update.d.ts +3 -3
  149. package/lib/commands/clients/update.js +5 -5
  150. package/lib/commands/config/edit.d.ts +5 -5
  151. package/lib/commands/config/edit.js +21 -22
  152. package/lib/commands/config/get.d.ts +5 -4
  153. package/lib/commands/config/get.js +34 -13
  154. package/lib/commands/config/index.d.ts +1 -1
  155. package/lib/commands/config/index.js +4 -5
  156. package/lib/commands/config/set.d.ts +2 -2
  157. package/lib/commands/config/set.js +17 -18
  158. package/lib/commands/config/unset.d.ts +1 -1
  159. package/lib/commands/config/unset.js +12 -11
  160. package/lib/commands/container/pull.d.ts +4 -4
  161. package/lib/commands/container/pull.js +12 -12
  162. package/lib/commands/container/push.d.ts +6 -6
  163. package/lib/commands/container/push.js +18 -18
  164. package/lib/commands/container/release.d.ts +4 -4
  165. package/lib/commands/container/release.js +16 -15
  166. package/lib/commands/container/rm.d.ts +4 -4
  167. package/lib/commands/container/rm.js +10 -9
  168. package/lib/commands/container/run.d.ts +5 -5
  169. package/lib/commands/container/run.js +14 -14
  170. package/lib/commands/dashboard.d.ts +1 -1
  171. package/lib/commands/dashboard.js +19 -20
  172. package/lib/commands/domains/add.d.ts +5 -5
  173. package/lib/commands/domains/add.js +17 -18
  174. package/lib/commands/domains/clear.js +2 -2
  175. package/lib/commands/domains/index.d.ts +5 -3
  176. package/lib/commands/domains/index.js +99 -69
  177. package/lib/commands/domains/info.js +2 -1
  178. package/lib/commands/domains/remove.d.ts +3 -3
  179. package/lib/commands/domains/remove.js +5 -5
  180. package/lib/commands/domains/update.d.ts +4 -4
  181. package/lib/commands/domains/update.js +8 -8
  182. package/lib/commands/drains/add.d.ts +3 -3
  183. package/lib/commands/drains/add.js +7 -7
  184. package/lib/commands/drains/index.d.ts +1 -1
  185. package/lib/commands/drains/index.js +5 -6
  186. package/lib/commands/drains/remove.d.ts +4 -4
  187. package/lib/commands/drains/remove.js +6 -6
  188. package/lib/commands/features/disable.d.ts +3 -3
  189. package/lib/commands/features/disable.js +8 -8
  190. package/lib/commands/features/enable.d.ts +3 -3
  191. package/lib/commands/features/enable.js +8 -8
  192. package/lib/commands/features/index.js +2 -3
  193. package/lib/commands/features/info.d.ts +4 -4
  194. package/lib/commands/features/info.js +10 -9
  195. package/lib/commands/git/clone.d.ts +2 -2
  196. package/lib/commands/git/clone.js +7 -6
  197. package/lib/commands/git/remote.js +6 -5
  198. package/lib/commands/keys/add.d.ts +3 -4
  199. package/lib/commands/keys/add.js +20 -18
  200. package/lib/commands/keys/index.js +4 -5
  201. package/lib/commands/keys/remove.d.ts +2 -2
  202. package/lib/commands/keys/remove.js +8 -8
  203. package/lib/commands/labs/disable.d.ts +3 -3
  204. package/lib/commands/labs/disable.js +13 -13
  205. package/lib/commands/labs/enable.d.ts +4 -4
  206. package/lib/commands/labs/enable.js +11 -11
  207. package/lib/commands/labs/index.d.ts +2 -2
  208. package/lib/commands/labs/index.js +6 -7
  209. package/lib/commands/labs/info.d.ts +3 -3
  210. package/lib/commands/labs/info.js +8 -7
  211. package/lib/commands/local/index.d.ts +4 -4
  212. package/lib/commands/local/index.js +21 -21
  213. package/lib/commands/local/run.d.ts +1 -1
  214. package/lib/commands/local/run.js +4 -3
  215. package/lib/commands/logs.d.ts +1 -1
  216. package/lib/commands/logs.js +22 -21
  217. package/lib/commands/maintenance/off.d.ts +1 -1
  218. package/lib/commands/maintenance/off.js +2 -2
  219. package/lib/commands/maintenance/on.d.ts +1 -1
  220. package/lib/commands/maintenance/on.js +2 -2
  221. package/lib/commands/members/index.d.ts +3 -3
  222. package/lib/commands/members/index.js +18 -13
  223. package/lib/commands/members/remove.d.ts +1 -1
  224. package/lib/commands/members/remove.js +6 -6
  225. package/lib/commands/notifications/index.d.ts +3 -3
  226. package/lib/commands/notifications/index.js +9 -10
  227. package/lib/commands/orgs/open.js +2 -2
  228. package/lib/commands/pg/backups/cancel.d.ts +13 -0
  229. package/lib/commands/pg/backups/cancel.js +43 -0
  230. package/lib/commands/pg/backups/capture.d.ts +15 -0
  231. package/lib/commands/pg/backups/capture.js +62 -0
  232. package/lib/commands/pg/backups/delete.d.ts +15 -0
  233. package/lib/commands/pg/backups/delete.js +34 -0
  234. package/lib/commands/pg/backups/download.d.ts +14 -0
  235. package/lib/commands/pg/backups/download.js +54 -0
  236. package/lib/commands/pg/backups/index.d.ts +20 -0
  237. package/lib/commands/pg/backups/index.js +121 -0
  238. package/lib/commands/pg/backups/info.d.ts +17 -0
  239. package/lib/commands/pg/backups/info.js +86 -0
  240. package/lib/commands/pg/backups/restore.d.ts +20 -0
  241. package/lib/commands/pg/backups/restore.js +134 -0
  242. package/lib/commands/pg/backups/schedule.d.ts +21 -0
  243. package/lib/commands/pg/backups/schedule.js +69 -0
  244. package/lib/commands/pg/backups/schedules.d.ts +10 -0
  245. package/lib/commands/pg/backups/schedules.js +27 -0
  246. package/lib/commands/pg/backups/unschedule.d.ts +13 -0
  247. package/lib/commands/pg/backups/unschedule.js +42 -0
  248. package/lib/commands/pg/backups/url.d.ts +13 -0
  249. package/lib/commands/pg/backups/url.js +37 -0
  250. package/lib/commands/pg/bloat.d.ts +13 -0
  251. package/lib/{oldCommands → commands}/pg/bloat.js +23 -30
  252. package/lib/commands/pg/blocking.d.ts +13 -0
  253. package/lib/commands/pg/blocking.js +42 -0
  254. package/lib/commands/pg/connection-pooling/attach.d.ts +15 -0
  255. package/lib/commands/pg/connection-pooling/attach.js +38 -0
  256. package/lib/commands/pg/copy.d.ts +18 -0
  257. package/lib/commands/pg/copy.js +83 -0
  258. package/lib/commands/pg/credentials/create.d.ts +15 -0
  259. package/lib/commands/pg/credentials/create.js +39 -0
  260. package/lib/commands/pg/credentials/destroy.d.ts +16 -0
  261. package/lib/commands/pg/credentials/destroy.js +45 -0
  262. package/lib/commands/pg/credentials/repair-default.d.ts +15 -0
  263. package/lib/commands/pg/credentials/repair-default.js +38 -0
  264. package/lib/commands/pg/credentials/rotate.d.ts +17 -0
  265. package/lib/commands/pg/credentials/rotate.js +79 -0
  266. package/lib/commands/pg/credentials/url.d.ts +14 -0
  267. package/lib/commands/pg/credentials/url.js +59 -0
  268. package/lib/commands/pg/credentials.d.ts +16 -0
  269. package/lib/commands/pg/credentials.js +61 -0
  270. package/lib/commands/pg/diagnose.d.ts +18 -0
  271. package/lib/commands/pg/diagnose.js +106 -0
  272. package/lib/commands/pg/info.d.ts +14 -0
  273. package/lib/commands/pg/info.js +91 -0
  274. package/lib/commands/pg/kill.d.ts +15 -0
  275. package/lib/commands/pg/kill.js +32 -0
  276. package/lib/commands/pg/killall.d.ts +13 -0
  277. package/lib/commands/pg/killall.js +24 -0
  278. package/lib/commands/pg/links/create.d.ts +16 -0
  279. package/lib/commands/pg/links/create.js +57 -0
  280. package/lib/commands/pg/links/destroy.d.ts +16 -0
  281. package/lib/commands/pg/links/destroy.js +40 -0
  282. package/lib/commands/pg/links/index.d.ts +13 -0
  283. package/lib/commands/pg/links/index.js +62 -0
  284. package/lib/commands/pg/locks.d.ts +15 -0
  285. package/lib/commands/pg/locks.js +53 -0
  286. package/lib/commands/pg/maintenance/index.d.ts +13 -0
  287. package/lib/commands/pg/maintenance/index.js +27 -0
  288. package/lib/commands/pg/maintenance/run.d.ts +14 -0
  289. package/lib/commands/pg/maintenance/run.js +34 -0
  290. package/lib/commands/pg/maintenance/window.d.ts +15 -0
  291. package/lib/commands/pg/maintenance/window.js +41 -0
  292. package/lib/commands/pg/outliers.d.ts +19 -0
  293. package/lib/commands/pg/outliers.js +100 -0
  294. package/lib/commands/pg/promote.d.ts +14 -0
  295. package/lib/commands/pg/promote.js +167 -0
  296. package/lib/commands/pg/ps.d.ts +14 -0
  297. package/lib/commands/pg/ps.js +52 -0
  298. package/lib/commands/pg/psql.d.ts +16 -0
  299. package/lib/commands/pg/psql.js +47 -0
  300. package/lib/commands/pg/pull.d.ts +18 -0
  301. package/lib/commands/pg/pull.js +87 -0
  302. package/lib/commands/pg/push.d.ts +18 -0
  303. package/lib/commands/pg/push.js +83 -0
  304. package/lib/commands/pg/reset.d.ts +15 -0
  305. package/lib/commands/pg/reset.js +43 -0
  306. package/lib/commands/pg/settings/auto-explain/log-analyze.d.ts +13 -0
  307. package/lib/commands/pg/settings/auto-explain/log-analyze.js +28 -0
  308. package/lib/commands/pg/settings/auto-explain/log-buffers.d.ts +13 -0
  309. package/lib/commands/pg/settings/auto-explain/log-buffers.js +26 -0
  310. package/lib/commands/pg/settings/auto-explain/log-format.d.ts +12 -0
  311. package/lib/commands/pg/settings/auto-explain/log-format.js +22 -0
  312. package/lib/commands/pg/settings/auto-explain/log-min-duration.d.ts +13 -0
  313. package/lib/commands/pg/settings/auto-explain/log-min-duration.js +29 -0
  314. package/lib/commands/pg/settings/auto-explain/log-nested-statements.d.ts +12 -0
  315. package/lib/commands/pg/settings/auto-explain/log-nested-statements.js +20 -0
  316. package/lib/commands/pg/settings/auto-explain/log-triggers.d.ts +13 -0
  317. package/lib/commands/pg/settings/auto-explain/log-triggers.js +26 -0
  318. package/lib/commands/pg/settings/auto-explain/log-verbose.d.ts +17 -0
  319. package/lib/commands/pg/settings/auto-explain/log-verbose.js +29 -0
  320. package/lib/commands/pg/settings/auto-explain.d.ts +18 -0
  321. package/lib/commands/pg/settings/auto-explain.js +34 -0
  322. package/lib/commands/pg/settings/data-connector-details-logs.d.ts +17 -0
  323. package/lib/commands/pg/settings/data-connector-details-logs.js +30 -0
  324. package/lib/commands/pg/settings/index.d.ts +13 -0
  325. package/lib/commands/pg/settings/index.js +33 -0
  326. package/lib/commands/pg/settings/log-connections.d.ts +17 -0
  327. package/lib/commands/pg/settings/log-connections.js +30 -0
  328. package/lib/commands/pg/settings/log-lock-waits.d.ts +13 -0
  329. package/lib/commands/pg/settings/log-lock-waits.js +27 -0
  330. package/lib/commands/pg/settings/log-min-duration-statement.d.ts +12 -0
  331. package/lib/commands/pg/settings/log-min-duration-statement.js +29 -0
  332. package/lib/commands/pg/settings/log-min-error-statement.d.ts +12 -0
  333. package/lib/commands/pg/settings/log-min-error-statement.js +23 -0
  334. package/lib/commands/pg/settings/log-statement.d.ts +12 -0
  335. package/lib/commands/pg/settings/log-statement.js +26 -0
  336. package/lib/commands/pg/settings/track-functions.d.ts +12 -0
  337. package/lib/commands/pg/settings/track-functions.js +25 -0
  338. package/lib/commands/pg/unfollow.d.ts +14 -0
  339. package/lib/commands/pg/unfollow.js +38 -0
  340. package/lib/commands/pg/upgrade/cancel.d.ts +13 -0
  341. package/lib/commands/pg/upgrade/cancel.js +50 -0
  342. package/lib/commands/pg/upgrade/dryrun.d.ts +14 -0
  343. package/lib/commands/pg/upgrade/dryrun.js +50 -0
  344. package/lib/commands/pg/upgrade/index.d.ts +15 -0
  345. package/lib/commands/pg/upgrade/index.js +73 -0
  346. package/lib/commands/pg/upgrade/prepare.d.ts +14 -0
  347. package/lib/commands/pg/upgrade/prepare.js +51 -0
  348. package/lib/commands/pg/upgrade/run.d.ts +16 -0
  349. package/lib/commands/pg/upgrade/run.js +95 -0
  350. package/lib/commands/pg/upgrade/wait.d.ts +16 -0
  351. package/lib/commands/pg/upgrade/wait.js +105 -0
  352. package/lib/commands/pg/vacuum-stats.d.ts +13 -0
  353. package/lib/{oldCommands → commands}/pg/vacuum-stats.js +25 -29
  354. package/lib/commands/pg/wait.d.ts +15 -0
  355. package/lib/commands/pg/wait.js +79 -0
  356. package/lib/commands/pipelines/add.d.ts +3 -3
  357. package/lib/commands/pipelines/add.js +13 -13
  358. package/lib/commands/pipelines/connect.js +2 -1
  359. package/lib/commands/pipelines/create.d.ts +3 -3
  360. package/lib/commands/pipelines/create.js +20 -20
  361. package/lib/commands/pipelines/destroy.d.ts +2 -2
  362. package/lib/commands/pipelines/destroy.js +5 -5
  363. package/lib/commands/pipelines/diff.d.ts +3 -3
  364. package/lib/commands/pipelines/diff.js +12 -13
  365. package/lib/commands/pipelines/index.js +3 -3
  366. package/lib/commands/pipelines/info.d.ts +3 -3
  367. package/lib/commands/pipelines/info.js +10 -9
  368. package/lib/commands/pipelines/open.d.ts +9 -0
  369. package/lib/commands/pipelines/open.js +19 -0
  370. package/lib/commands/pipelines/promote.d.ts +12 -0
  371. package/lib/commands/pipelines/promote.js +209 -0
  372. package/lib/commands/pipelines/remove.d.ts +10 -0
  373. package/lib/commands/pipelines/remove.js +20 -0
  374. package/lib/commands/pipelines/rename.d.ts +10 -0
  375. package/lib/commands/pipelines/rename.js +34 -0
  376. package/lib/commands/pipelines/setup.d.ts +16 -0
  377. package/lib/commands/pipelines/setup.js +88 -0
  378. package/lib/commands/pipelines/transfer.d.ts +13 -0
  379. package/lib/commands/pipelines/transfer.js +60 -0
  380. package/lib/commands/pipelines/update.d.ts +11 -0
  381. package/lib/commands/pipelines/update.js +29 -0
  382. package/lib/commands/prompt.d.ts +1 -1
  383. package/lib/commands/prompt.js +4 -3
  384. package/lib/commands/ps/autoscale/disable.d.ts +10 -0
  385. package/lib/commands/ps/autoscale/disable.js +33 -0
  386. package/lib/commands/ps/autoscale/enable.d.ts +14 -0
  387. package/lib/commands/ps/autoscale/enable.js +84 -0
  388. package/lib/commands/ps/index.d.ts +15 -0
  389. package/lib/commands/ps/index.js +199 -0
  390. package/lib/commands/ps/restart.d.ts +18 -0
  391. package/lib/commands/ps/restart.js +68 -0
  392. package/lib/commands/ps/scale.d.ts +13 -0
  393. package/lib/commands/ps/scale.js +81 -0
  394. package/lib/commands/ps/stop.d.ts +18 -0
  395. package/lib/commands/ps/stop.js +62 -0
  396. package/lib/commands/ps/type.d.ts +12 -0
  397. package/lib/commands/ps/type.js +168 -0
  398. package/lib/commands/ps/wait.d.ts +13 -0
  399. package/lib/commands/ps/wait.js +73 -0
  400. package/lib/commands/regions.d.ts +2 -2
  401. package/lib/commands/regions.js +6 -5
  402. package/lib/commands/releases/index.d.ts +14 -0
  403. package/lib/commands/releases/index.js +155 -0
  404. package/lib/commands/releases/info.d.ts +15 -0
  405. package/lib/commands/releases/info.js +75 -0
  406. package/lib/commands/releases/output.d.ts +13 -0
  407. package/lib/commands/releases/output.js +33 -0
  408. package/lib/commands/releases/retry.d.ts +11 -0
  409. package/lib/commands/releases/retry.js +46 -0
  410. package/lib/commands/releases/rollback.d.ts +14 -0
  411. package/lib/commands/releases/rollback.js +54 -0
  412. package/lib/commands/repl.d.ts +1 -1
  413. package/lib/commands/repl.js +3 -2
  414. package/lib/commands/reviewapps/disable.d.ts +3 -3
  415. package/lib/commands/reviewapps/disable.js +11 -10
  416. package/lib/commands/reviewapps/enable.d.ts +2 -2
  417. package/lib/commands/reviewapps/enable.js +9 -8
  418. package/lib/commands/run/detached.d.ts +16 -0
  419. package/lib/commands/run/detached.js +54 -0
  420. package/lib/commands/run/index.d.ts +19 -0
  421. package/lib/commands/run/index.js +69 -0
  422. package/lib/commands/run/inside.d.ts +18 -0
  423. package/lib/commands/run/inside.js +77 -0
  424. package/lib/commands/sessions/destroy.d.ts +1 -1
  425. package/lib/commands/sessions/destroy.js +4 -4
  426. package/lib/commands/sessions/index.js +2 -3
  427. package/lib/commands/spaces/create.d.ts +23 -0
  428. package/lib/commands/spaces/create.js +87 -0
  429. package/lib/commands/spaces/destroy.d.ts +14 -0
  430. package/lib/commands/spaces/destroy.js +61 -0
  431. package/lib/commands/spaces/drains/get.d.ts +11 -0
  432. package/lib/commands/spaces/drains/get.js +23 -0
  433. package/lib/commands/spaces/drains/set.d.ts +13 -0
  434. package/lib/commands/spaces/drains/set.js +25 -0
  435. package/lib/commands/spaces/hosts.d.ts +14 -0
  436. package/lib/commands/spaces/hosts.js +35 -0
  437. package/lib/commands/spaces/index.d.ts +16 -0
  438. package/lib/commands/spaces/index.js +65 -0
  439. package/lib/commands/spaces/info.d.ts +14 -0
  440. package/lib/commands/spaces/info.js +48 -0
  441. package/lib/commands/spaces/peerings/accept.d.ts +15 -0
  442. package/lib/commands/spaces/peerings/accept.js +33 -0
  443. package/lib/commands/spaces/peerings/destroy.d.ts +15 -0
  444. package/lib/commands/spaces/peerings/destroy.js +43 -0
  445. package/lib/commands/spaces/peerings/index.d.ts +13 -0
  446. package/lib/commands/spaces/peerings/index.js +31 -0
  447. package/lib/commands/spaces/peerings/info.d.ts +15 -0
  448. package/lib/{oldCommands → commands}/spaces/peerings/info.js +32 -40
  449. package/lib/commands/spaces/ps.d.ts +15 -0
  450. package/lib/commands/spaces/ps.js +77 -0
  451. package/lib/commands/spaces/rename.d.ts +11 -0
  452. package/lib/commands/spaces/rename.js +24 -0
  453. package/lib/commands/spaces/topology.d.ts +18 -0
  454. package/lib/commands/spaces/topology.js +87 -0
  455. package/lib/commands/spaces/transfer.d.ts +11 -0
  456. package/lib/commands/spaces/transfer.js +33 -0
  457. package/lib/commands/spaces/trusted-ips/add.d.ts +16 -0
  458. package/lib/commands/spaces/trusted-ips/add.js +49 -0
  459. package/lib/commands/spaces/trusted-ips/index.d.ts +15 -0
  460. package/lib/commands/spaces/trusted-ips/index.js +59 -0
  461. package/lib/commands/spaces/trusted-ips/remove.d.ts +15 -0
  462. package/lib/commands/spaces/trusted-ips/remove.js +51 -0
  463. package/lib/commands/spaces/vpn/config.d.ts +14 -0
  464. package/lib/commands/spaces/vpn/config.js +53 -0
  465. package/lib/commands/spaces/vpn/connect.d.ts +15 -0
  466. package/lib/commands/spaces/vpn/connect.js +46 -0
  467. package/lib/commands/spaces/vpn/connections.d.ts +17 -0
  468. package/lib/commands/spaces/vpn/connections.js +55 -0
  469. package/lib/commands/spaces/vpn/destroy.d.ts +14 -0
  470. package/lib/commands/spaces/vpn/destroy.js +36 -0
  471. package/lib/commands/spaces/vpn/info.d.ts +16 -0
  472. package/lib/commands/spaces/vpn/info.js +85 -0
  473. package/lib/commands/spaces/vpn/update.d.ts +14 -0
  474. package/lib/commands/spaces/vpn/update.js +36 -0
  475. package/lib/commands/spaces/vpn/wait.d.ts +16 -0
  476. package/lib/commands/spaces/vpn/wait.js +69 -0
  477. package/lib/commands/spaces/wait.d.ts +17 -0
  478. package/lib/commands/spaces/wait.js +87 -0
  479. package/lib/commands/status.js +14 -13
  480. package/lib/commands/teams/index.d.ts +1 -1
  481. package/lib/commands/teams/index.js +4 -5
  482. package/lib/commands/telemetry/add.d.ts +6 -5
  483. package/lib/commands/telemetry/add.js +43 -18
  484. package/lib/commands/telemetry/index.d.ts +4 -4
  485. package/lib/commands/telemetry/index.js +19 -17
  486. package/lib/commands/telemetry/info.d.ts +2 -2
  487. package/lib/commands/telemetry/info.js +5 -4
  488. package/lib/commands/telemetry/update.d.ts +3 -3
  489. package/lib/commands/telemetry/update.js +8 -9
  490. package/lib/commands/usage/addons.d.ts +2 -2
  491. package/lib/commands/usage/addons.js +17 -18
  492. package/lib/commands/webhooks/add.d.ts +16 -0
  493. package/lib/commands/webhooks/add.js +43 -0
  494. package/lib/commands/webhooks/deliveries/index.d.ts +12 -0
  495. package/lib/commands/webhooks/deliveries/index.js +75 -0
  496. package/lib/commands/webhooks/deliveries/info.d.ts +14 -0
  497. package/lib/commands/webhooks/deliveries/info.js +40 -0
  498. package/lib/commands/webhooks/index.d.ts +11 -0
  499. package/lib/commands/webhooks/index.js +42 -0
  500. package/lib/commands/webhooks/info.d.ts +14 -0
  501. package/lib/commands/webhooks/info.js +29 -0
  502. package/lib/commands/webhooks/remove.d.ts +14 -0
  503. package/lib/commands/webhooks/remove.js +24 -0
  504. package/lib/commands/webhooks/update.d.ts +19 -0
  505. package/lib/commands/webhooks/update.js +36 -0
  506. package/lib/global_telemetry.d.ts +2 -2
  507. package/lib/global_telemetry.js +34 -36
  508. package/lib/lib/addons/addons_wait.d.ts +1 -1
  509. package/lib/lib/addons/addons_wait.js +2 -2
  510. package/lib/lib/addons/create_addon.d.ts +5 -3
  511. package/lib/lib/addons/create_addon.js +12 -9
  512. package/lib/lib/addons/destroy_addon.js +17 -9
  513. package/lib/lib/addons/resolve.d.ts +10 -11
  514. package/lib/lib/addons/resolve.js +19 -18
  515. package/lib/lib/addons/util.d.ts +2 -2
  516. package/lib/lib/addons/util.js +22 -16
  517. package/lib/lib/api.d.ts +1 -1
  518. package/lib/lib/api.js +19 -23
  519. package/lib/lib/apps/app-transfer.d.ts +3 -3
  520. package/lib/lib/apps/app-transfer.js +11 -11
  521. package/lib/lib/autocomplete/base.d.ts +11 -1
  522. package/lib/lib/autocomplete/base.js +33 -49
  523. package/lib/lib/autocomplete/cache.js +9 -7
  524. package/lib/lib/autocomplete/completions.d.ts +41 -1
  525. package/lib/lib/autocomplete/completions.js +258 -290
  526. package/lib/lib/buildpacks/buildpacks.d.ts +11 -11
  527. package/lib/lib/buildpacks/buildpacks.js +71 -71
  528. package/lib/lib/certs/certificate_details.js +3 -4
  529. package/lib/lib/certs/flags.d.ts +2 -2
  530. package/lib/lib/certs/flags.js +5 -8
  531. package/lib/lib/certs/get_cert_and_key.js +2 -2
  532. package/lib/lib/ci/git.d.ts +12 -2
  533. package/lib/lib/ci/git.js +20 -6
  534. package/lib/lib/ci/pipelines.d.ts +5 -5
  535. package/lib/lib/ci/pipelines.js +17 -17
  536. package/lib/lib/ci/source.d.ts +8 -0
  537. package/lib/lib/ci/source.js +22 -10
  538. package/lib/lib/ci/test-run.js +18 -15
  539. package/lib/lib/config/quote.js +4 -4
  540. package/lib/lib/config/util.d.ts +3 -0
  541. package/lib/lib/config/util.js +5 -0
  542. package/lib/lib/confirmCommand.js +6 -7
  543. package/lib/lib/container/docker_helper.d.ts +12 -12
  544. package/lib/lib/container/docker_helper.js +71 -74
  545. package/lib/lib/container/helpers.js +2 -2
  546. package/lib/lib/container/streamer.js +4 -4
  547. package/lib/lib/data/baseCommand.d.ts +4 -0
  548. package/lib/lib/data/baseCommand.js +15 -0
  549. package/lib/lib/data/createPool.d.ts +4 -0
  550. package/lib/lib/data/createPool.js +6 -0
  551. package/lib/lib/data/credentialUtils.d.ts +3 -0
  552. package/lib/lib/data/credentialUtils.js +23 -0
  553. package/lib/lib/data/displayQuota.d.ts +19 -0
  554. package/lib/lib/data/displayQuota.js +59 -0
  555. package/lib/lib/data/parseProvisionOpts.d.ts +15 -0
  556. package/lib/lib/data/parseProvisionOpts.js +31 -0
  557. package/lib/lib/data/types.d.ts +181 -0
  558. package/lib/lib/data/types.js +3 -0
  559. package/lib/lib/data-scrubber/patterns.d.ts +4 -0
  560. package/lib/lib/data-scrubber/patterns.js +13 -0
  561. package/lib/lib/data-scrubber/presets.d.ts +64 -0
  562. package/lib/lib/data-scrubber/presets.js +112 -0
  563. package/lib/lib/data-scrubber/scrubber.d.ts +131 -0
  564. package/lib/lib/data-scrubber/scrubber.js +256 -0
  565. package/lib/lib/data-scrubber/types.d.ts +169 -0
  566. package/lib/lib/domains/domains.js +10 -10
  567. package/lib/lib/domains/wait-for-domain.js +2 -3
  568. package/lib/lib/local/env-file-validator.js +2 -2
  569. package/lib/lib/local/fork-foreman.js +3 -2
  570. package/lib/lib/members/util.js +7 -7
  571. package/lib/lib/orgs/utils.js +2 -3
  572. package/lib/lib/pg/backups.d.ts +17 -1
  573. package/lib/lib/pg/backups.js +132 -156
  574. package/lib/lib/pg/download.js +7 -7
  575. package/lib/lib/pg/fetcher.d.ts +3 -1
  576. package/lib/lib/pg/fetcher.js +3 -162
  577. package/lib/lib/pg/psql.d.ts +17 -1
  578. package/lib/lib/pg/psql.js +59 -269
  579. package/lib/lib/pg/push_pull.d.ts +12 -0
  580. package/lib/lib/pg/push_pull.js +97 -119
  581. package/lib/lib/pg/setter.d.ts +16 -1
  582. package/lib/lib/pg/setter.js +61 -73
  583. package/lib/lib/pg/types.d.ts +10 -33
  584. package/lib/lib/pg/util.d.ts +8 -1
  585. package/lib/lib/pg/util.js +102 -211
  586. package/lib/lib/pipelines/disambiguate.js +9 -11
  587. package/lib/lib/pipelines/ownership.d.ts +1 -1
  588. package/lib/lib/pipelines/ownership.js +6 -12
  589. package/lib/lib/pipelines/render-pipeline.d.ts +2 -2
  590. package/lib/lib/pipelines/render-pipeline.js +10 -9
  591. package/lib/lib/pipelines/setup/create-apps.js +7 -9
  592. package/lib/lib/pipelines/setup/get-ci-settings.js +2 -2
  593. package/lib/lib/pipelines/setup/get-github-token.js +1 -3
  594. package/lib/lib/pipelines/setup/get-name-and-repo.js +27 -22
  595. package/lib/lib/pipelines/setup/get-settings.js +12 -12
  596. package/lib/lib/pipelines/setup/poll-app-setups.js +3 -5
  597. package/lib/lib/pipelines/setup/setup-pipeline.js +1 -3
  598. package/lib/lib/pipelines/setup/validate.d.ts +1 -1
  599. package/lib/lib/pipelines/setup/validate.js +2 -2
  600. package/lib/lib/pipelines/stages.d.ts +2 -2
  601. package/lib/lib/pipelines/stages.js +4 -4
  602. package/lib/lib/redis/api.d.ts +22 -22
  603. package/lib/lib/redis/api.js +62 -67
  604. package/lib/lib/releases/output.js +1 -1
  605. package/lib/lib/releases/status_helper.d.ts +1 -1
  606. package/lib/lib/releases/status_helper.js +16 -8
  607. package/lib/lib/run/colorize.js +73 -40
  608. package/lib/lib/run/dyno.d.ts +22 -30
  609. package/lib/lib/run/dyno.js +184 -180
  610. package/lib/lib/run/helpers.d.ts +25 -0
  611. package/lib/lib/run/helpers.js +119 -3
  612. package/lib/lib/run/log-displayer.d.ts +3 -3
  613. package/lib/lib/run/log-displayer.js +21 -21
  614. package/lib/lib/spaces/format.js +36 -23
  615. package/lib/lib/spaces/hosts.d.ts +9 -1
  616. package/lib/lib/spaces/hosts.js +28 -41
  617. package/lib/lib/spaces/peering.d.ts +4 -1
  618. package/lib/lib/spaces/peering.js +45 -52
  619. package/lib/lib/spaces/spaces.d.ts +6 -1
  620. package/lib/lib/spaces/spaces.js +30 -39
  621. package/lib/lib/spaces/vpn-connections.js +16 -16
  622. package/lib/lib/telemetry/util.d.ts +1 -1
  623. package/lib/lib/telemetry/util.js +3 -3
  624. package/lib/lib/types/completion.d.ts +15 -0
  625. package/lib/lib/utils/multisort.d.ts +4 -7
  626. package/lib/lib/utils/multisort.js +8 -32
  627. package/lib/lib/utils/packageParser.js +2 -2
  628. package/lib/lib/utils/uuid-validate.js +1 -3
  629. package/lib/lib/webhooks/base.d.ts +2 -2
  630. package/lib/lib/webhooks/base.js +3 -3
  631. package/lib/nls-data.d.ts +10 -0
  632. package/lib/nls-data.js +10 -0
  633. package/lib/nls.d.ts +1 -1
  634. package/lib/nls.js +1 -1
  635. package/npm-shrinkwrap.json +17653 -18259
  636. package/oclif.manifest.json +9918 -3293
  637. package/package.json +26 -237
  638. package/lib/lib/pg/bastion.js +0 -137
  639. package/lib/lib/pg/config.d.ts +0 -2
  640. package/lib/lib/pg/config.js +0 -9
  641. package/lib/lib/pg/host.d.ts +0 -1
  642. package/lib/lib/pg/host.js +0 -3
  643. package/lib/lib/spaces/outbound-rules.js +0 -85
  644. package/lib/oldCommands/autocomplete/create.d.ts +0 -1
  645. package/lib/oldCommands/autocomplete/create.js +0 -254
  646. package/lib/oldCommands/autocomplete/doctor.d.ts +0 -1
  647. package/lib/oldCommands/autocomplete/doctor.js +0 -110
  648. package/lib/oldCommands/autocomplete/index.d.ts +0 -1
  649. package/lib/oldCommands/autocomplete/index.js +0 -80
  650. package/lib/oldCommands/autocomplete/options.d.ts +0 -1
  651. package/lib/oldCommands/autocomplete/options.js +0 -240
  652. package/lib/oldCommands/autocomplete/script.d.ts +0 -1
  653. package/lib/oldCommands/autocomplete/script.js +0 -35
  654. package/lib/oldCommands/pg/backups/cancel.d.ts +0 -1
  655. package/lib/oldCommands/pg/backups/cancel.js +0 -56
  656. package/lib/oldCommands/pg/backups/capture.d.ts +0 -1
  657. package/lib/oldCommands/pg/backups/capture.js +0 -77
  658. package/lib/oldCommands/pg/backups/delete.d.ts +0 -1
  659. package/lib/oldCommands/pg/backups/delete.js +0 -45
  660. package/lib/oldCommands/pg/backups/download.d.ts +0 -1
  661. package/lib/oldCommands/pg/backups/download.js +0 -64
  662. package/lib/oldCommands/pg/backups/index.d.ts +0 -1
  663. package/lib/oldCommands/pg/backups/index.js +0 -141
  664. package/lib/oldCommands/pg/backups/info.d.ts +0 -1
  665. package/lib/oldCommands/pg/backups/info.js +0 -102
  666. package/lib/oldCommands/pg/backups/restore.d.ts +0 -1
  667. package/lib/oldCommands/pg/backups/restore.js +0 -150
  668. package/lib/oldCommands/pg/backups/schedule.d.ts +0 -1
  669. package/lib/oldCommands/pg/backups/schedule.js +0 -107
  670. package/lib/oldCommands/pg/backups/schedules.d.ts +0 -1
  671. package/lib/oldCommands/pg/backups/schedules.js +0 -34
  672. package/lib/oldCommands/pg/backups/unschedule.d.ts +0 -1
  673. package/lib/oldCommands/pg/backups/unschedule.js +0 -60
  674. package/lib/oldCommands/pg/backups/url.d.ts +0 -1
  675. package/lib/oldCommands/pg/backups/url.js +0 -46
  676. package/lib/oldCommands/pg/bloat.d.ts +0 -1
  677. package/lib/oldCommands/pg/blocking.d.ts +0 -1
  678. package/lib/oldCommands/pg/blocking.js +0 -48
  679. package/lib/oldCommands/pg/connection-pooling/attach.d.ts +0 -1
  680. package/lib/oldCommands/pg/connection-pooling/attach.js +0 -53
  681. package/lib/oldCommands/pg/copy.d.ts +0 -1
  682. package/lib/oldCommands/pg/copy.js +0 -104
  683. package/lib/oldCommands/pg/credentials/create.d.ts +0 -1
  684. package/lib/oldCommands/pg/credentials/create.js +0 -47
  685. package/lib/oldCommands/pg/credentials/destroy.d.ts +0 -1
  686. package/lib/oldCommands/pg/credentials/destroy.js +0 -56
  687. package/lib/oldCommands/pg/credentials/repair-default.d.ts +0 -1
  688. package/lib/oldCommands/pg/credentials/repair-default.js +0 -43
  689. package/lib/oldCommands/pg/credentials/rotate.d.ts +0 -1
  690. package/lib/oldCommands/pg/credentials/rotate.js +0 -97
  691. package/lib/oldCommands/pg/credentials/url.d.ts +0 -1
  692. package/lib/oldCommands/pg/credentials/url.js +0 -75
  693. package/lib/oldCommands/pg/credentials.d.ts +0 -1
  694. package/lib/oldCommands/pg/credentials.js +0 -77
  695. package/lib/oldCommands/pg/diagnose.d.ts +0 -1
  696. package/lib/oldCommands/pg/diagnose.js +0 -136
  697. package/lib/oldCommands/pg/info.d.ts +0 -1
  698. package/lib/oldCommands/pg/info.js +0 -110
  699. package/lib/oldCommands/pg/kill.d.ts +0 -1
  700. package/lib/oldCommands/pg/kill.js +0 -37
  701. package/lib/oldCommands/pg/killall.d.ts +0 -1
  702. package/lib/oldCommands/pg/killall.js +0 -31
  703. package/lib/oldCommands/pg/links/create.d.ts +0 -1
  704. package/lib/oldCommands/pg/links/create.js +0 -70
  705. package/lib/oldCommands/pg/links/destroy.d.ts +0 -1
  706. package/lib/oldCommands/pg/links/destroy.js +0 -51
  707. package/lib/oldCommands/pg/links/index.d.ts +0 -1
  708. package/lib/oldCommands/pg/links/index.js +0 -64
  709. package/lib/oldCommands/pg/locks.d.ts +0 -1
  710. package/lib/oldCommands/pg/locks.js +0 -60
  711. package/lib/oldCommands/pg/maintenance/index.d.ts +0 -1
  712. package/lib/oldCommands/pg/maintenance/index.js +0 -34
  713. package/lib/oldCommands/pg/maintenance/run.d.ts +0 -1
  714. package/lib/oldCommands/pg/maintenance/run.js +0 -44
  715. package/lib/oldCommands/pg/maintenance/window.d.ts +0 -1
  716. package/lib/oldCommands/pg/maintenance/window.js +0 -52
  717. package/lib/oldCommands/pg/outliers.d.ts +0 -1
  718. package/lib/oldCommands/pg/outliers.js +0 -110
  719. package/lib/oldCommands/pg/promote.d.ts +0 -1
  720. package/lib/oldCommands/pg/promote.js +0 -183
  721. package/lib/oldCommands/pg/ps.d.ts +0 -1
  722. package/lib/oldCommands/pg/ps.js +0 -56
  723. package/lib/oldCommands/pg/psql.d.ts +0 -1
  724. package/lib/oldCommands/pg/psql.js +0 -53
  725. package/lib/oldCommands/pg/pull.d.ts +0 -1
  726. package/lib/oldCommands/pg/pull.js +0 -114
  727. package/lib/oldCommands/pg/push.d.ts +0 -1
  728. package/lib/oldCommands/pg/push.js +0 -111
  729. package/lib/oldCommands/pg/reset.d.ts +0 -1
  730. package/lib/oldCommands/pg/reset.js +0 -49
  731. package/lib/oldCommands/pg/settings/auto-explain/log-analyze.d.ts +0 -1
  732. package/lib/oldCommands/pg/settings/auto-explain/log-analyze.js +0 -37
  733. package/lib/oldCommands/pg/settings/auto-explain/log-buffers.d.ts +0 -1
  734. package/lib/oldCommands/pg/settings/auto-explain/log-buffers.js +0 -35
  735. package/lib/oldCommands/pg/settings/auto-explain/log-format.d.ts +0 -1
  736. package/lib/oldCommands/pg/settings/auto-explain/log-format.js +0 -30
  737. package/lib/oldCommands/pg/settings/auto-explain/log-min-duration.d.ts +0 -1
  738. package/lib/oldCommands/pg/settings/auto-explain/log-min-duration.js +0 -39
  739. package/lib/oldCommands/pg/settings/auto-explain/log-nested-statements.d.ts +0 -1
  740. package/lib/oldCommands/pg/settings/auto-explain/log-nested-statements.js +0 -30
  741. package/lib/oldCommands/pg/settings/auto-explain/log-triggers.d.ts +0 -1
  742. package/lib/oldCommands/pg/settings/auto-explain/log-triggers.js +0 -35
  743. package/lib/oldCommands/pg/settings/auto-explain/log-verbose.d.ts +0 -1
  744. package/lib/oldCommands/pg/settings/auto-explain/log-verbose.js +0 -40
  745. package/lib/oldCommands/pg/settings/auto-explain.d.ts +0 -1
  746. package/lib/oldCommands/pg/settings/auto-explain.js +0 -45
  747. package/lib/oldCommands/pg/settings/data-connector-details-logs.d.ts +0 -1
  748. package/lib/oldCommands/pg/settings/data-connector-details-logs.js +0 -40
  749. package/lib/oldCommands/pg/settings/index.d.ts +0 -1
  750. package/lib/oldCommands/pg/settings/index.js +0 -41
  751. package/lib/oldCommands/pg/settings/log-connections.d.ts +0 -1
  752. package/lib/oldCommands/pg/settings/log-connections.js +0 -40
  753. package/lib/oldCommands/pg/settings/log-lock-waits.d.ts +0 -1
  754. package/lib/oldCommands/pg/settings/log-lock-waits.js +0 -36
  755. package/lib/oldCommands/pg/settings/log-min-duration-statement.d.ts +0 -1
  756. package/lib/oldCommands/pg/settings/log-min-duration-statement.js +0 -39
  757. package/lib/oldCommands/pg/settings/log-min-error-statement.d.ts +0 -1
  758. package/lib/oldCommands/pg/settings/log-min-error-statement.js +0 -31
  759. package/lib/oldCommands/pg/settings/log-statement.d.ts +0 -1
  760. package/lib/oldCommands/pg/settings/log-statement.js +0 -33
  761. package/lib/oldCommands/pg/settings/track-functions.d.ts +0 -1
  762. package/lib/oldCommands/pg/settings/track-functions.js +0 -33
  763. package/lib/oldCommands/pg/unfollow.d.ts +0 -1
  764. package/lib/oldCommands/pg/unfollow.js +0 -46
  765. package/lib/oldCommands/pg/upgrade/cancel.d.ts +0 -1
  766. package/lib/oldCommands/pg/upgrade/cancel.js +0 -62
  767. package/lib/oldCommands/pg/upgrade/dryrun.d.ts +0 -1
  768. package/lib/oldCommands/pg/upgrade/dryrun.js +0 -62
  769. package/lib/oldCommands/pg/upgrade/index.d.ts +0 -1
  770. package/lib/oldCommands/pg/upgrade/index.js +0 -85
  771. package/lib/oldCommands/pg/upgrade/prepare.d.ts +0 -1
  772. package/lib/oldCommands/pg/upgrade/prepare.js +0 -64
  773. package/lib/oldCommands/pg/upgrade/run.d.ts +0 -1
  774. package/lib/oldCommands/pg/upgrade/run.js +0 -106
  775. package/lib/oldCommands/pg/upgrade/wait.d.ts +0 -1
  776. package/lib/oldCommands/pg/upgrade/wait.js +0 -121
  777. package/lib/oldCommands/pg/upgrade.d.ts +0 -1
  778. package/lib/oldCommands/pg/upgrade.js +0 -66
  779. package/lib/oldCommands/pg/vacuum-stats.d.ts +0 -1
  780. package/lib/oldCommands/pg/wait.d.ts +0 -1
  781. package/lib/oldCommands/pg/wait.js +0 -96
  782. package/lib/oldCommands/pipelines/open.d.ts +0 -1
  783. package/lib/oldCommands/pipelines/open.js +0 -25
  784. package/lib/oldCommands/pipelines/promote.d.ts +0 -1
  785. package/lib/oldCommands/pipelines/promote.js +0 -269
  786. package/lib/oldCommands/pipelines/remove.d.ts +0 -1
  787. package/lib/oldCommands/pipelines/remove.js +0 -29
  788. package/lib/oldCommands/pipelines/rename.d.ts +0 -1
  789. package/lib/oldCommands/pipelines/rename.js +0 -42
  790. package/lib/oldCommands/pipelines/setup.d.ts +0 -1
  791. package/lib/oldCommands/pipelines/setup.js +0 -117
  792. package/lib/oldCommands/pipelines/transfer.d.ts +0 -1
  793. package/lib/oldCommands/pipelines/transfer.js +0 -78
  794. package/lib/oldCommands/pipelines/update.d.ts +0 -1
  795. package/lib/oldCommands/pipelines/update.js +0 -39
  796. package/lib/oldCommands/ps/autoscale/disable.d.ts +0 -1
  797. package/lib/oldCommands/ps/autoscale/disable.js +0 -43
  798. package/lib/oldCommands/ps/autoscale/enable.d.ts +0 -1
  799. package/lib/oldCommands/ps/autoscale/enable.js +0 -103
  800. package/lib/oldCommands/ps/index.d.ts +0 -1
  801. package/lib/oldCommands/ps/index.js +0 -254
  802. package/lib/oldCommands/ps/restart.d.ts +0 -1
  803. package/lib/oldCommands/ps/restart.js +0 -78
  804. package/lib/oldCommands/ps/scale.d.ts +0 -1
  805. package/lib/oldCommands/ps/scale.js +0 -95
  806. package/lib/oldCommands/ps/stop.d.ts +0 -1
  807. package/lib/oldCommands/ps/stop.js +0 -73
  808. package/lib/oldCommands/ps/type.d.ts +0 -1
  809. package/lib/oldCommands/ps/type.js +0 -190
  810. package/lib/oldCommands/ps/wait.d.ts +0 -1
  811. package/lib/oldCommands/ps/wait.js +0 -93
  812. package/lib/oldCommands/releases/index.d.ts +0 -1
  813. package/lib/oldCommands/releases/index.js +0 -156
  814. package/lib/oldCommands/releases/info.d.ts +0 -1
  815. package/lib/oldCommands/releases/info.js +0 -68
  816. package/lib/oldCommands/releases/output.d.ts +0 -1
  817. package/lib/oldCommands/releases/output.js +0 -42
  818. package/lib/oldCommands/releases/retry.d.ts +0 -1
  819. package/lib/oldCommands/releases/retry.js +0 -59
  820. package/lib/oldCommands/releases/rollback.d.ts +0 -1
  821. package/lib/oldCommands/releases/rollback.js +0 -65
  822. package/lib/oldCommands/run/detached.d.ts +0 -1
  823. package/lib/oldCommands/run/detached.js +0 -61
  824. package/lib/oldCommands/run/index.d.ts +0 -1
  825. package/lib/oldCommands/run/index.js +0 -72
  826. package/lib/oldCommands/run/inside.d.ts +0 -1
  827. package/lib/oldCommands/run/inside.js +0 -93
  828. package/lib/oldCommands/spaces/create.d.ts +0 -1
  829. package/lib/oldCommands/spaces/create.js +0 -99
  830. package/lib/oldCommands/spaces/destroy.d.ts +0 -1
  831. package/lib/oldCommands/spaces/destroy.js +0 -79
  832. package/lib/oldCommands/spaces/drains/get.d.ts +0 -1
  833. package/lib/oldCommands/spaces/drains/get.js +0 -33
  834. package/lib/oldCommands/spaces/drains/set.d.ts +0 -1
  835. package/lib/oldCommands/spaces/drains/set.js +0 -33
  836. package/lib/oldCommands/spaces/hosts.d.ts +0 -1
  837. package/lib/oldCommands/spaces/hosts.js +0 -42
  838. package/lib/oldCommands/spaces/index.d.ts +0 -1
  839. package/lib/oldCommands/spaces/index.js +0 -74
  840. package/lib/oldCommands/spaces/info.d.ts +0 -1
  841. package/lib/oldCommands/spaces/info.js +0 -59
  842. package/lib/oldCommands/spaces/peerings/accept.d.ts +0 -1
  843. package/lib/oldCommands/spaces/peerings/accept.js +0 -41
  844. package/lib/oldCommands/spaces/peerings/destroy.d.ts +0 -1
  845. package/lib/oldCommands/spaces/peerings/destroy.js +0 -51
  846. package/lib/oldCommands/spaces/peerings/index.d.ts +0 -1
  847. package/lib/oldCommands/spaces/peerings/index.js +0 -39
  848. package/lib/oldCommands/spaces/peerings/info.d.ts +0 -1
  849. package/lib/oldCommands/spaces/ps.d.ts +0 -1
  850. package/lib/oldCommands/spaces/ps.js +0 -97
  851. package/lib/oldCommands/spaces/rename.d.ts +0 -1
  852. package/lib/oldCommands/spaces/rename.js +0 -29
  853. package/lib/oldCommands/spaces/topology.d.ts +0 -1
  854. package/lib/oldCommands/spaces/topology.js +0 -95
  855. package/lib/oldCommands/spaces/transfer.d.ts +0 -1
  856. package/lib/oldCommands/spaces/transfer.js +0 -37
  857. package/lib/oldCommands/spaces/trusted-ips/add.d.ts +0 -1
  858. package/lib/oldCommands/spaces/trusted-ips/add.js +0 -48
  859. package/lib/oldCommands/spaces/trusted-ips/index.d.ts +0 -1
  860. package/lib/oldCommands/spaces/trusted-ips/index.js +0 -57
  861. package/lib/oldCommands/spaces/trusted-ips/remove.d.ts +0 -1
  862. package/lib/oldCommands/spaces/trusted-ips/remove.js +0 -50
  863. package/lib/oldCommands/spaces/vpn/config.d.ts +0 -1
  864. package/lib/oldCommands/spaces/vpn/config.js +0 -61
  865. package/lib/oldCommands/spaces/vpn/connect.d.ts +0 -1
  866. package/lib/oldCommands/spaces/vpn/connect.js +0 -54
  867. package/lib/oldCommands/spaces/vpn/connections.d.ts +0 -1
  868. package/lib/oldCommands/spaces/vpn/connections.js +0 -70
  869. package/lib/oldCommands/spaces/vpn/destroy.d.ts +0 -1
  870. package/lib/oldCommands/spaces/vpn/destroy.js +0 -48
  871. package/lib/oldCommands/spaces/vpn/info.d.ts +0 -1
  872. package/lib/oldCommands/spaces/vpn/info.js +0 -89
  873. package/lib/oldCommands/spaces/vpn/update.d.ts +0 -1
  874. package/lib/oldCommands/spaces/vpn/update.js +0 -46
  875. package/lib/oldCommands/spaces/vpn/wait.d.ts +0 -1
  876. package/lib/oldCommands/spaces/vpn/wait.js +0 -80
  877. package/lib/oldCommands/spaces/wait.d.ts +0 -1
  878. package/lib/oldCommands/spaces/wait.js +0 -106
  879. package/lib/oldCommands/webhooks/add.d.ts +0 -1
  880. package/lib/oldCommands/webhooks/add.js +0 -56
  881. package/lib/oldCommands/webhooks/deliveries/index.d.ts +0 -1
  882. package/lib/oldCommands/webhooks/deliveries/index.js +0 -90
  883. package/lib/oldCommands/webhooks/deliveries/info.d.ts +0 -1
  884. package/lib/oldCommands/webhooks/deliveries/info.js +0 -54
  885. package/lib/oldCommands/webhooks/index.d.ts +0 -1
  886. package/lib/oldCommands/webhooks/index.js +0 -55
  887. package/lib/oldCommands/webhooks/info.d.ts +0 -1
  888. package/lib/oldCommands/webhooks/info.js +0 -41
  889. package/lib/oldCommands/webhooks/remove.d.ts +0 -1
  890. package/lib/oldCommands/webhooks/remove.js +0 -37
  891. package/lib/oldCommands/webhooks/update.d.ts +0 -1
  892. package/lib/oldCommands/webhooks/update.js +0 -50
  893. package/lib/package.nls.json +0 -6
  894. /package/lib/lib/{pg/bastion.d.ts → data-scrubber/types.js} +0 -0
  895. /package/lib/lib/{spaces/outbound-rules.d.ts → types/completion.js} +0 -0
@@ -1,218 +1,109 @@
1
- export {};
2
- /*
3
- import color from '@heroku-cli/color'
4
- import type {AddOnAttachment} from '@heroku-cli/schema'
5
- import {ux} from '@oclif/core'
6
- import debug from 'debug'
7
- import {renderAttachment} from '../../commands/addons'
8
- import {multiSortCompareFn} from '../utils/multisort'
9
- import {getBastion} from './bastion'
10
- import type {AddOnAttachmentWithConfigVarsAndPlan, CredentialsInfo} from './types'
11
- import {env} from 'process'
12
- import {Server} from 'net'
13
-
14
- export function getConfigVarName(configVars: string[]): string {
15
- const connStringVars = configVars.filter(cv => (cv.endsWith('_URL')))
16
- if (connStringVars.length === 0) throw new Error('Database URL not found for this addon')
17
- return connStringVars[0]
1
+ import { color, hux, utils, } from '@heroku/heroku-cli-util';
2
+ import { renderAttachment } from '../../commands/addons/index.js';
3
+ import { isAdvancedCredentialInfo } from '../../lib/data/types.js';
4
+ import { multiSortCompareFn } from '../utils/multisort.js';
5
+ export function essentialPlan(addon) {
6
+ return utils.pg.isEssentialDatabase(addon) || utils.pg.isLegacyEssentialDatabase(addon);
18
7
  }
19
-
20
- export const essentialNumPlan = (addon: AddOnAttachmentWithConfigVarsAndPlan) => Boolean(addon?.plan?.name?.split(':')[1].match(/^essential/))
21
- export const legacyEssentialPlan = (addon: AddOnAttachmentWithConfigVarsAndPlan) => Boolean(addon?.plan?.name?.split(':')[1].match(/(dev|basic|mini)$/))
22
-
23
- export function essentialPlan(addon: AddOnAttachmentWithConfigVarsAndPlan) {
24
- return essentialNumPlan(addon) || legacyEssentialPlan(addon)
8
+ export function formatResponseWithCommands(response) {
9
+ return response.replaceAll(/`(.*?)`/g, (_, word) => color.code(word));
25
10
  }
26
-
27
- export function getConfigVarNameFromAttachment(attachment: Required<AddOnAttachment & {
28
- addon: AddOnAttachmentWithConfigVarsAndPlan
29
- }>, config: Record<string, string> = {}): string {
30
- const configVars = attachment.config_vars?.filter((cv: string) => {
31
- return config[cv]?.startsWith('postgres://')
32
- }) ?? []
33
- if (configVars.length === 0) {
34
- ux.error(`No config vars found for ${attachment.name}; perhaps they were removed as a side effect of ${color.cmd('heroku rollback')}? Use ${color.cmd('heroku addons:attach')} to create a new attachment and then ${color.cmd('heroku addons:detach')} to remove the current attachment.`)
35
- }
36
-
37
- const configVarName = `${attachment.name}_URL`
38
- if (configVars.includes(configVarName) && configVarName in config) {
39
- return configVarName
40
- }
41
-
42
- return getConfigVarName(configVars)
43
- }
44
-
45
- export function formatResponseWithCommands(response: string): string {
46
- return response.replace(/`(.*?)`/g, (_, word) => color.cmd(word))
47
- }
48
-
49
- export function presentCredentialAttachments(app: string, credAttachments: Required<AddOnAttachment>[], credentials: CredentialsInfo, cred: string) {
50
- const isForeignApp = (attOrAddon: Required<AddOnAttachment>) => attOrAddon.app.name === app ? 0 : 1
51
- const comparators = [
52
- (a: Required<AddOnAttachment>, b: Required<AddOnAttachment>) => {
53
- const fa = isForeignApp(a)
54
- const fb = isForeignApp(b)
55
- return fa < fb ? -1 : (fb < fa ? 1 : 0)
56
- },
57
- (a: Required<AddOnAttachment>, b: Required<AddOnAttachment>) => a.name.localeCompare(b.name),
58
- (a: Required<AddOnAttachment>, b: Required<AddOnAttachment>) => a.app?.name?.localeCompare(b.app?.name ?? '') ?? 0,
59
- ]
60
- credAttachments.sort(multiSortCompareFn(comparators))
61
- // render each attachment under the credential
62
- const attLines = credAttachments.map(function (attachment, idx) {
63
- const isLast = (idx === credAttachments.length - 1)
64
- return renderAttachment(attachment, app, isLast)
65
- })
66
-
67
- const rotationLines = []
68
- const credentialStore = credentials.find(a => a.name === cred)
69
- if (credentialStore?.state === 'rotating') {
70
- const formatted = credentialStore?.credentials.map(credential => {
71
- return {
72
- user: credential.user,
73
- state: credential.state,
74
- connections: credential.connections,
75
- }
76
- })
77
- // eslint-disable-next-line no-eq-null, eqeqeq
78
- const connectionInformationAvailable = formatted.some(c => c.connections != null)
79
- if (connectionInformationAvailable) {
80
- const prefix = ' '
81
- rotationLines.push(`${prefix}Usernames currently active for this credential:`)
82
- ux.table(formatted, {
83
- user: {
84
- get(row: typeof formatted[0]) {
85
- return `${prefix}${row.user}`
86
- },
87
- },
88
- state: {
89
- get(row) {
90
- return row.state === 'revoking' ? 'waiting for no connections to be revoked' : row.state
91
- },
92
- },
93
- connections: {
94
- get(row) {
95
- return `${row.connections} connections`
96
- },
11
+ export function presentCredentialAttachments(app, credAttachments, credentials, cred) {
12
+ const isForeignApp = (attOrAddon) => attOrAddon.app.name === app ? 0 : 1;
13
+ const comparators = [
14
+ (a, b) => {
15
+ const fa = isForeignApp(a);
16
+ const fb = isForeignApp(b);
17
+ return fa < fb ? -1 : (fb < fa ? 1 : 0);
97
18
  },
98
- }, {
99
- 'no-header': true,
100
- printLine(line: unknown): void {
101
- rotationLines.push(line)
102
- },
103
- })
19
+ (a, b) => a.name.localeCompare(b.name),
20
+ (a, b) => a.app?.name?.localeCompare(b.app?.name ?? '') ?? 0,
21
+ ];
22
+ credAttachments.sort(multiSortCompareFn(comparators));
23
+ // render each attachment under the credential
24
+ const attLines = credAttachments.map((attachment, idx) => {
25
+ const isLast = (idx === credAttachments.length - 1);
26
+ return renderAttachment(attachment, app, isLast);
27
+ });
28
+ // We would use utils.pg.isAdvancedDatabase from @heroku/heroku-cli-util, but we're not passing the add-on as a parameter.
29
+ if (credentials.length > 0 && isAdvancedCredentialInfo(credentials[0])) {
30
+ return [cred, ...attLines].join('\n');
104
31
  }
105
- }
106
-
107
- return [cred, ...attLines, ...rotationLines].join('\n')
108
- }
109
-
110
- export type ConnectionDetails = {
111
- user: string
112
- password: string
113
- database: string
114
- host: string
115
- port: string
116
- pathname: string
117
- url: string
118
- bastionKey?: string
119
- bastionHost?: string
120
- _tunnel?: Server
121
- }
122
-
123
- export type ConnectionDetailsWithAttachment = ConnectionDetails & {
124
- attachment: Required<AddOnAttachment & {addon: AddOnAttachmentWithConfigVarsAndPlan}>
125
- }
126
-
127
- export const getConnectionDetails = (attachment: Required<AddOnAttachment & {
128
- addon: AddOnAttachmentWithConfigVarsAndPlan
129
- }>, configVars: Record<string, string> = {}): ConnectionDetailsWithAttachment => {
130
- const connStringVar = getConfigVarNameFromAttachment(attachment, configVars)
131
-
132
- // remove _URL from the end of the config var name
133
- const baseName = connStringVar.slice(0, -4)
134
-
135
- // build the default payload for non-bastion dbs
136
- debug(`Using "${connStringVar}" to connect to your database…`)
137
-
138
- const conn = parsePostgresConnectionString(configVars[connStringVar])
139
-
140
- const payload: ConnectionDetailsWithAttachment = {
141
- user: conn.user,
142
- password: conn.password,
143
- database: conn.database,
144
- host: conn.host,
145
- port: conn.port,
146
- pathname: conn.pathname,
147
- url: conn.url,
148
- attachment,
149
- }
150
-
151
- // If bastion creds exist, graft it into the payload
152
- const bastion = getBastion(configVars, baseName)
153
- if (bastion) {
154
- Object.assign(payload, bastion)
155
- }
156
-
157
- return payload
158
- }
159
-
160
- export const bastionKeyPlan = (a: AddOnAttachmentWithConfigVarsAndPlan) => Boolean(a.plan.name.match(/private/))
161
-
162
- export const configVarNamesFromValue = (config: Record<string, string>, value: string) => {
163
- const keys: string[] = []
164
- for (const key of Object.keys(config)) {
165
- const configVal = config[key]
166
- if (configVal === value) {
167
- keys.push(key)
168
- } else if (configVal.startsWith('postgres://')) {
169
- try {
170
- const configURL = new URL(configVal)
171
- const ourURL = new URL(value)
172
- const components: (keyof URL)[] = ['protocol', 'hostname', 'port', 'pathname']
173
- if (components.every(component => ourURL[component] === configURL[component])) {
174
- keys.push(key)
32
+ const rotationLines = [];
33
+ const credentialStore = credentials.find(a => a.name === cred);
34
+ if (credentialStore?.state === 'rotating') {
35
+ const formatted = credentialStore?.credentials.map(credential => ({
36
+ connections: credential.connections,
37
+ state: credential.state,
38
+ user: credential.user,
39
+ }));
40
+ // eslint-disable-next-line no-eq-null, eqeqeq
41
+ const connectionInformationAvailable = formatted.some(c => c.connections != null);
42
+ if (connectionInformationAvailable) {
43
+ const prefix = ' ';
44
+ rotationLines.push(`${prefix}Usernames currently active for this credential:`);
45
+ const printLine = (line) => {
46
+ rotationLines.push(line);
47
+ };
48
+ hux.table(formatted, {
49
+ connections: {
50
+ get(row) {
51
+ return `${row.connections} connections`;
52
+ },
53
+ },
54
+ state: {
55
+ get(row) {
56
+ return row.state === 'revoking' ? 'waiting for no connections to be revoked' : row.state;
57
+ },
58
+ },
59
+ user: {
60
+ get(row) {
61
+ return `${prefix}${row.user}`;
62
+ },
63
+ },
64
+ }, {
65
+ printLine,
66
+ });
175
67
  }
176
- } catch {
177
- // ignore -- this is not a valid URL so not a matching URL
178
- }
179
68
  }
180
- }
181
-
182
- const comparator = (a: string, b: string) => {
183
- const isDatabaseUrlA = Number(a === 'DATABASE_URL')
184
- const isDatabaseUrlB = Number(b === 'DATABASE_URL')
185
- return isDatabaseUrlA < isDatabaseUrlB ? -1 : (isDatabaseUrlB < isDatabaseUrlA ? 1 : 0)
186
- }
187
-
188
- return keys.sort(comparator)
189
- }
190
-
191
- export const databaseNameFromUrl = (uri: string, config: Record<string, string>) => {
192
- const names = configVarNamesFromValue(config, uri)
193
- let name = names.pop()
194
- while (names.length > 0 && name === 'DATABASE_URL') name = names.pop()
195
- if (name) {
196
- return color.configVar(name.replace(/_URL$/, ''))
197
- }
198
-
199
- const conn = parsePostgresConnectionString(uri)
200
- return `${conn.host}:${conn.port}${conn.pathname}`
69
+ return [cred, ...attLines, ...rotationLines].join('\n');
201
70
  }
202
-
203
- export const parsePostgresConnectionString = (db: string): ConnectionDetails => {
204
- const dbPath = db.match(/:\/\//) ? db : `postgres:///${db}`
205
- const url = new URL(dbPath)
206
- const {username, password, hostname, pathname, port} = url
207
-
208
- return {
209
- user: username,
210
- password,
211
- database: pathname.charAt(0) === '/' ? pathname.slice(1) : pathname,
212
- host: hostname,
213
- port: port || env.PGPORT || (hostname && '5432'),
214
- pathname,
215
- url: dbPath,
216
- }
217
- }
218
- */
71
+ export const configVarNamesFromValue = (config, value) => {
72
+ const keys = [];
73
+ for (const key of Object.keys(config)) {
74
+ const configVal = config[key];
75
+ if (configVal === value) {
76
+ keys.push(key);
77
+ }
78
+ else if (configVal.startsWith('postgres://')) {
79
+ try {
80
+ const configURL = new URL(configVal);
81
+ const ourURL = new URL(value);
82
+ const components = ['protocol', 'hostname', 'port', 'pathname'];
83
+ if (components.every(component => ourURL[component] === configURL[component])) {
84
+ keys.push(key);
85
+ }
86
+ }
87
+ catch {
88
+ // ignore -- this is not a valid URL so not a matching URL
89
+ }
90
+ }
91
+ }
92
+ const comparator = (a, b) => {
93
+ const isDatabaseUrlA = Number(a === 'DATABASE_URL');
94
+ const isDatabaseUrlB = Number(b === 'DATABASE_URL');
95
+ return isDatabaseUrlA < isDatabaseUrlB ? -1 : (isDatabaseUrlB < isDatabaseUrlA ? 1 : 0);
96
+ };
97
+ return keys.sort(comparator);
98
+ };
99
+ export const databaseNameFromUrl = (uri, config) => {
100
+ const names = configVarNamesFromValue(config, uri);
101
+ let name = names.pop();
102
+ while (names.length > 0 && name === 'DATABASE_URL')
103
+ name = names.pop();
104
+ if (name) {
105
+ return color.name(name.replace(/_URL$/, ''));
106
+ }
107
+ const conn = utils.pg.DatabaseResolver.parsePostgresConnectionString(uri);
108
+ return `${conn.host}:${conn.port}${conn.pathname}`;
109
+ };
@@ -1,6 +1,6 @@
1
1
  import inquirer from 'inquirer';
2
- import { uuidValidate } from '../utils/uuid-validate.js';
3
2
  import { findPipelineByName, getPipeline, } from '../api.js';
3
+ import { uuidValidate } from '../utils/uuid-validate.js';
4
4
  export default async function disambiguate(heroku, pipelineIDOrName) {
5
5
  let pipeline;
6
6
  if (uuidValidate(pipelineIDOrName)) {
@@ -17,20 +17,18 @@ export default async function disambiguate(heroku, pipelineIDOrName) {
17
17
  }
18
18
  else {
19
19
  // Disambiguate
20
- const choices = pipelines.map(x => {
21
- return {
22
- name: new Date(x.created_at).toString(),
23
- value: x,
24
- };
25
- });
20
+ const choices = pipelines.map(x => ({
21
+ name: new Date(x.created_at).toString(),
22
+ value: x,
23
+ }));
26
24
  const questions = [{
27
- type: 'list',
28
- name: 'pipeline',
29
- message: `Which ${pipelineIDOrName} pipeline?`,
30
25
  choices,
26
+ message: `Which ${pipelineIDOrName} pipeline?`,
27
+ name: 'pipeline',
28
+ type: 'list',
31
29
  }];
32
30
  // eslint-disable-next-line no-async-promise-executor
33
- pipeline = await new Promise(async function (resolve, reject) {
31
+ pipeline = await new Promise(async (resolve, reject) => {
34
32
  const answers = await inquirer.prompt(questions);
35
33
  if (answers.pipeline) {
36
34
  resolve(answers.pipeline);
@@ -2,4 +2,4 @@ import { APIClient } from '@heroku-cli/command';
2
2
  import * as Heroku from '@heroku-cli/schema';
3
3
  import { AppWithPipelineCoupling } from '../api.js';
4
4
  export declare function warnMixedOwnership(pipelineApps: Array<AppWithPipelineCoupling>, pipeline: Heroku.Pipeline, owner: string): void;
5
- export declare function getOwner(heroku: APIClient, apps: Array<AppWithPipelineCoupling>, pipeline: Heroku.Pipeline): Promise<any>;
5
+ export declare function getOwner(heroku: APIClient, apps: Array<AppWithPipelineCoupling>, pipeline: Heroku.Pipeline): Promise<string>;
@@ -1,16 +1,14 @@
1
- import { color } from '@heroku-cli/color';
1
+ import { color } from '@heroku/heroku-cli-util';
2
2
  import { ux } from '@oclif/core';
3
3
  import { getTeam } from '../api.js';
4
4
  export function warnMixedOwnership(pipelineApps, pipeline, owner) {
5
- const hasMixedOwnership = pipelineApps.some(app => {
6
- return (app.owner && app.owner.id) !== pipeline.owner.id;
7
- });
5
+ const hasMixedOwnership = pipelineApps.some(app => (app.owner && app.owner.id) !== pipeline.owner.id);
8
6
  if (hasMixedOwnership) {
9
7
  ux.stdout();
10
- let message = `Some apps in this pipeline do not belong to ${color.cmd(owner)}.`;
8
+ let message = `Some apps in this pipeline do not belong to ${color.team(owner)}.`;
11
9
  message += '\n\nAll apps in a pipeline must have the same owner as the pipeline owner.';
12
10
  message += '\nTransfer these apps or change the pipeline owner in pipeline settings.';
13
- message += `\nSee ${color.cyan('https://devcenter.heroku.com/articles/pipeline-ownership-transition')} for more info.`;
11
+ message += `\nSee ${color.info('https://devcenter.heroku.com/articles/pipeline-ownership-transition')} for more info.`;
14
12
  ux.warn(message);
15
13
  }
16
14
  }
@@ -21,15 +19,11 @@ export function getOwner(heroku, apps, pipeline) {
21
19
  ownerPromise = getTeam(heroku, pipeline.owner.id).then(response => response.body);
22
20
  }
23
21
  else {
24
- const app = apps.find(app => {
25
- return app.owner ? app.owner.id === pipeline.owner.id : false;
26
- });
22
+ const app = apps.find(app => (app.owner ? app.owner.id === pipeline.owner.id : false));
27
23
  // If pipeline owner doesn't own any application and type is user (unlikely)
28
24
  // We return the uuid as default
29
25
  owner = app ? app.owner && app.owner.email : pipeline.owner.id;
30
26
  ownerPromise = Promise.resolve(owner);
31
27
  }
32
- return ownerPromise.then(owner => {
33
- return owner.name ? `${owner.name} (team)` : owner;
34
- });
28
+ return ownerPromise.then(owner => (owner.name ? `${color.team(owner.name)} (team)` : color.user(owner)));
35
29
  }
@@ -1,7 +1,7 @@
1
1
  import { APIClient } from '@heroku-cli/command';
2
2
  import * as Heroku from '@heroku-cli/schema';
3
3
  import { AppWithPipelineCoupling } from '../api.js';
4
- export default function renderPipeline(heroku: APIClient, pipeline: Heroku.Pipeline, pipelineApps: Array<AppWithPipelineCoupling>, { withOwners, showOwnerWarning }?: {
5
- withOwners: boolean;
4
+ export default function renderPipeline(heroku: APIClient, pipeline: Heroku.Pipeline, pipelineApps: Array<AppWithPipelineCoupling>, { showOwnerWarning, withOwners }?: {
6
5
  showOwnerWarning: boolean;
6
+ withOwners: boolean;
7
7
  }): Promise<void>;
@@ -1,40 +1,41 @@
1
- import { color } from '@heroku-cli/color';
1
+ import { color, hux } from '@heroku/heroku-cli-util';
2
2
  import { ux } from '@oclif/core';
3
- import { hux } from '@heroku/heroku-cli-util';
4
3
  import { getOwner, warnMixedOwnership } from './ownership.js';
5
4
  export default async function renderPipeline(heroku, pipeline, pipelineApps,
6
5
  // eslint-disable-next-line unicorn/no-object-as-default-parameter
7
- { withOwners, showOwnerWarning } = { withOwners: false, showOwnerWarning: false }) {
8
- hux.styledHeader(pipeline.name);
6
+ { showOwnerWarning, withOwners } = { showOwnerWarning: false, withOwners: false }) {
7
+ hux.styledHeader(color.pipeline(pipeline.name));
9
8
  let owner;
10
9
  if (pipeline.owner) {
11
10
  owner = await getOwner(heroku, pipelineApps, pipeline);
12
11
  ux.stdout(`owner: ${owner}`);
13
12
  }
14
13
  ux.stdout('');
14
+ /* eslint-disable perfectionist/sort-objects */
15
15
  const columns = {
16
16
  name: {
17
- header: 'app name',
18
17
  get(row) {
19
18
  return color.app(row.name || '');
20
19
  },
20
+ header: 'app name',
21
21
  },
22
22
  'coupling.stage': {
23
- header: 'stage',
24
23
  get(row) {
25
24
  return row.pipelineCoupling.stage;
26
25
  },
26
+ header: 'stage',
27
27
  },
28
28
  };
29
+ /* eslint-enable perfectionist/sort-objects */
29
30
  if (withOwners) {
30
31
  columns['owner.email'] = {
31
- header: 'owner',
32
32
  get(row) {
33
33
  const email = row.owner && row.owner.email;
34
34
  if (email) {
35
- return email.endsWith('@herokumanager.com') ? `${email.split('@')[0]} (team)` : email;
35
+ return email.endsWith('@herokumanager.com') ? `${color.team(email.split('@')[0])} (team)` : color.user(email);
36
36
  }
37
37
  },
38
+ header: 'owner',
38
39
  };
39
40
  }
40
41
  const sortByName = (a, b) => {
@@ -58,7 +59,7 @@ export default async function renderPipeline(heroku, pipeline, pipelineApps,
58
59
  .sort(sortByName);
59
60
  const apps = developmentApps.concat(reviewApps).concat(stagingApps).concat(productionApps);
60
61
  hux.table(apps, columns);
61
- if (showOwnerWarning && pipeline.owner) {
62
+ if (showOwnerWarning && pipeline.owner && owner) {
62
63
  warnMixedOwnership(pipelineApps, pipeline, owner);
63
64
  }
64
65
  }
@@ -2,12 +2,12 @@ import { ux } from '@oclif/core';
2
2
  import { createAppSetup } from '../../api.js';
3
3
  function createApp(heroku, { archiveURL, name, organization, pipeline, stage }) {
4
4
  const params = {
5
- source_blob: { url: archiveURL },
6
5
  app: { name },
7
6
  pipeline_coupling: {
8
- stage,
9
7
  pipeline: pipeline.id,
8
+ stage,
10
9
  },
10
+ source_blob: { url: archiveURL },
11
11
  };
12
12
  if (organization) {
13
13
  params.app.organization = organization;
@@ -20,22 +20,20 @@ function createApp(heroku, { archiveURL, name, organization, pipeline, stage })
20
20
  export default function createApps(heroku, archiveURL, pipeline, pipelineName, stagingAppName, organization) {
21
21
  const prodAppSetupPromise = createApp(heroku, {
22
22
  archiveURL,
23
- pipeline,
24
23
  name: pipelineName,
25
- stage: 'production',
26
24
  organization,
25
+ pipeline,
26
+ stage: 'production',
27
27
  });
28
28
  const stagingAppSetupPromise = createApp(heroku, {
29
29
  archiveURL,
30
- pipeline,
31
30
  name: stagingAppName,
32
- stage: 'staging',
33
31
  organization,
32
+ pipeline,
33
+ stage: 'staging',
34
34
  });
35
35
  const promises = [prodAppSetupPromise, stagingAppSetupPromise];
36
- return Promise.all(promises).then(appSetups => {
37
- return appSetups;
38
- }, error => {
36
+ return Promise.all(promises).then(appSetups => appSetups, error => {
39
37
  ux.error(error, { exit: 1 });
40
38
  });
41
39
  }
@@ -1,4 +1,4 @@
1
- // import {hux} from '@heroku/heroku-cli-util'
1
+ import { hux } from '@heroku/heroku-cli-util';
2
2
  export default async function getCISettings(yes, organization) {
3
3
  const settings = {
4
4
  ci: true,
@@ -8,7 +8,7 @@ export default async function getCISettings(yes, organization) {
8
8
  delete settings.organization;
9
9
  return settings;
10
10
  }
11
- // settings.ci = await hux.confirm('Enable automatic Heroku CI test runs?')
11
+ settings.ci = await hux.confirm('Enable automatic Heroku CI test runs?');
12
12
  if (settings.ci && organization) {
13
13
  settings.organization = organization;
14
14
  }
@@ -1,7 +1,5 @@
1
1
  export default function getGitHubToken(kolkrabbi) {
2
- return kolkrabbi.getAccount().then((account) => {
3
- return account.github.token;
4
- }, () => {
2
+ return kolkrabbi.getAccount().then((account) => account.github.token, () => {
5
3
  throw new Error('Account not connected to GitHub.');
6
4
  });
7
5
  }
@@ -1,3 +1,6 @@
1
+ import { ux } from '@oclif/core';
2
+ import { hux } from '@heroku/heroku-cli-util';
3
+ import { pipelineName, repoName } from './validate.js';
1
4
  function filter(obj) {
2
5
  const ret = {};
3
6
  Object.keys(obj)
@@ -12,28 +15,30 @@ export default async function getNameAndRepo(args) {
12
15
  name: '',
13
16
  repo: '',
14
17
  };
15
- // if (!args.name) {
16
- // const name = await hux.prompt('Pipeline name', {
17
- // required: true,
18
- // })
19
- // const [valid, msg] = pipelineName(name)
20
- // if (valid) {
21
- // answer.name = name
22
- // } else {
23
- // ux.error(msg as string)
24
- // }
25
- // }
26
- // if (!args.repo) {
27
- // const repo = await hux.prompt('GitHub repository to connect to (e.g. rails/rails)', {
28
- // required: true,
29
- // })
30
- // const [valid, msg] = repoName(repo)
31
- // if (valid) {
32
- // answer.repo = repo
33
- // } else {
34
- // ux.error(msg as string)
35
- // }
36
- // }
18
+ if (!args.name) {
19
+ const name = await hux.prompt('Pipeline name', {
20
+ required: true,
21
+ });
22
+ const [valid, msg] = pipelineName(name);
23
+ if (valid) {
24
+ answer.name = name;
25
+ }
26
+ else {
27
+ ux.error(msg);
28
+ }
29
+ }
30
+ if (!args.repo) {
31
+ const repo = await hux.prompt('GitHub repository to connect to (e.g. rails/rails)', {
32
+ required: true,
33
+ });
34
+ const [valid, msg] = repoName(repo);
35
+ if (valid) {
36
+ answer.repo = repo;
37
+ }
38
+ else {
39
+ ux.error(msg);
40
+ }
41
+ }
37
42
  const reply = Object.assign(filter(answer), filter(args));
38
43
  reply.name = reply.name.toLowerCase().replace(/\s/g, '-');
39
44
  return reply;
@@ -1,4 +1,4 @@
1
- // import {hux} from '@heroku/heroku-cli-util'
1
+ import { hux } from '@heroku/heroku-cli-util';
2
2
  const DEFAULT_SETTINGS = {
3
3
  auto_deploy: true,
4
4
  wait_for_ci: true,
@@ -21,16 +21,16 @@ export default async function getSettings(yes, branch) {
21
21
  auto_destroy: true,
22
22
  },
23
23
  };
24
- // settings.auto_deploy = await hux.confirm(`Automatically deploy the ${branch} branch to staging?`)
25
- // if (settings.auto_deploy) {
26
- // settings.wait_for_ci = await hux.confirm(`Wait for CI to pass before deploying the ${branch} branch to staging?`)
27
- // }
28
- // settings.pull_requests.enabled = await hux.confirm('Enable review apps?')
29
- // if (settings.pull_requests.enabled) {
30
- // settings.pull_requests.auto_deploy = await hux.confirm('Automatically create review apps for every PR?')
31
- // }
32
- // if (settings.pull_requests.enabled) {
33
- // settings.pull_requests.auto_destroy = await hux.confirm('Automatically destroy idle review apps after 5 days?')
34
- // }
24
+ settings.auto_deploy = await hux.confirm(`Automatically deploy the ${branch} branch to staging?`);
25
+ if (settings.auto_deploy) {
26
+ settings.wait_for_ci = await hux.confirm(`Wait for CI to pass before deploying the ${branch} branch to staging?`);
27
+ }
28
+ settings.pull_requests.enabled = await hux.confirm('Enable review apps?');
29
+ if (settings.pull_requests.enabled) {
30
+ settings.pull_requests.auto_deploy = await hux.confirm('Automatically create review apps for every PR?');
31
+ }
32
+ if (settings.pull_requests.enabled) {
33
+ settings.pull_requests.auto_destroy = await hux.confirm('Automatically destroy idle review apps after 5 days?');
34
+ }
35
35
  return settings;
36
36
  }