heroku 11.0.0-alpha.10 → 11.0.0-alpha.12

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 (865) 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 +4 -4
  29. package/lib/commands/addons/index.js +28 -26
  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 +61 -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/global_telemetry.d.ts +2 -2
  493. package/lib/global_telemetry.js +34 -36
  494. package/lib/lib/addons/addons_wait.d.ts +1 -1
  495. package/lib/lib/addons/addons_wait.js +2 -2
  496. package/lib/lib/addons/create_addon.d.ts +5 -3
  497. package/lib/lib/addons/create_addon.js +12 -9
  498. package/lib/lib/addons/destroy_addon.js +17 -9
  499. package/lib/lib/addons/resolve.d.ts +10 -11
  500. package/lib/lib/addons/resolve.js +19 -18
  501. package/lib/lib/addons/util.d.ts +2 -2
  502. package/lib/lib/addons/util.js +21 -14
  503. package/lib/lib/api.d.ts +1 -1
  504. package/lib/lib/api.js +19 -23
  505. package/lib/lib/apps/app-transfer.d.ts +3 -3
  506. package/lib/lib/apps/app-transfer.js +11 -11
  507. package/lib/lib/autocomplete/base.d.ts +11 -1
  508. package/lib/lib/autocomplete/base.js +33 -49
  509. package/lib/lib/autocomplete/cache.js +9 -7
  510. package/lib/lib/autocomplete/completions.d.ts +41 -1
  511. package/lib/lib/autocomplete/completions.js +258 -290
  512. package/lib/lib/buildpacks/buildpacks.d.ts +11 -11
  513. package/lib/lib/buildpacks/buildpacks.js +71 -71
  514. package/lib/lib/certs/certificate_details.js +3 -4
  515. package/lib/lib/certs/flags.d.ts +2 -2
  516. package/lib/lib/certs/flags.js +5 -8
  517. package/lib/lib/certs/get_cert_and_key.js +2 -2
  518. package/lib/lib/ci/git.d.ts +12 -2
  519. package/lib/lib/ci/git.js +20 -6
  520. package/lib/lib/ci/pipelines.d.ts +5 -5
  521. package/lib/lib/ci/pipelines.js +17 -17
  522. package/lib/lib/ci/source.d.ts +8 -0
  523. package/lib/lib/ci/source.js +22 -10
  524. package/lib/lib/ci/test-run.js +18 -15
  525. package/lib/lib/config/quote.js +4 -4
  526. package/lib/lib/config/util.d.ts +3 -0
  527. package/lib/lib/config/util.js +5 -0
  528. package/lib/lib/confirmCommand.js +6 -7
  529. package/lib/lib/container/docker_helper.d.ts +12 -12
  530. package/lib/lib/container/docker_helper.js +71 -74
  531. package/lib/lib/container/helpers.js +2 -2
  532. package/lib/lib/container/streamer.js +4 -4
  533. package/lib/lib/data/baseCommand.d.ts +4 -0
  534. package/lib/lib/data/baseCommand.js +15 -0
  535. package/lib/lib/data/createPool.d.ts +4 -0
  536. package/lib/lib/data/createPool.js +6 -0
  537. package/lib/lib/data/credentialUtils.d.ts +3 -0
  538. package/lib/lib/data/credentialUtils.js +23 -0
  539. package/lib/lib/data/displayQuota.d.ts +19 -0
  540. package/lib/lib/data/displayQuota.js +59 -0
  541. package/lib/lib/data/parseProvisionOpts.d.ts +15 -0
  542. package/lib/lib/data/parseProvisionOpts.js +31 -0
  543. package/lib/lib/data/types.d.ts +177 -0
  544. package/lib/lib/data/types.js +3 -0
  545. package/lib/lib/data-scrubber/patterns.d.ts +4 -0
  546. package/lib/lib/data-scrubber/patterns.js +13 -0
  547. package/lib/lib/data-scrubber/presets.d.ts +64 -0
  548. package/lib/lib/data-scrubber/presets.js +112 -0
  549. package/lib/lib/data-scrubber/scrubber.d.ts +131 -0
  550. package/lib/lib/data-scrubber/scrubber.js +256 -0
  551. package/lib/lib/data-scrubber/types.d.ts +169 -0
  552. package/lib/lib/domains/domains.js +10 -10
  553. package/lib/lib/domains/wait-for-domain.js +2 -3
  554. package/lib/lib/local/env-file-validator.js +2 -2
  555. package/lib/lib/local/fork-foreman.js +3 -2
  556. package/lib/lib/members/util.js +7 -7
  557. package/lib/lib/orgs/utils.js +2 -3
  558. package/lib/lib/pg/backups.d.ts +17 -1
  559. package/lib/lib/pg/backups.js +132 -156
  560. package/lib/lib/pg/download.js +7 -7
  561. package/lib/lib/pg/fetcher.d.ts +3 -1
  562. package/lib/lib/pg/fetcher.js +3 -162
  563. package/lib/lib/pg/psql.d.ts +17 -1
  564. package/lib/lib/pg/psql.js +59 -269
  565. package/lib/lib/pg/push_pull.d.ts +12 -0
  566. package/lib/lib/pg/push_pull.js +97 -119
  567. package/lib/lib/pg/setter.d.ts +16 -1
  568. package/lib/lib/pg/setter.js +61 -73
  569. package/lib/lib/pg/types.d.ts +10 -15
  570. package/lib/lib/pg/util.d.ts +8 -1
  571. package/lib/lib/pg/util.js +97 -211
  572. package/lib/lib/pipelines/disambiguate.js +9 -11
  573. package/lib/lib/pipelines/ownership.d.ts +1 -1
  574. package/lib/lib/pipelines/ownership.js +6 -12
  575. package/lib/lib/pipelines/render-pipeline.d.ts +2 -2
  576. package/lib/lib/pipelines/render-pipeline.js +10 -9
  577. package/lib/lib/pipelines/setup/create-apps.js +7 -9
  578. package/lib/lib/pipelines/setup/get-ci-settings.js +2 -2
  579. package/lib/lib/pipelines/setup/get-github-token.js +1 -3
  580. package/lib/lib/pipelines/setup/get-name-and-repo.js +27 -22
  581. package/lib/lib/pipelines/setup/get-settings.js +12 -12
  582. package/lib/lib/pipelines/setup/poll-app-setups.js +3 -5
  583. package/lib/lib/pipelines/setup/setup-pipeline.js +1 -3
  584. package/lib/lib/pipelines/setup/validate.d.ts +1 -1
  585. package/lib/lib/pipelines/setup/validate.js +2 -2
  586. package/lib/lib/pipelines/stages.d.ts +2 -2
  587. package/lib/lib/pipelines/stages.js +4 -4
  588. package/lib/lib/redis/api.d.ts +22 -22
  589. package/lib/lib/redis/api.js +62 -67
  590. package/lib/lib/releases/output.js +1 -1
  591. package/lib/lib/releases/status_helper.d.ts +1 -1
  592. package/lib/lib/releases/status_helper.js +16 -8
  593. package/lib/lib/run/colorize.js +73 -40
  594. package/lib/lib/run/dyno.d.ts +19 -19
  595. package/lib/lib/run/dyno.js +181 -174
  596. package/lib/lib/run/helpers.d.ts +25 -0
  597. package/lib/lib/run/helpers.js +119 -3
  598. package/lib/lib/run/log-displayer.d.ts +3 -3
  599. package/lib/lib/run/log-displayer.js +21 -21
  600. package/lib/lib/spaces/format.js +36 -23
  601. package/lib/lib/spaces/hosts.d.ts +9 -1
  602. package/lib/lib/spaces/hosts.js +28 -41
  603. package/lib/lib/spaces/peering.d.ts +4 -1
  604. package/lib/lib/spaces/peering.js +45 -52
  605. package/lib/lib/spaces/spaces.d.ts +6 -1
  606. package/lib/lib/spaces/spaces.js +30 -39
  607. package/lib/lib/spaces/vpn-connections.js +16 -16
  608. package/lib/lib/telemetry/util.d.ts +1 -1
  609. package/lib/lib/telemetry/util.js +3 -3
  610. package/lib/lib/types/completion.d.ts +15 -0
  611. package/lib/lib/utils/packageParser.js +2 -2
  612. package/lib/lib/utils/uuid-validate.js +1 -3
  613. package/lib/lib/webhooks/base.d.ts +2 -2
  614. package/lib/lib/webhooks/base.js +3 -3
  615. package/lib/nls-data.d.ts +10 -0
  616. package/lib/nls-data.js +10 -0
  617. package/lib/nls.d.ts +1 -1
  618. package/lib/nls.js +1 -1
  619. package/npm-shrinkwrap.json +17653 -18259
  620. package/oclif.manifest.json +8433 -2271
  621. package/package.json +26 -237
  622. package/lib/lib/pg/bastion.js +0 -137
  623. package/lib/lib/pg/config.d.ts +0 -2
  624. package/lib/lib/pg/config.js +0 -9
  625. package/lib/lib/pg/host.d.ts +0 -1
  626. package/lib/lib/pg/host.js +0 -3
  627. package/lib/lib/spaces/outbound-rules.js +0 -85
  628. package/lib/oldCommands/autocomplete/create.d.ts +0 -1
  629. package/lib/oldCommands/autocomplete/create.js +0 -254
  630. package/lib/oldCommands/autocomplete/doctor.d.ts +0 -1
  631. package/lib/oldCommands/autocomplete/doctor.js +0 -110
  632. package/lib/oldCommands/autocomplete/index.d.ts +0 -1
  633. package/lib/oldCommands/autocomplete/index.js +0 -80
  634. package/lib/oldCommands/autocomplete/options.d.ts +0 -1
  635. package/lib/oldCommands/autocomplete/options.js +0 -240
  636. package/lib/oldCommands/autocomplete/script.d.ts +0 -1
  637. package/lib/oldCommands/autocomplete/script.js +0 -35
  638. package/lib/oldCommands/pg/backups/cancel.d.ts +0 -1
  639. package/lib/oldCommands/pg/backups/cancel.js +0 -56
  640. package/lib/oldCommands/pg/backups/capture.d.ts +0 -1
  641. package/lib/oldCommands/pg/backups/capture.js +0 -77
  642. package/lib/oldCommands/pg/backups/delete.d.ts +0 -1
  643. package/lib/oldCommands/pg/backups/delete.js +0 -45
  644. package/lib/oldCommands/pg/backups/download.d.ts +0 -1
  645. package/lib/oldCommands/pg/backups/download.js +0 -64
  646. package/lib/oldCommands/pg/backups/index.d.ts +0 -1
  647. package/lib/oldCommands/pg/backups/index.js +0 -141
  648. package/lib/oldCommands/pg/backups/info.d.ts +0 -1
  649. package/lib/oldCommands/pg/backups/info.js +0 -102
  650. package/lib/oldCommands/pg/backups/restore.d.ts +0 -1
  651. package/lib/oldCommands/pg/backups/restore.js +0 -150
  652. package/lib/oldCommands/pg/backups/schedule.d.ts +0 -1
  653. package/lib/oldCommands/pg/backups/schedule.js +0 -107
  654. package/lib/oldCommands/pg/backups/schedules.d.ts +0 -1
  655. package/lib/oldCommands/pg/backups/schedules.js +0 -34
  656. package/lib/oldCommands/pg/backups/unschedule.d.ts +0 -1
  657. package/lib/oldCommands/pg/backups/unschedule.js +0 -60
  658. package/lib/oldCommands/pg/backups/url.d.ts +0 -1
  659. package/lib/oldCommands/pg/backups/url.js +0 -46
  660. package/lib/oldCommands/pg/bloat.d.ts +0 -1
  661. package/lib/oldCommands/pg/blocking.d.ts +0 -1
  662. package/lib/oldCommands/pg/blocking.js +0 -48
  663. package/lib/oldCommands/pg/connection-pooling/attach.d.ts +0 -1
  664. package/lib/oldCommands/pg/connection-pooling/attach.js +0 -53
  665. package/lib/oldCommands/pg/copy.d.ts +0 -1
  666. package/lib/oldCommands/pg/copy.js +0 -104
  667. package/lib/oldCommands/pg/credentials/create.d.ts +0 -1
  668. package/lib/oldCommands/pg/credentials/create.js +0 -47
  669. package/lib/oldCommands/pg/credentials/destroy.d.ts +0 -1
  670. package/lib/oldCommands/pg/credentials/destroy.js +0 -56
  671. package/lib/oldCommands/pg/credentials/repair-default.d.ts +0 -1
  672. package/lib/oldCommands/pg/credentials/repair-default.js +0 -43
  673. package/lib/oldCommands/pg/credentials/rotate.d.ts +0 -1
  674. package/lib/oldCommands/pg/credentials/rotate.js +0 -97
  675. package/lib/oldCommands/pg/credentials/url.d.ts +0 -1
  676. package/lib/oldCommands/pg/credentials/url.js +0 -75
  677. package/lib/oldCommands/pg/credentials.d.ts +0 -1
  678. package/lib/oldCommands/pg/credentials.js +0 -77
  679. package/lib/oldCommands/pg/diagnose.d.ts +0 -1
  680. package/lib/oldCommands/pg/diagnose.js +0 -136
  681. package/lib/oldCommands/pg/info.d.ts +0 -1
  682. package/lib/oldCommands/pg/info.js +0 -110
  683. package/lib/oldCommands/pg/kill.d.ts +0 -1
  684. package/lib/oldCommands/pg/kill.js +0 -37
  685. package/lib/oldCommands/pg/killall.d.ts +0 -1
  686. package/lib/oldCommands/pg/killall.js +0 -31
  687. package/lib/oldCommands/pg/links/create.d.ts +0 -1
  688. package/lib/oldCommands/pg/links/create.js +0 -70
  689. package/lib/oldCommands/pg/links/destroy.d.ts +0 -1
  690. package/lib/oldCommands/pg/links/destroy.js +0 -51
  691. package/lib/oldCommands/pg/links/index.d.ts +0 -1
  692. package/lib/oldCommands/pg/links/index.js +0 -64
  693. package/lib/oldCommands/pg/locks.d.ts +0 -1
  694. package/lib/oldCommands/pg/locks.js +0 -60
  695. package/lib/oldCommands/pg/maintenance/index.d.ts +0 -1
  696. package/lib/oldCommands/pg/maintenance/index.js +0 -34
  697. package/lib/oldCommands/pg/maintenance/run.d.ts +0 -1
  698. package/lib/oldCommands/pg/maintenance/run.js +0 -44
  699. package/lib/oldCommands/pg/maintenance/window.d.ts +0 -1
  700. package/lib/oldCommands/pg/maintenance/window.js +0 -52
  701. package/lib/oldCommands/pg/outliers.d.ts +0 -1
  702. package/lib/oldCommands/pg/outliers.js +0 -110
  703. package/lib/oldCommands/pg/promote.d.ts +0 -1
  704. package/lib/oldCommands/pg/promote.js +0 -183
  705. package/lib/oldCommands/pg/ps.d.ts +0 -1
  706. package/lib/oldCommands/pg/ps.js +0 -56
  707. package/lib/oldCommands/pg/psql.d.ts +0 -1
  708. package/lib/oldCommands/pg/psql.js +0 -53
  709. package/lib/oldCommands/pg/pull.d.ts +0 -1
  710. package/lib/oldCommands/pg/pull.js +0 -114
  711. package/lib/oldCommands/pg/push.d.ts +0 -1
  712. package/lib/oldCommands/pg/push.js +0 -111
  713. package/lib/oldCommands/pg/reset.d.ts +0 -1
  714. package/lib/oldCommands/pg/reset.js +0 -49
  715. package/lib/oldCommands/pg/settings/auto-explain/log-analyze.d.ts +0 -1
  716. package/lib/oldCommands/pg/settings/auto-explain/log-analyze.js +0 -37
  717. package/lib/oldCommands/pg/settings/auto-explain/log-buffers.d.ts +0 -1
  718. package/lib/oldCommands/pg/settings/auto-explain/log-buffers.js +0 -35
  719. package/lib/oldCommands/pg/settings/auto-explain/log-format.d.ts +0 -1
  720. package/lib/oldCommands/pg/settings/auto-explain/log-format.js +0 -30
  721. package/lib/oldCommands/pg/settings/auto-explain/log-min-duration.d.ts +0 -1
  722. package/lib/oldCommands/pg/settings/auto-explain/log-min-duration.js +0 -39
  723. package/lib/oldCommands/pg/settings/auto-explain/log-nested-statements.d.ts +0 -1
  724. package/lib/oldCommands/pg/settings/auto-explain/log-nested-statements.js +0 -30
  725. package/lib/oldCommands/pg/settings/auto-explain/log-triggers.d.ts +0 -1
  726. package/lib/oldCommands/pg/settings/auto-explain/log-triggers.js +0 -35
  727. package/lib/oldCommands/pg/settings/auto-explain/log-verbose.d.ts +0 -1
  728. package/lib/oldCommands/pg/settings/auto-explain/log-verbose.js +0 -40
  729. package/lib/oldCommands/pg/settings/auto-explain.d.ts +0 -1
  730. package/lib/oldCommands/pg/settings/auto-explain.js +0 -45
  731. package/lib/oldCommands/pg/settings/data-connector-details-logs.d.ts +0 -1
  732. package/lib/oldCommands/pg/settings/data-connector-details-logs.js +0 -40
  733. package/lib/oldCommands/pg/settings/index.d.ts +0 -1
  734. package/lib/oldCommands/pg/settings/index.js +0 -41
  735. package/lib/oldCommands/pg/settings/log-connections.d.ts +0 -1
  736. package/lib/oldCommands/pg/settings/log-connections.js +0 -40
  737. package/lib/oldCommands/pg/settings/log-lock-waits.d.ts +0 -1
  738. package/lib/oldCommands/pg/settings/log-lock-waits.js +0 -36
  739. package/lib/oldCommands/pg/settings/log-min-duration-statement.d.ts +0 -1
  740. package/lib/oldCommands/pg/settings/log-min-duration-statement.js +0 -39
  741. package/lib/oldCommands/pg/settings/log-min-error-statement.d.ts +0 -1
  742. package/lib/oldCommands/pg/settings/log-min-error-statement.js +0 -31
  743. package/lib/oldCommands/pg/settings/log-statement.d.ts +0 -1
  744. package/lib/oldCommands/pg/settings/log-statement.js +0 -33
  745. package/lib/oldCommands/pg/settings/track-functions.d.ts +0 -1
  746. package/lib/oldCommands/pg/settings/track-functions.js +0 -33
  747. package/lib/oldCommands/pg/unfollow.d.ts +0 -1
  748. package/lib/oldCommands/pg/unfollow.js +0 -46
  749. package/lib/oldCommands/pg/upgrade/cancel.d.ts +0 -1
  750. package/lib/oldCommands/pg/upgrade/cancel.js +0 -62
  751. package/lib/oldCommands/pg/upgrade/dryrun.d.ts +0 -1
  752. package/lib/oldCommands/pg/upgrade/dryrun.js +0 -62
  753. package/lib/oldCommands/pg/upgrade/index.d.ts +0 -1
  754. package/lib/oldCommands/pg/upgrade/index.js +0 -85
  755. package/lib/oldCommands/pg/upgrade/prepare.d.ts +0 -1
  756. package/lib/oldCommands/pg/upgrade/prepare.js +0 -64
  757. package/lib/oldCommands/pg/upgrade/run.d.ts +0 -1
  758. package/lib/oldCommands/pg/upgrade/run.js +0 -106
  759. package/lib/oldCommands/pg/upgrade/wait.d.ts +0 -1
  760. package/lib/oldCommands/pg/upgrade/wait.js +0 -121
  761. package/lib/oldCommands/pg/upgrade.d.ts +0 -1
  762. package/lib/oldCommands/pg/upgrade.js +0 -66
  763. package/lib/oldCommands/pg/vacuum-stats.d.ts +0 -1
  764. package/lib/oldCommands/pg/wait.d.ts +0 -1
  765. package/lib/oldCommands/pg/wait.js +0 -96
  766. package/lib/oldCommands/pipelines/open.d.ts +0 -1
  767. package/lib/oldCommands/pipelines/open.js +0 -25
  768. package/lib/oldCommands/pipelines/promote.d.ts +0 -1
  769. package/lib/oldCommands/pipelines/promote.js +0 -269
  770. package/lib/oldCommands/pipelines/remove.d.ts +0 -1
  771. package/lib/oldCommands/pipelines/remove.js +0 -29
  772. package/lib/oldCommands/pipelines/rename.d.ts +0 -1
  773. package/lib/oldCommands/pipelines/rename.js +0 -42
  774. package/lib/oldCommands/pipelines/setup.d.ts +0 -1
  775. package/lib/oldCommands/pipelines/setup.js +0 -117
  776. package/lib/oldCommands/pipelines/transfer.d.ts +0 -1
  777. package/lib/oldCommands/pipelines/transfer.js +0 -78
  778. package/lib/oldCommands/pipelines/update.d.ts +0 -1
  779. package/lib/oldCommands/pipelines/update.js +0 -39
  780. package/lib/oldCommands/ps/autoscale/disable.d.ts +0 -1
  781. package/lib/oldCommands/ps/autoscale/disable.js +0 -43
  782. package/lib/oldCommands/ps/autoscale/enable.d.ts +0 -1
  783. package/lib/oldCommands/ps/autoscale/enable.js +0 -103
  784. package/lib/oldCommands/ps/index.d.ts +0 -1
  785. package/lib/oldCommands/ps/index.js +0 -254
  786. package/lib/oldCommands/ps/restart.d.ts +0 -1
  787. package/lib/oldCommands/ps/restart.js +0 -78
  788. package/lib/oldCommands/ps/scale.d.ts +0 -1
  789. package/lib/oldCommands/ps/scale.js +0 -95
  790. package/lib/oldCommands/ps/stop.d.ts +0 -1
  791. package/lib/oldCommands/ps/stop.js +0 -73
  792. package/lib/oldCommands/ps/type.d.ts +0 -1
  793. package/lib/oldCommands/ps/type.js +0 -190
  794. package/lib/oldCommands/ps/wait.d.ts +0 -1
  795. package/lib/oldCommands/ps/wait.js +0 -93
  796. package/lib/oldCommands/releases/index.d.ts +0 -1
  797. package/lib/oldCommands/releases/index.js +0 -156
  798. package/lib/oldCommands/releases/info.d.ts +0 -1
  799. package/lib/oldCommands/releases/info.js +0 -68
  800. package/lib/oldCommands/releases/output.d.ts +0 -1
  801. package/lib/oldCommands/releases/output.js +0 -42
  802. package/lib/oldCommands/releases/retry.d.ts +0 -1
  803. package/lib/oldCommands/releases/retry.js +0 -59
  804. package/lib/oldCommands/releases/rollback.d.ts +0 -1
  805. package/lib/oldCommands/releases/rollback.js +0 -65
  806. package/lib/oldCommands/run/detached.d.ts +0 -1
  807. package/lib/oldCommands/run/detached.js +0 -61
  808. package/lib/oldCommands/run/index.d.ts +0 -1
  809. package/lib/oldCommands/run/index.js +0 -72
  810. package/lib/oldCommands/run/inside.d.ts +0 -1
  811. package/lib/oldCommands/run/inside.js +0 -93
  812. package/lib/oldCommands/spaces/create.d.ts +0 -1
  813. package/lib/oldCommands/spaces/create.js +0 -99
  814. package/lib/oldCommands/spaces/destroy.d.ts +0 -1
  815. package/lib/oldCommands/spaces/destroy.js +0 -79
  816. package/lib/oldCommands/spaces/drains/get.d.ts +0 -1
  817. package/lib/oldCommands/spaces/drains/get.js +0 -33
  818. package/lib/oldCommands/spaces/drains/set.d.ts +0 -1
  819. package/lib/oldCommands/spaces/drains/set.js +0 -33
  820. package/lib/oldCommands/spaces/hosts.d.ts +0 -1
  821. package/lib/oldCommands/spaces/hosts.js +0 -42
  822. package/lib/oldCommands/spaces/index.d.ts +0 -1
  823. package/lib/oldCommands/spaces/index.js +0 -74
  824. package/lib/oldCommands/spaces/info.d.ts +0 -1
  825. package/lib/oldCommands/spaces/info.js +0 -59
  826. package/lib/oldCommands/spaces/peerings/accept.d.ts +0 -1
  827. package/lib/oldCommands/spaces/peerings/accept.js +0 -41
  828. package/lib/oldCommands/spaces/peerings/destroy.d.ts +0 -1
  829. package/lib/oldCommands/spaces/peerings/destroy.js +0 -51
  830. package/lib/oldCommands/spaces/peerings/index.d.ts +0 -1
  831. package/lib/oldCommands/spaces/peerings/index.js +0 -39
  832. package/lib/oldCommands/spaces/peerings/info.d.ts +0 -1
  833. package/lib/oldCommands/spaces/ps.d.ts +0 -1
  834. package/lib/oldCommands/spaces/ps.js +0 -97
  835. package/lib/oldCommands/spaces/rename.d.ts +0 -1
  836. package/lib/oldCommands/spaces/rename.js +0 -29
  837. package/lib/oldCommands/spaces/topology.d.ts +0 -1
  838. package/lib/oldCommands/spaces/topology.js +0 -95
  839. package/lib/oldCommands/spaces/transfer.d.ts +0 -1
  840. package/lib/oldCommands/spaces/transfer.js +0 -37
  841. package/lib/oldCommands/spaces/trusted-ips/add.d.ts +0 -1
  842. package/lib/oldCommands/spaces/trusted-ips/add.js +0 -48
  843. package/lib/oldCommands/spaces/trusted-ips/index.d.ts +0 -1
  844. package/lib/oldCommands/spaces/trusted-ips/index.js +0 -57
  845. package/lib/oldCommands/spaces/trusted-ips/remove.d.ts +0 -1
  846. package/lib/oldCommands/spaces/trusted-ips/remove.js +0 -50
  847. package/lib/oldCommands/spaces/vpn/config.d.ts +0 -1
  848. package/lib/oldCommands/spaces/vpn/config.js +0 -61
  849. package/lib/oldCommands/spaces/vpn/connect.d.ts +0 -1
  850. package/lib/oldCommands/spaces/vpn/connect.js +0 -54
  851. package/lib/oldCommands/spaces/vpn/connections.d.ts +0 -1
  852. package/lib/oldCommands/spaces/vpn/connections.js +0 -70
  853. package/lib/oldCommands/spaces/vpn/destroy.d.ts +0 -1
  854. package/lib/oldCommands/spaces/vpn/destroy.js +0 -48
  855. package/lib/oldCommands/spaces/vpn/info.d.ts +0 -1
  856. package/lib/oldCommands/spaces/vpn/info.js +0 -89
  857. package/lib/oldCommands/spaces/vpn/update.d.ts +0 -1
  858. package/lib/oldCommands/spaces/vpn/update.js +0 -46
  859. package/lib/oldCommands/spaces/vpn/wait.d.ts +0 -1
  860. package/lib/oldCommands/spaces/vpn/wait.js +0 -80
  861. package/lib/oldCommands/spaces/wait.d.ts +0 -1
  862. package/lib/oldCommands/spaces/wait.js +0 -106
  863. package/lib/package.nls.json +0 -6
  864. /package/lib/lib/{pg/bastion.d.ts → data-scrubber/types.js} +0 -0
  865. /package/lib/lib/{spaces/outbound-rules.d.ts → types/completion.js} +0 -0
@@ -1,8 +1,7 @@
1
- import { color } from '@heroku-cli/color';
1
+ import { color, hux } from '@heroku/heroku-cli-util';
2
+ import { HTTP } from '@heroku/http-call';
2
3
  import { Command, Flags, ux } from '@oclif/core';
3
- import { hux } from '@heroku/heroku-cli-util';
4
4
  import { formatDistanceToNow } from 'date-fns';
5
- import { HTTP } from '@heroku/http-call';
6
5
  import { getMaxUpdateTypeLength } from '../lib/status/util.js';
7
6
  const capitalize = (str) => str.charAt(0).toUpperCase() + str.slice(1);
8
7
  const errorMessage = 'Heroku platform status is unavailable at this time. Refer to https://status.salesforce.com/products/Heroku or try again later.';
@@ -67,27 +66,27 @@ const formatTrustResponse = (instances, activeIncidents, maintenances, localizat
67
66
  const dataIncidents = herokuActiveIncidents.filter(incident => incident.serviceKeys.includes('HerokuData') || incident.serviceKeys.includes('Data'));
68
67
  if (appsIncidents.length > 0) {
69
68
  const severity = determineIncidentSeverity(appsIncidents);
70
- systemStatus.push({ system: 'Apps', status: severity });
69
+ systemStatus.push({ status: severity, system: 'Apps' });
71
70
  incidents.push(...appsIncidents);
72
71
  }
73
72
  else {
74
- systemStatus.push({ system: 'Apps', status: 'green' });
73
+ systemStatus.push({ status: 'green', system: 'Apps' });
75
74
  }
76
75
  if (dataIncidents.length > 0) {
77
76
  const severity = determineIncidentSeverity(dataIncidents);
78
- systemStatus.push({ system: 'Data', status: severity });
77
+ systemStatus.push({ status: severity, system: 'Data' });
79
78
  incidents.push(...dataIncidents);
80
79
  }
81
80
  else {
82
- systemStatus.push({ system: 'Data', status: 'green' });
81
+ systemStatus.push({ status: 'green', system: 'Data' });
83
82
  }
84
83
  if (toolsIncidents.length > 0) {
85
84
  const severity = determineIncidentSeverity(toolsIncidents);
86
- systemStatus.push({ system: 'Tools', status: severity });
85
+ systemStatus.push({ status: severity, system: 'Tools' });
87
86
  incidents.push(...toolsIncidents);
88
87
  }
89
88
  else {
90
- systemStatus.push({ system: 'Tools', status: 'green' });
89
+ systemStatus.push({ status: 'green', system: 'Tools' });
91
90
  }
92
91
  if (maintenances.length > 0)
93
92
  scheduled.push(...maintenances);
@@ -98,11 +97,13 @@ const formatTrustResponse = (instances, activeIncidents, maintenances, localizat
98
97
  });
99
98
  });
100
99
  }
100
+ /* eslint-disable perfectionist/sort-objects */
101
101
  return {
102
102
  status: systemStatus,
103
103
  incidents,
104
104
  scheduled,
105
105
  };
106
+ /* eslint-enable perfectionist/sort-objects */
106
107
  };
107
108
  export default class Status extends Command {
108
109
  static description = 'display current status of the Heroku platform';
@@ -148,10 +149,10 @@ export default class Status extends Command {
148
149
  if (herokuStatus) {
149
150
  for (const incident of herokuStatus.incidents) {
150
151
  ux.stdout();
151
- hux.styledHeader(`${incident.title} ${color.yellow(incident.created_at)} ${color.cyan(incident.full_url)}`);
152
+ hux.styledHeader(`${incident.title} ${color.warning(incident.created_at)} ${color.info(incident.full_url)}`);
152
153
  const padding = getMaxUpdateTypeLength(incident.updates.map(update => update.update_type));
153
154
  for (const u of incident.updates) {
154
- ux.stdout(`${color.yellow(u.update_type.padEnd(padding))} ${new Date(u.updated_at).toISOString()} (${formatDistanceToNow(new Date(u.updated_at))} ago)`);
155
+ ux.stdout(`${color.warning(u.update_type.padEnd(padding))} ${new Date(u.updated_at).toISOString()} (${formatDistanceToNow(new Date(u.updated_at))} ago)`);
155
156
  ux.stdout(`${u.contents}\n`);
156
157
  }
157
158
  }
@@ -159,11 +160,11 @@ export default class Status extends Command {
159
160
  else if (formattedTrustStatus) {
160
161
  for (const incident of formattedTrustStatus.incidents) {
161
162
  ux.stdout();
162
- hux.styledHeader(`${incident.id} ${color.yellow(incident.createdAt)} ${color.cyan(`https://status.salesforce.com/incidents/${incident.id}`)}`);
163
+ hux.styledHeader(`${incident.id} ${color.warning(incident.createdAt)} ${color.info(`https://status.salesforce.com/incidents/${incident.id}`)}`);
163
164
  const padding = getMaxUpdateTypeLength(incident.IncidentEvents.map(event => event.localizedType ?? event.type));
164
165
  for (const event of incident.IncidentEvents) {
165
166
  const eventType = event.localizedType ?? event.type;
166
- ux.stdout(`${color.yellow(eventType.padEnd(padding))} ${new Date(event.createdAt).toISOString()} (${formatDistanceToNow(new Date(event.createdAt))} ago)`);
167
+ ux.stdout(`${color.warning(eventType.padEnd(padding))} ${new Date(event.createdAt).toISOString()} (${formatDistanceToNow(new Date(event.createdAt))} ago)`);
167
168
  ux.stdout(`${event.message}\n`);
168
169
  }
169
170
  }
@@ -1,9 +1,9 @@
1
1
  import { Command } from '@heroku-cli/command';
2
2
  export default class Index extends Command {
3
- static topic: string;
4
3
  static description: string;
5
4
  static flags: {
6
5
  json: import("@oclif/core/interfaces").BooleanFlag<boolean>;
7
6
  };
7
+ static topic: string;
8
8
  run(): Promise<void>;
9
9
  }
@@ -1,12 +1,11 @@
1
- import { color } from '@heroku-cli/color';
1
+ import { color, hux } from '@heroku/heroku-cli-util';
2
2
  import { Command, flags } from '@heroku-cli/command';
3
- import { hux } from '@heroku/heroku-cli-util';
4
3
  export default class Index extends Command {
5
- static topic = 'teams';
6
- static description = `list the teams that you are a member of\n\nUse ${color.cmd('heroku members:*')} to manage team members.`;
4
+ static description = `list the teams that you are a member of\n\nUse ${color.code('heroku members:*')} to manage team members.`;
7
5
  static flags = {
8
6
  json: flags.boolean({ description: 'output in json format' }),
9
7
  };
8
+ static topic = 'teams';
10
9
  async run() {
11
10
  const { flags } = await this.parse(Index);
12
11
  const { body: teams } = await this.heroku.get('/teams');
@@ -19,7 +18,7 @@ export default class Index extends Command {
19
18
  return (aName > bName) ? 1 : ((bName > aName) ? -1 : 0);
20
19
  }), {
21
20
  name: { header: 'Team' },
22
- role: { header: 'Role', get: ({ role }) => color.green(role || '') },
21
+ role: { get: ({ role }) => color.info(role || ''), header: 'Role' },
23
22
  });
24
23
  }
25
24
  }
@@ -1,16 +1,17 @@
1
1
  import { Command } from '@heroku-cli/command';
2
2
  export default class Add extends Command {
3
+ static args: {
4
+ endpoint: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
5
+ };
3
6
  static description: string;
7
+ static example: string;
4
8
  static flags: {
5
9
  app: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
6
10
  headers: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
- space: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
11
  signals: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
12
+ space: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
13
  transport: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
10
14
  };
11
- static args: {
12
- endpoint: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
13
- };
14
- static example: string;
15
15
  run(): Promise<void>;
16
+ private getExporterType;
16
17
  }
@@ -1,28 +1,40 @@
1
+ import { color } from '@heroku/heroku-cli-util';
1
2
  import { Command, flags as Flags } from '@heroku-cli/command';
2
3
  import { Args, ux } from '@oclif/core';
3
4
  import tsheredoc from 'tsheredoc';
4
5
  import { validateAndFormatSignals } from '../../lib/telemetry/util.js';
5
6
  const heredoc = tsheredoc.default;
6
7
  export default class Add extends Command {
8
+ static args = {
9
+ endpoint: Args.string({ description: 'drain url', required: true }),
10
+ };
7
11
  static description = 'Add and configure a new telemetry drain. Defaults to collecting all telemetry unless otherwise specified.';
12
+ /* eslint-disable quotes */
13
+ static example = heredoc `
14
+ Add a telemetry drain to an app to collect logs and traces:
15
+
16
+ ${color.command(`heroku telemetry:add https://my-endpoint.com --app myapp --signals logs,traces --headers '{"x-drain-example-team": "API_KEY", "x-drain-example-dataset": "METRICS_DATASET"}'`)}
17
+ `;
8
18
  static flags = {
9
- app: Flags.string({ char: 'a', exactlyOne: ['app', 'space'], description: 'app to add a drain to' }),
19
+ app: Flags.string({ char: 'a', description: 'app to add a drain to', exactlyOne: ['app', 'space'] }),
10
20
  headers: Flags.string({ description: 'custom headers to configure the drain in json format' }),
11
- space: Flags.string({ char: 's', description: 'space to add a drain to' }),
12
21
  signals: Flags.string({ default: 'all', description: 'comma-delimited list of signals to collect (traces, metrics, logs). Use "all" to collect all signals.' }),
13
- transport: Flags.string({ default: 'http', options: ['http', 'grpc'], description: 'transport protocol for the drain' }),
14
- };
15
- static args = {
16
- endpoint: Args.string({ required: true, description: 'drain url' }),
22
+ space: Flags.string({ char: 's', description: 'space to add a drain to' }),
23
+ // If splunk transport is accepted as a feature, this should have options: ['http', 'grpc', 'splunk']
24
+ transport: Flags.string({ default: 'http', description: 'transport protocol for the drain' }),
17
25
  };
18
- static example = heredoc(`
19
- Add a telemetry drain to an app to collect logs and traces:
20
- $ heroku telemetry:add https://my-endpoint.com --app myapp --signals logs,traces --headers '{"x-drain-example-team": "API_KEY", "x-drain-example-dataset": "METRICS_DATASET"}'
21
- `);
26
+ /* eslint-enable quotes */
22
27
  async run() {
23
- const { flags, args } = await this.parse(Add);
24
- const { app, headers, space, signals, transport } = flags;
28
+ const { args, flags } = await this.parse(Add);
29
+ const { app, headers, signals, space, transport } = flags;
25
30
  const { endpoint } = args;
31
+ // Allow splunk, but do not show splunk in error message until splunk transport is accepted as a feature
32
+ // When splunk transport is accepted as a feature, and options are added for the transport flag, this section should be removed
33
+ const publicTransports = ['http', 'grpc'];
34
+ const validTransports = [...publicTransports, 'splunk'];
35
+ if (!validTransports.includes(transport)) {
36
+ throw new Error(`Expected --transport=${transport} to be one of: ${publicTransports.join(', ')}`);
37
+ }
26
38
  let id;
27
39
  if (app) {
28
40
  const { body: herokuApp } = await this.heroku.get(`/apps/${app}`, {
@@ -36,16 +48,16 @@ export default class Add extends Command {
36
48
  }
37
49
  const exporterHeaders = headers || '{}';
38
50
  const drainConfig = {
39
- owner: {
40
- type: app ? 'app' : 'space',
41
- id,
42
- },
43
- signals: validateAndFormatSignals(signals),
44
51
  exporter: {
45
52
  endpoint,
46
- type: (transport === 'grpc') ? 'otlp' : 'otlphttp',
47
53
  headers: JSON.parse(exporterHeaders),
54
+ type: this.getExporterType(transport),
55
+ },
56
+ owner: {
57
+ id,
58
+ type: app ? 'app' : 'space',
48
59
  },
60
+ signals: validateAndFormatSignals(signals),
49
61
  };
50
62
  const { body: drain } = await this.heroku.post('/telemetry-drains', {
51
63
  body: drainConfig,
@@ -55,4 +67,17 @@ export default class Add extends Command {
55
67
  });
56
68
  ux.stdout(`successfully added drain ${drain.exporter.endpoint}`);
57
69
  }
70
+ getExporterType(transport) {
71
+ switch (transport) {
72
+ case 'grpc': {
73
+ return 'otlp';
74
+ }
75
+ case 'splunk': {
76
+ return 'splunk';
77
+ }
78
+ default: {
79
+ return 'otlphttp';
80
+ }
81
+ }
82
+ }
58
83
  }
@@ -1,13 +1,13 @@
1
1
  import { Command } from '@heroku-cli/command';
2
2
  import { TelemetryDrains } from '../../lib/types/telemetry.js';
3
3
  export default class Index extends Command {
4
- static topic: string;
5
4
  static description: string;
5
+ static example: string;
6
6
  static flags: {
7
- space: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
7
  app: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ space: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
9
  };
10
- static example: string;
11
- run(): Promise<void>;
10
+ static topic: string;
12
11
  protected display(telemetryDrains: TelemetryDrains, owner: string | undefined): void;
12
+ run(): Promise<void>;
13
13
  }
@@ -1,14 +1,29 @@
1
+ import { color, hux } from '@heroku/heroku-cli-util';
1
2
  import { Command, flags as Flags } from '@heroku-cli/command';
2
3
  import { ux } from '@oclif/core';
3
- import { hux } from '@heroku/heroku-cli-util';
4
4
  export default class Index extends Command {
5
- static topic = 'telemetry';
6
5
  static description = 'list telemetry drains';
6
+ static example = `${color.command('heroku telemetry')}`;
7
7
  static flags = {
8
- space: Flags.string({ char: 's', description: 'filter by space name', exactlyOne: ['app', 'space'] }),
9
8
  app: Flags.string({ char: 'a', description: 'filter by app name' }),
9
+ space: Flags.string({ char: 's', description: 'filter by space name', exactlyOne: ['app', 'space'] }),
10
10
  };
11
- static example = '$ heroku telemetry';
11
+ static topic = 'telemetry';
12
+ display(telemetryDrains, owner) {
13
+ if (telemetryDrains.length === 0) {
14
+ ux.stdout(`There are no telemetry drains in ${owner}`);
15
+ }
16
+ else {
17
+ hux.styledHeader(`${owner} Telemetry Drains`);
18
+ /* eslint-disable perfectionist/sort-objects */
19
+ hux.table(telemetryDrains, {
20
+ ID: { get: telemetryDrain => telemetryDrain.id },
21
+ Signals: { get: telemetryDrain => telemetryDrain.signals },
22
+ Endpoint: { get: telemetryDrain => telemetryDrain.exporter.endpoint },
23
+ });
24
+ /* eslint-enable perfectionist/sort-objects */
25
+ }
26
+ }
12
27
  async run() {
13
28
  const { flags } = await this.parse(Index);
14
29
  const { app, space } = flags;
@@ -31,17 +46,4 @@ export default class Index extends Command {
31
46
  }
32
47
  this.display(drains, app || space);
33
48
  }
34
- display(telemetryDrains, owner) {
35
- if (telemetryDrains.length === 0) {
36
- ux.stdout(`There are no telemetry drains in ${owner}`);
37
- }
38
- else {
39
- hux.styledHeader(`${owner} Telemetry Drains`);
40
- hux.table(telemetryDrains, {
41
- ID: { get: telemetryDrain => telemetryDrain.id },
42
- Signals: { get: telemetryDrain => telemetryDrain.signals },
43
- Endpoint: { get: telemetryDrain => telemetryDrain.exporter.endpoint },
44
- });
45
- }
46
- }
47
49
  }
@@ -1,10 +1,10 @@
1
1
  import { Command } from '@heroku-cli/command';
2
2
  export default class Info extends Command {
3
- static topic: string;
4
- static description: string;
5
3
  static args: {
6
4
  telemetry_drain_id: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
7
5
  };
6
+ static description: string;
8
7
  static example: string;
8
+ static topic: string;
9
9
  run(): Promise<void>;
10
10
  }
@@ -1,13 +1,14 @@
1
+ import { color } from '@heroku/heroku-cli-util';
1
2
  import { Command } from '@heroku-cli/command';
2
3
  import { Args } from '@oclif/core';
3
4
  import { displayTelemetryDrain } from '../../lib/telemetry/util.js';
4
5
  export default class Info extends Command {
5
- static topic = 'telemetry';
6
- static description = 'show a telemetry drain\'s info';
7
6
  static args = {
8
- telemetry_drain_id: Args.string({ required: true, description: 'ID of the drain to show info for' }),
7
+ telemetry_drain_id: Args.string({ description: 'ID of the drain to show info for', required: true }),
9
8
  };
10
- static example = '$ heroku telemetry:info 022e2e2e-2e2e-2e2e-2e2e-2e2e2e2e2e2e';
9
+ static description = 'show a telemetry drain\'s info';
10
+ static example = `${color.command('heroku telemetry:info 022e2e2e-2e2e-2e2e-2e2e-2e2e2e2e2e2e')}`;
11
+ static topic = 'telemetry';
11
12
  async run() {
12
13
  const { args } = await this.parse(Info);
13
14
  const { telemetry_drain_id } = args;
@@ -1,16 +1,16 @@
1
1
  import { Command } from '@heroku-cli/command';
2
2
  export default class Update extends Command {
3
- static topic: string;
4
- static description: string;
5
3
  static args: {
6
4
  telemetry_drain_id: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
7
5
  };
6
+ static description: string;
7
+ static example: string;
8
8
  static flags: {
9
9
  endpoint: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
10
  headers: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
11
  signals: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
12
  transport: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
13
13
  };
14
- static example: string;
14
+ static topic: string;
15
15
  run(): Promise<void>;
16
16
  }
@@ -1,23 +1,22 @@
1
- import { flags as Flags, Command } from '@heroku-cli/command';
1
+ import { color } from '@heroku/heroku-cli-util';
2
+ import { Command, flags as Flags } from '@heroku-cli/command';
2
3
  import { Args, ux } from '@oclif/core';
3
4
  import tsheredoc from 'tsheredoc';
4
5
  import { displayTelemetryDrain, validateAndFormatSignals } from '../../lib/telemetry/util.js';
5
6
  const heredoc = tsheredoc.default;
6
7
  export default class Update extends Command {
7
- static topic = 'telemetry';
8
- static description = 'updates a telemetry drain with provided attributes (attributes not provided remain unchanged)';
9
8
  static args = {
10
- telemetry_drain_id: Args.string({ required: true, description: 'ID of the drain to update' }),
9
+ telemetry_drain_id: Args.string({ description: 'ID of the drain to update', required: true }),
11
10
  };
11
+ static description = 'updates a telemetry drain with provided attributes (attributes not provided remain unchanged)';
12
+ static example = `${color.command('heroku telemetry:update acde070d-8c4c-4f0d-9d8a-162843c10333 --signals logs,metrics --endpoint https://my-new-endpoint.com')}`;
12
13
  static flags = {
13
14
  endpoint: Flags.string({ description: 'drain url' }),
14
15
  headers: Flags.string({ description: 'custom headers to configure the drain in json format' }),
15
16
  signals: Flags.string({ description: 'comma-delimited list of signals to collect (traces, metrics, logs). Use "all" to collect all signals.' }),
16
- transport: Flags.string({ options: ['http', 'grpc'], description: 'transport protocol for the drain' }),
17
+ transport: Flags.string({ description: 'transport protocol for the drain', options: ['http', 'grpc'] }),
17
18
  };
18
- static example = heredoc(`
19
- $ heroku telemetry:update acde070d-8c4c-4f0d-9d8a-162843c10333 --signals logs,metrics --endpoint https://my-new-endpoint.com
20
- `);
19
+ static topic = 'telemetry';
21
20
  async run() {
22
21
  const { args, flags } = await this.parse(Update);
23
22
  const { telemetry_drain_id } = args;
@@ -47,10 +46,10 @@ export default class Update extends Command {
47
46
  }
48
47
  ux.action.start(`Updating telemetry drain ${telemetry_drain_id}`);
49
48
  const { body: telemetryDrain } = await this.heroku.patch(`/telemetry-drains/${telemetry_drain_id}`, {
49
+ body: drainConfig,
50
50
  headers: {
51
51
  Accept: 'application/vnd.heroku+json; version=3.sdk',
52
52
  },
53
- body: drainConfig,
54
53
  });
55
54
  ux.action.stop();
56
55
  await displayTelemetryDrain(telemetryDrain, this.heroku);
@@ -1,14 +1,14 @@
1
1
  import { Command } from '@heroku-cli/command';
2
2
  export default class UsageAddons extends Command {
3
- static topic: string;
4
3
  static description: string;
5
4
  static flags: {
6
5
  app: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
6
  team: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
8
7
  };
8
+ static topic: string;
9
+ run(): Promise<void>;
9
10
  private displayAppUsage;
10
11
  private fetchAndDisplayAppUsageData;
11
12
  private fetchAndDisplayTeamUsageData;
12
13
  private getAppInfoFromTeamAddons;
13
- run(): Promise<void>;
14
14
  }
@@ -1,14 +1,26 @@
1
+ import { color, hux } from '@heroku/heroku-cli-util';
1
2
  import { Command, flags } from '@heroku-cli/command';
2
3
  import { ux } from '@oclif/core';
3
- import { hux } from '@heroku/heroku-cli-util';
4
- import { color } from '@heroku-cli/color';
5
4
  export default class UsageAddons extends Command {
6
- static topic = 'usage';
7
5
  static description = 'list usage for metered add-ons attached to an app or apps within a team';
8
6
  static flags = {
9
7
  app: flags.string({ char: 'a', description: 'app to list metered add-ons usage for' }),
10
8
  team: flags.team({ description: 'team to list metered add-ons usage for' }),
11
9
  };
10
+ static topic = 'usage';
11
+ async run() {
12
+ const { flags } = await this.parse(UsageAddons);
13
+ const { app, team } = flags;
14
+ if (!app && !team) {
15
+ ux.error('Specify an app with --app or a team with --team');
16
+ }
17
+ if (app) {
18
+ await this.fetchAndDisplayAppUsageData(app, team);
19
+ }
20
+ else if (team) {
21
+ await this.fetchAndDisplayTeamUsageData(team);
22
+ }
23
+ }
12
24
  displayAppUsage(app, usageAddons, appAddons) {
13
25
  const metersArray = usageAddons.flatMap(addon => Object.entries(addon.meters).map(([label, data]) => ({
14
26
  label,
@@ -65,7 +77,7 @@ export default class UsageAddons extends Command {
65
77
  this.displayAppUsage(app, usageAddons, appAddons);
66
78
  }
67
79
  async fetchAndDisplayTeamUsageData(team) {
68
- ux.action.start(`Gathering usage data for ${color.magenta(team)}`);
80
+ ux.action.start(`Gathering usage data for ${color.team(team)}`);
69
81
  const [{ body: usageData }, { body: teamAddons }] = await Promise.all([
70
82
  this.heroku.get(`/teams/${team}/usage`, {
71
83
  headers: {
@@ -77,7 +89,7 @@ export default class UsageAddons extends Command {
77
89
  ux.action.stop();
78
90
  ux.stdout();
79
91
  if (!usageData.apps || usageData.apps.length === 0) {
80
- ux.stdout(`No usage found for team ${color.magenta(team)}`);
92
+ ux.stdout(`No usage found for team ${color.team(team)}`);
81
93
  return;
82
94
  }
83
95
  const appInfoArray = this.getAppInfoFromTeamAddons(teamAddons);
@@ -100,17 +112,4 @@ export default class UsageAddons extends Command {
100
112
  name,
101
113
  }));
102
114
  }
103
- async run() {
104
- const { flags } = await this.parse(UsageAddons);
105
- const { app, team } = flags;
106
- if (!app && !team) {
107
- ux.error('Specify an app with --app or a team with --team');
108
- }
109
- if (app) {
110
- await this.fetchAndDisplayAppUsageData(app, team);
111
- }
112
- else if (team) {
113
- await this.fetchAndDisplayTeamUsageData(team);
114
- }
115
- }
116
115
  }
@@ -56,7 +56,7 @@ export declare function reportCmdNotFound(config: any): {
56
56
  };
57
57
  isVersionOrHelp: boolean;
58
58
  };
59
- export declare function sendTelemetry(currentTelemetry: any, rollbarCb?: () => void): Promise<void>;
59
+ export declare function sendTelemetry(currentTelemetry: any): Promise<void>;
60
60
  export declare function sendToHoneycomb(data: Telemetry | CLIError): Promise<void>;
61
- export declare function sendToRollbar(data: CLIError, rollbarCb?: () => void): Promise<unknown>;
61
+ export declare function sendToSentry(data: CLIError): Promise<void>;
62
62
  export {};
@@ -1,7 +1,11 @@
1
- import Rollbar from 'rollbar';
2
1
  import { APIClient } from '@heroku-cli/command';
3
2
  import { Config } from '@oclif/core';
4
3
  import opentelemetry, { SpanStatusCode } from '@opentelemetry/api';
4
+ import * as Sentry from '@sentry/node';
5
+ import { SentryPropagator, SentrySampler, } from '@sentry/opentelemetry';
6
+ import { GDPR_FIELDS, HEROKU_FIELDS, PCI_FIELDS } from './lib/data-scrubber/presets.js';
7
+ import { Scrubber } from './lib/data-scrubber/scrubber.js';
8
+ import { PII_PATTERNS } from './lib/data-scrubber/patterns.js';
5
9
  import { Resource } from '@opentelemetry/resources';
6
10
  import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions';
7
11
  import { registerInstrumentations } from '@opentelemetry/instrumentation';
@@ -21,21 +25,29 @@ async function getVersion() {
21
25
  const pkg = JSON.parse(await fs.readFile(root, 'utf8'));
22
26
  return pkg.version;
23
27
  }
28
+ const version = await getVersion();
24
29
  function getToken() {
25
30
  const config = new Config({ root });
26
31
  const heroku = new APIClient(config);
27
32
  return heroku.auth;
28
33
  }
29
- const rollbar = new Rollbar({
30
- accessToken: '20783109b0064dbb85be0b2c5a5a5f79',
31
- captureUncaught: true,
32
- captureUnhandledRejections: true,
33
- environment: isDev ? 'development' : 'production',
34
- codeVersion: undefined, // will be set later
35
- });
36
34
  registerInstrumentations({
37
35
  instrumentations: [],
38
36
  });
37
+ const scrubber = new Scrubber({
38
+ fields: [...HEROKU_FIELDS, ...GDPR_FIELDS, ...PCI_FIELDS],
39
+ patterns: [...PII_PATTERNS],
40
+ });
41
+ const sentryClient = Sentry.init({
42
+ dsn: 'https://76530569188e7ee2961373f37951d916@o4508609692368896.ingest.us.sentry.io/4508767754846208',
43
+ environment: isDev ? 'development' : 'production',
44
+ release: version,
45
+ tracesSampleRate: 1,
46
+ beforeSend(event) {
47
+ return scrubber.scrub(event).data;
48
+ },
49
+ skipOpenTelemetrySetup: true, // needed since we have our own OTEL setup
50
+ });
39
51
  const resource = Resource
40
52
  .default()
41
53
  .merge(new Resource({
@@ -44,6 +56,7 @@ const resource = Resource
44
56
  }));
45
57
  const provider = new NodeTracerProvider({
46
58
  resource,
59
+ sampler: sentryClient ? new SentrySampler(sentryClient) : undefined,
47
60
  });
48
61
  // eslint-disable-next-line no-negated-condition, unicorn/no-negated-condition
49
62
  const headers = { Authorization: `Bearer ${process.env.IS_HEROKU_TEST_ENV !== 'true' ? getToken() : ''}` };
@@ -55,7 +68,11 @@ const exporter = new OTLPTraceExporter({
55
68
  export const processor = new BatchSpanProcessor(exporter);
56
69
  provider.addSpanProcessor(processor);
57
70
  export function initializeInstrumentation() {
58
- provider.register();
71
+ provider.register({
72
+ propagator: new SentryPropagator(),
73
+ contextManager: new Sentry.SentryContextManager(),
74
+ });
75
+ // provider.register()
59
76
  }
60
77
  export function setupTelemetry(config, opts) {
61
78
  const now = new Date();
@@ -116,16 +133,16 @@ export function reportCmdNotFound(config) {
116
133
  isVersionOrHelp: false,
117
134
  };
118
135
  }
119
- export async function sendTelemetry(currentTelemetry, rollbarCb) {
120
- // send telemetry to honeycomb and rollbar
136
+ export async function sendTelemetry(currentTelemetry) {
137
+ // send telemetry to honeycomb
121
138
  if (isTelemetryDisabled) {
122
139
  return;
123
140
  }
124
141
  const telemetry = currentTelemetry;
125
142
  if (telemetry instanceof Error) {
126
143
  await Promise.all([
127
- sendToRollbar(telemetry, rollbarCb),
128
144
  sendToHoneycomb(telemetry),
145
+ sendToSentry(telemetry),
129
146
  ]);
130
147
  }
131
148
  else {
@@ -134,7 +151,6 @@ export async function sendTelemetry(currentTelemetry, rollbarCb) {
134
151
  }
135
152
  export async function sendToHoneycomb(data) {
136
153
  try {
137
- const version = await getVersion();
138
154
  const tracer = opentelemetry.trace.getTracer('heroku-cli', version);
139
155
  const span = tracer.startSpan('node_app_execution');
140
156
  if (data instanceof Error) {
@@ -158,37 +174,19 @@ export async function sendToHoneycomb(data) {
158
174
  span.setAttribute('heroku_client.lifecycle_hook.command_not_found', data.lifecycleHookCompletion.command_not_found);
159
175
  }
160
176
  span.end();
161
- processor.forceFlush();
177
+ await processor.forceFlush();
162
178
  }
163
179
  catch {
164
180
  debug('could not send telemetry');
165
181
  }
166
182
  }
167
- export async function sendToRollbar(data, rollbarCb) {
168
- // Make this awaitable so we can wait for it to finish before exiting
169
- let promiseResolve;
170
- const rollbarPromise = new Promise((resolve, reject) => {
171
- promiseResolve = () => {
172
- if (rollbarCb) {
173
- try {
174
- rollbarCb();
175
- }
176
- catch (error) {
177
- reject(error);
178
- }
179
- }
180
- resolve(null);
181
- };
182
- });
183
- const rollbarError = { name: data.name, message: data.message, stack: data.stack, cli_run_duration: data.cliRunDuration };
183
+ export async function sendToSentry(data) {
184
184
  try {
185
- // send data to rollbar
186
- rollbar.error('Failed to complete execution', rollbarError, promiseResolve);
185
+ Sentry.captureException(data);
186
+ // ensures all events are sent to Sentry before exiting.
187
+ await Sentry.flush();
187
188
  }
188
189
  catch {
189
190
  debug('Could not send error report');
190
- // eslint-disable-next-line unicorn/no-useless-promise-resolve-reject
191
- return Promise.reject();
192
191
  }
193
- return rollbarPromise;
194
192
  }
@@ -1,5 +1,5 @@
1
- import * as Heroku from '@heroku-cli/schema';
2
1
  import { APIClient } from '@heroku-cli/command';
2
+ import * as Heroku from '@heroku-cli/schema';
3
3
  export declare const waitForAddonProvisioning: (api: APIClient, addon: Heroku.AddOn, interval: number) => Promise<{
4
4
  [x: string]: any;
5
5
  actions?: {