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.
- package/README.md +17 -2
- package/lib/commands/access/add.d.ts +5 -5
- package/lib/commands/access/add.js +13 -13
- package/lib/commands/access/index.d.ts +2 -2
- package/lib/commands/access/index.js +7 -8
- package/lib/commands/access/remove.d.ts +1 -1
- package/lib/commands/access/remove.js +5 -5
- package/lib/commands/access/update.d.ts +5 -5
- package/lib/commands/access/update.js +9 -9
- package/lib/commands/accounts/add.d.ts +1 -1
- package/lib/commands/accounts/add.js +3 -2
- package/lib/commands/accounts/current.js +4 -5
- package/lib/commands/accounts/index.js +2 -1
- package/lib/commands/accounts/remove.d.ts +1 -1
- package/lib/commands/accounts/remove.js +3 -2
- package/lib/commands/accounts/set.d.ts +1 -1
- package/lib/commands/accounts/set.js +3 -2
- package/lib/commands/addons/attach.d.ts +6 -6
- package/lib/commands/addons/attach.js +14 -14
- package/lib/commands/addons/create.d.ts +9 -10
- package/lib/commands/addons/create.js +31 -29
- package/lib/commands/addons/destroy.d.ts +9 -9
- package/lib/commands/addons/destroy.js +19 -19
- package/lib/commands/addons/detach.d.ts +4 -4
- package/lib/commands/addons/detach.js +9 -9
- package/lib/commands/addons/docs.d.ts +5 -5
- package/lib/commands/addons/docs.js +9 -9
- package/lib/commands/addons/index.d.ts +4 -4
- package/lib/commands/addons/index.js +28 -26
- package/lib/commands/addons/info.d.ts +4 -4
- package/lib/commands/addons/info.js +18 -14
- package/lib/commands/addons/open.d.ts +26 -27
- package/lib/commands/addons/open.js +21 -24
- package/lib/commands/addons/rename.d.ts +2 -2
- package/lib/commands/addons/rename.js +6 -6
- package/lib/commands/addons/services.d.ts +1 -1
- package/lib/commands/addons/services.js +5 -4
- package/lib/commands/addons/upgrade.d.ts +10 -11
- package/lib/commands/addons/upgrade.js +74 -70
- package/lib/commands/addons/wait.d.ts +5 -5
- package/lib/commands/addons/wait.js +10 -10
- package/lib/commands/apps/create.d.ts +12 -12
- package/lib/commands/apps/create.js +50 -58
- package/lib/commands/apps/destroy.d.ts +6 -6
- package/lib/commands/apps/destroy.js +10 -10
- package/lib/commands/apps/errors.d.ts +3 -3
- package/lib/commands/apps/errors.js +24 -12
- package/lib/commands/apps/favorites/add.d.ts +1 -1
- package/lib/commands/apps/favorites/add.js +4 -4
- package/lib/commands/apps/favorites/index.d.ts +1 -1
- package/lib/commands/apps/favorites/index.js +4 -4
- package/lib/commands/apps/favorites/remove.d.ts +1 -1
- package/lib/commands/apps/favorites/remove.js +3 -3
- package/lib/commands/apps/index.d.ts +4 -4
- package/lib/commands/apps/index.js +21 -21
- package/lib/commands/apps/info.d.ts +8 -8
- package/lib/commands/apps/info.js +31 -31
- package/lib/commands/apps/join.d.ts +2 -2
- package/lib/commands/apps/join.js +3 -3
- package/lib/commands/apps/leave.d.ts +1 -1
- package/lib/commands/apps/leave.js +3 -3
- package/lib/commands/apps/lock.d.ts +2 -2
- package/lib/commands/apps/lock.js +5 -5
- package/lib/commands/apps/open.d.ts +5 -5
- package/lib/commands/apps/open.js +11 -9
- package/lib/commands/apps/rename.d.ts +6 -6
- package/lib/commands/apps/rename.js +13 -13
- package/lib/commands/apps/stacks/index.d.ts +2 -2
- package/lib/commands/apps/stacks/index.js +5 -6
- package/lib/commands/apps/stacks/set.d.ts +4 -4
- package/lib/commands/apps/stacks/set.js +9 -9
- package/lib/commands/apps/transfer.d.ts +8 -8
- package/lib/commands/apps/transfer.js +33 -32
- package/lib/commands/apps/unlock.d.ts +2 -2
- package/lib/commands/apps/unlock.js +3 -3
- package/lib/commands/auth/2fa/disable.d.ts +1 -1
- package/lib/commands/auth/2fa/disable.js +3 -2
- package/lib/commands/auth/2fa/index.d.ts +1 -1
- package/lib/commands/auth/2fa/index.js +4 -4
- package/lib/commands/auth/login.d.ts +3 -3
- package/lib/commands/auth/login.js +6 -6
- package/lib/commands/auth/logout.js +1 -0
- package/lib/commands/auth/token.js +4 -2
- package/lib/commands/authorizations/create.js +2 -1
- package/lib/commands/authorizations/index.js +3 -4
- package/lib/commands/authorizations/revoke.d.ts +2 -2
- package/lib/commands/authorizations/revoke.js +6 -6
- package/lib/commands/autocomplete/create.d.ts +29 -0
- package/lib/commands/autocomplete/create.js +223 -0
- package/lib/commands/autocomplete/doctor.d.ts +12 -0
- package/lib/commands/autocomplete/doctor.js +111 -0
- package/lib/commands/autocomplete/index.d.ts +12 -0
- package/lib/commands/autocomplete/index.js +65 -0
- package/lib/commands/autocomplete/options.d.ts +25 -0
- package/lib/commands/autocomplete/options.js +208 -0
- package/lib/commands/autocomplete/script.d.ts +10 -0
- package/lib/commands/autocomplete/script.js +20 -0
- package/lib/commands/buildpacks/index.js +2 -3
- package/lib/commands/buildpacks/remove.d.ts +4 -4
- package/lib/commands/buildpacks/remove.js +9 -8
- package/lib/commands/certs/add.d.ts +8 -8
- package/lib/commands/certs/add.js +27 -29
- package/lib/commands/certs/auto/disable.d.ts +2 -2
- package/lib/commands/certs/auto/disable.js +4 -4
- package/lib/commands/certs/auto/enable.d.ts +2 -2
- package/lib/commands/certs/auto/enable.js +8 -9
- package/lib/commands/certs/auto/index.d.ts +2 -2
- package/lib/commands/certs/auto/index.js +16 -17
- package/lib/commands/certs/generate.d.ts +2 -3
- package/lib/commands/certs/generate.js +1 -2
- package/lib/commands/certs/index.d.ts +1 -1
- package/lib/commands/certs/index.js +3 -3
- package/lib/commands/certs/info.d.ts +4 -4
- package/lib/commands/certs/info.js +6 -6
- package/lib/commands/certs/remove.d.ts +3 -3
- package/lib/commands/certs/remove.js +5 -5
- package/lib/commands/certs/update.d.ts +8 -8
- package/lib/commands/certs/update.js +19 -19
- package/lib/commands/ci/config/get.d.ts +5 -5
- package/lib/commands/ci/config/get.js +8 -8
- package/lib/commands/ci/config/index.d.ts +2 -2
- package/lib/commands/ci/config/index.js +8 -9
- package/lib/commands/ci/config/set.d.ts +2 -2
- package/lib/commands/ci/config/set.js +10 -10
- package/lib/commands/ci/config/unset.d.ts +3 -3
- package/lib/commands/ci/config/unset.js +6 -5
- package/lib/commands/ci/index.d.ts +2 -2
- package/lib/commands/ci/index.js +5 -4
- package/lib/commands/ci/info.js +3 -2
- package/lib/commands/ci/last.d.ts +1 -1
- package/lib/commands/ci/last.js +4 -3
- package/lib/commands/ci/migrate-manifest.d.ts +1 -1
- package/lib/commands/ci/migrate-manifest.js +4 -4
- package/lib/commands/ci/open.d.ts +2 -2
- package/lib/commands/ci/open.js +4 -3
- package/lib/commands/ci/rerun.d.ts +4 -4
- package/lib/commands/ci/rerun.js +9 -8
- package/lib/commands/ci/run.d.ts +1 -1
- package/lib/commands/ci/run.js +9 -7
- package/lib/commands/clients/create.js +4 -3
- package/lib/commands/clients/destroy.d.ts +1 -1
- package/lib/commands/clients/destroy.js +4 -4
- package/lib/commands/clients/index.js +5 -4
- package/lib/commands/clients/info.d.ts +3 -3
- package/lib/commands/clients/info.js +5 -5
- package/lib/commands/clients/rotate.d.ts +3 -3
- package/lib/commands/clients/rotate.js +5 -6
- package/lib/commands/clients/update.d.ts +3 -3
- package/lib/commands/clients/update.js +5 -5
- package/lib/commands/config/edit.d.ts +5 -5
- package/lib/commands/config/edit.js +21 -22
- package/lib/commands/config/get.d.ts +5 -4
- package/lib/commands/config/get.js +34 -13
- package/lib/commands/config/index.d.ts +1 -1
- package/lib/commands/config/index.js +4 -5
- package/lib/commands/config/set.d.ts +2 -2
- package/lib/commands/config/set.js +17 -18
- package/lib/commands/config/unset.d.ts +1 -1
- package/lib/commands/config/unset.js +12 -11
- package/lib/commands/container/pull.d.ts +4 -4
- package/lib/commands/container/pull.js +12 -12
- package/lib/commands/container/push.d.ts +6 -6
- package/lib/commands/container/push.js +18 -18
- package/lib/commands/container/release.d.ts +4 -4
- package/lib/commands/container/release.js +16 -15
- package/lib/commands/container/rm.d.ts +4 -4
- package/lib/commands/container/rm.js +10 -9
- package/lib/commands/container/run.d.ts +5 -5
- package/lib/commands/container/run.js +14 -14
- package/lib/commands/dashboard.d.ts +1 -1
- package/lib/commands/dashboard.js +19 -20
- package/lib/commands/domains/add.d.ts +5 -5
- package/lib/commands/domains/add.js +17 -18
- package/lib/commands/domains/clear.js +2 -2
- package/lib/commands/domains/index.d.ts +5 -3
- package/lib/commands/domains/index.js +99 -69
- package/lib/commands/domains/info.js +2 -1
- package/lib/commands/domains/remove.d.ts +3 -3
- package/lib/commands/domains/remove.js +5 -5
- package/lib/commands/domains/update.d.ts +4 -4
- package/lib/commands/domains/update.js +8 -8
- package/lib/commands/drains/add.d.ts +3 -3
- package/lib/commands/drains/add.js +7 -7
- package/lib/commands/drains/index.d.ts +1 -1
- package/lib/commands/drains/index.js +5 -6
- package/lib/commands/drains/remove.d.ts +4 -4
- package/lib/commands/drains/remove.js +6 -6
- package/lib/commands/features/disable.d.ts +3 -3
- package/lib/commands/features/disable.js +8 -8
- package/lib/commands/features/enable.d.ts +3 -3
- package/lib/commands/features/enable.js +8 -8
- package/lib/commands/features/index.js +2 -3
- package/lib/commands/features/info.d.ts +4 -4
- package/lib/commands/features/info.js +10 -9
- package/lib/commands/git/clone.d.ts +2 -2
- package/lib/commands/git/clone.js +7 -6
- package/lib/commands/git/remote.js +6 -5
- package/lib/commands/keys/add.d.ts +3 -4
- package/lib/commands/keys/add.js +20 -18
- package/lib/commands/keys/index.js +4 -5
- package/lib/commands/keys/remove.d.ts +2 -2
- package/lib/commands/keys/remove.js +8 -8
- package/lib/commands/labs/disable.d.ts +3 -3
- package/lib/commands/labs/disable.js +13 -13
- package/lib/commands/labs/enable.d.ts +4 -4
- package/lib/commands/labs/enable.js +11 -11
- package/lib/commands/labs/index.d.ts +2 -2
- package/lib/commands/labs/index.js +6 -7
- package/lib/commands/labs/info.d.ts +3 -3
- package/lib/commands/labs/info.js +8 -7
- package/lib/commands/local/index.d.ts +4 -4
- package/lib/commands/local/index.js +21 -21
- package/lib/commands/local/run.d.ts +1 -1
- package/lib/commands/local/run.js +4 -3
- package/lib/commands/logs.d.ts +1 -1
- package/lib/commands/logs.js +22 -21
- package/lib/commands/maintenance/off.d.ts +1 -1
- package/lib/commands/maintenance/off.js +2 -2
- package/lib/commands/maintenance/on.d.ts +1 -1
- package/lib/commands/maintenance/on.js +2 -2
- package/lib/commands/members/index.d.ts +3 -3
- package/lib/commands/members/index.js +18 -13
- package/lib/commands/members/remove.d.ts +1 -1
- package/lib/commands/members/remove.js +6 -6
- package/lib/commands/notifications/index.d.ts +3 -3
- package/lib/commands/notifications/index.js +9 -10
- package/lib/commands/orgs/open.js +2 -2
- package/lib/commands/pg/backups/cancel.d.ts +13 -0
- package/lib/commands/pg/backups/cancel.js +43 -0
- package/lib/commands/pg/backups/capture.d.ts +15 -0
- package/lib/commands/pg/backups/capture.js +62 -0
- package/lib/commands/pg/backups/delete.d.ts +15 -0
- package/lib/commands/pg/backups/delete.js +34 -0
- package/lib/commands/pg/backups/download.d.ts +14 -0
- package/lib/commands/pg/backups/download.js +54 -0
- package/lib/commands/pg/backups/index.d.ts +20 -0
- package/lib/commands/pg/backups/index.js +121 -0
- package/lib/commands/pg/backups/info.d.ts +17 -0
- package/lib/commands/pg/backups/info.js +86 -0
- package/lib/commands/pg/backups/restore.d.ts +20 -0
- package/lib/commands/pg/backups/restore.js +134 -0
- package/lib/commands/pg/backups/schedule.d.ts +21 -0
- package/lib/commands/pg/backups/schedule.js +69 -0
- package/lib/commands/pg/backups/schedules.d.ts +10 -0
- package/lib/commands/pg/backups/schedules.js +27 -0
- package/lib/commands/pg/backups/unschedule.d.ts +13 -0
- package/lib/commands/pg/backups/unschedule.js +42 -0
- package/lib/commands/pg/backups/url.d.ts +13 -0
- package/lib/commands/pg/backups/url.js +37 -0
- package/lib/commands/pg/bloat.d.ts +13 -0
- package/lib/{oldCommands → commands}/pg/bloat.js +23 -30
- package/lib/commands/pg/blocking.d.ts +13 -0
- package/lib/commands/pg/blocking.js +42 -0
- package/lib/commands/pg/connection-pooling/attach.d.ts +15 -0
- package/lib/commands/pg/connection-pooling/attach.js +38 -0
- package/lib/commands/pg/copy.d.ts +18 -0
- package/lib/commands/pg/copy.js +83 -0
- package/lib/commands/pg/credentials/create.d.ts +15 -0
- package/lib/commands/pg/credentials/create.js +39 -0
- package/lib/commands/pg/credentials/destroy.d.ts +16 -0
- package/lib/commands/pg/credentials/destroy.js +45 -0
- package/lib/commands/pg/credentials/repair-default.d.ts +15 -0
- package/lib/commands/pg/credentials/repair-default.js +38 -0
- package/lib/commands/pg/credentials/rotate.d.ts +17 -0
- package/lib/commands/pg/credentials/rotate.js +79 -0
- package/lib/commands/pg/credentials/url.d.ts +14 -0
- package/lib/commands/pg/credentials/url.js +61 -0
- package/lib/commands/pg/credentials.d.ts +16 -0
- package/lib/commands/pg/credentials.js +61 -0
- package/lib/commands/pg/diagnose.d.ts +18 -0
- package/lib/commands/pg/diagnose.js +106 -0
- package/lib/commands/pg/info.d.ts +14 -0
- package/lib/commands/pg/info.js +91 -0
- package/lib/commands/pg/kill.d.ts +15 -0
- package/lib/commands/pg/kill.js +32 -0
- package/lib/commands/pg/killall.d.ts +13 -0
- package/lib/commands/pg/killall.js +24 -0
- package/lib/commands/pg/links/create.d.ts +16 -0
- package/lib/commands/pg/links/create.js +57 -0
- package/lib/commands/pg/links/destroy.d.ts +16 -0
- package/lib/commands/pg/links/destroy.js +40 -0
- package/lib/commands/pg/links/index.d.ts +13 -0
- package/lib/commands/pg/links/index.js +62 -0
- package/lib/commands/pg/locks.d.ts +15 -0
- package/lib/commands/pg/locks.js +53 -0
- package/lib/commands/pg/maintenance/index.d.ts +13 -0
- package/lib/commands/pg/maintenance/index.js +27 -0
- package/lib/commands/pg/maintenance/run.d.ts +14 -0
- package/lib/commands/pg/maintenance/run.js +34 -0
- package/lib/commands/pg/maintenance/window.d.ts +15 -0
- package/lib/commands/pg/maintenance/window.js +41 -0
- package/lib/commands/pg/outliers.d.ts +19 -0
- package/lib/commands/pg/outliers.js +100 -0
- package/lib/commands/pg/promote.d.ts +14 -0
- package/lib/commands/pg/promote.js +167 -0
- package/lib/commands/pg/ps.d.ts +14 -0
- package/lib/commands/pg/ps.js +52 -0
- package/lib/commands/pg/psql.d.ts +16 -0
- package/lib/commands/pg/psql.js +47 -0
- package/lib/commands/pg/pull.d.ts +18 -0
- package/lib/commands/pg/pull.js +87 -0
- package/lib/commands/pg/push.d.ts +18 -0
- package/lib/commands/pg/push.js +83 -0
- package/lib/commands/pg/reset.d.ts +15 -0
- package/lib/commands/pg/reset.js +43 -0
- package/lib/commands/pg/settings/auto-explain/log-analyze.d.ts +13 -0
- package/lib/commands/pg/settings/auto-explain/log-analyze.js +28 -0
- package/lib/commands/pg/settings/auto-explain/log-buffers.d.ts +13 -0
- package/lib/commands/pg/settings/auto-explain/log-buffers.js +26 -0
- package/lib/commands/pg/settings/auto-explain/log-format.d.ts +12 -0
- package/lib/commands/pg/settings/auto-explain/log-format.js +22 -0
- package/lib/commands/pg/settings/auto-explain/log-min-duration.d.ts +13 -0
- package/lib/commands/pg/settings/auto-explain/log-min-duration.js +29 -0
- package/lib/commands/pg/settings/auto-explain/log-nested-statements.d.ts +12 -0
- package/lib/commands/pg/settings/auto-explain/log-nested-statements.js +20 -0
- package/lib/commands/pg/settings/auto-explain/log-triggers.d.ts +13 -0
- package/lib/commands/pg/settings/auto-explain/log-triggers.js +26 -0
- package/lib/commands/pg/settings/auto-explain/log-verbose.d.ts +17 -0
- package/lib/commands/pg/settings/auto-explain/log-verbose.js +29 -0
- package/lib/commands/pg/settings/auto-explain.d.ts +18 -0
- package/lib/commands/pg/settings/auto-explain.js +34 -0
- package/lib/commands/pg/settings/data-connector-details-logs.d.ts +17 -0
- package/lib/commands/pg/settings/data-connector-details-logs.js +30 -0
- package/lib/commands/pg/settings/index.d.ts +13 -0
- package/lib/commands/pg/settings/index.js +33 -0
- package/lib/commands/pg/settings/log-connections.d.ts +17 -0
- package/lib/commands/pg/settings/log-connections.js +30 -0
- package/lib/commands/pg/settings/log-lock-waits.d.ts +13 -0
- package/lib/commands/pg/settings/log-lock-waits.js +27 -0
- package/lib/commands/pg/settings/log-min-duration-statement.d.ts +12 -0
- package/lib/commands/pg/settings/log-min-duration-statement.js +29 -0
- package/lib/commands/pg/settings/log-min-error-statement.d.ts +12 -0
- package/lib/commands/pg/settings/log-min-error-statement.js +23 -0
- package/lib/commands/pg/settings/log-statement.d.ts +12 -0
- package/lib/commands/pg/settings/log-statement.js +26 -0
- package/lib/commands/pg/settings/track-functions.d.ts +12 -0
- package/lib/commands/pg/settings/track-functions.js +25 -0
- package/lib/commands/pg/unfollow.d.ts +14 -0
- package/lib/commands/pg/unfollow.js +38 -0
- package/lib/commands/pg/upgrade/cancel.d.ts +13 -0
- package/lib/commands/pg/upgrade/cancel.js +50 -0
- package/lib/commands/pg/upgrade/dryrun.d.ts +14 -0
- package/lib/commands/pg/upgrade/dryrun.js +50 -0
- package/lib/commands/pg/upgrade/index.d.ts +15 -0
- package/lib/commands/pg/upgrade/index.js +73 -0
- package/lib/commands/pg/upgrade/prepare.d.ts +14 -0
- package/lib/commands/pg/upgrade/prepare.js +51 -0
- package/lib/commands/pg/upgrade/run.d.ts +16 -0
- package/lib/commands/pg/upgrade/run.js +95 -0
- package/lib/commands/pg/upgrade/wait.d.ts +16 -0
- package/lib/commands/pg/upgrade/wait.js +105 -0
- package/lib/commands/pg/vacuum-stats.d.ts +13 -0
- package/lib/{oldCommands → commands}/pg/vacuum-stats.js +25 -29
- package/lib/commands/pg/wait.d.ts +15 -0
- package/lib/commands/pg/wait.js +79 -0
- package/lib/commands/pipelines/add.d.ts +3 -3
- package/lib/commands/pipelines/add.js +13 -13
- package/lib/commands/pipelines/connect.js +2 -1
- package/lib/commands/pipelines/create.d.ts +3 -3
- package/lib/commands/pipelines/create.js +20 -20
- package/lib/commands/pipelines/destroy.d.ts +2 -2
- package/lib/commands/pipelines/destroy.js +5 -5
- package/lib/commands/pipelines/diff.d.ts +3 -3
- package/lib/commands/pipelines/diff.js +12 -13
- package/lib/commands/pipelines/index.js +3 -3
- package/lib/commands/pipelines/info.d.ts +3 -3
- package/lib/commands/pipelines/info.js +10 -9
- package/lib/commands/pipelines/open.d.ts +9 -0
- package/lib/commands/pipelines/open.js +19 -0
- package/lib/commands/pipelines/promote.d.ts +12 -0
- package/lib/commands/pipelines/promote.js +209 -0
- package/lib/commands/pipelines/remove.d.ts +10 -0
- package/lib/commands/pipelines/remove.js +20 -0
- package/lib/commands/pipelines/rename.d.ts +10 -0
- package/lib/commands/pipelines/rename.js +34 -0
- package/lib/commands/pipelines/setup.d.ts +16 -0
- package/lib/commands/pipelines/setup.js +88 -0
- package/lib/commands/pipelines/transfer.d.ts +13 -0
- package/lib/commands/pipelines/transfer.js +60 -0
- package/lib/commands/pipelines/update.d.ts +11 -0
- package/lib/commands/pipelines/update.js +29 -0
- package/lib/commands/prompt.d.ts +1 -1
- package/lib/commands/prompt.js +4 -3
- package/lib/commands/ps/autoscale/disable.d.ts +10 -0
- package/lib/commands/ps/autoscale/disable.js +33 -0
- package/lib/commands/ps/autoscale/enable.d.ts +14 -0
- package/lib/commands/ps/autoscale/enable.js +84 -0
- package/lib/commands/ps/index.d.ts +15 -0
- package/lib/commands/ps/index.js +199 -0
- package/lib/commands/ps/restart.d.ts +18 -0
- package/lib/commands/ps/restart.js +68 -0
- package/lib/commands/ps/scale.d.ts +13 -0
- package/lib/commands/ps/scale.js +81 -0
- package/lib/commands/ps/stop.d.ts +18 -0
- package/lib/commands/ps/stop.js +62 -0
- package/lib/commands/ps/type.d.ts +12 -0
- package/lib/commands/ps/type.js +168 -0
- package/lib/commands/ps/wait.d.ts +13 -0
- package/lib/commands/ps/wait.js +73 -0
- package/lib/commands/regions.d.ts +2 -2
- package/lib/commands/regions.js +6 -5
- package/lib/commands/releases/index.d.ts +14 -0
- package/lib/commands/releases/index.js +155 -0
- package/lib/commands/releases/info.d.ts +15 -0
- package/lib/commands/releases/info.js +75 -0
- package/lib/commands/releases/output.d.ts +13 -0
- package/lib/commands/releases/output.js +33 -0
- package/lib/commands/releases/retry.d.ts +11 -0
- package/lib/commands/releases/retry.js +46 -0
- package/lib/commands/releases/rollback.d.ts +14 -0
- package/lib/commands/releases/rollback.js +54 -0
- package/lib/commands/repl.d.ts +1 -1
- package/lib/commands/repl.js +3 -2
- package/lib/commands/reviewapps/disable.d.ts +3 -3
- package/lib/commands/reviewapps/disable.js +11 -10
- package/lib/commands/reviewapps/enable.d.ts +2 -2
- package/lib/commands/reviewapps/enable.js +9 -8
- package/lib/commands/run/detached.d.ts +16 -0
- package/lib/commands/run/detached.js +54 -0
- package/lib/commands/run/index.d.ts +19 -0
- package/lib/commands/run/index.js +69 -0
- package/lib/commands/run/inside.d.ts +18 -0
- package/lib/commands/run/inside.js +77 -0
- package/lib/commands/sessions/destroy.d.ts +1 -1
- package/lib/commands/sessions/destroy.js +4 -4
- package/lib/commands/sessions/index.js +2 -3
- package/lib/commands/spaces/create.d.ts +23 -0
- package/lib/commands/spaces/create.js +87 -0
- package/lib/commands/spaces/destroy.d.ts +14 -0
- package/lib/commands/spaces/destroy.js +61 -0
- package/lib/commands/spaces/drains/get.d.ts +11 -0
- package/lib/commands/spaces/drains/get.js +23 -0
- package/lib/commands/spaces/drains/set.d.ts +13 -0
- package/lib/commands/spaces/drains/set.js +25 -0
- package/lib/commands/spaces/hosts.d.ts +14 -0
- package/lib/commands/spaces/hosts.js +35 -0
- package/lib/commands/spaces/index.d.ts +16 -0
- package/lib/commands/spaces/index.js +65 -0
- package/lib/commands/spaces/info.d.ts +14 -0
- package/lib/commands/spaces/info.js +48 -0
- package/lib/commands/spaces/peerings/accept.d.ts +15 -0
- package/lib/commands/spaces/peerings/accept.js +33 -0
- package/lib/commands/spaces/peerings/destroy.d.ts +15 -0
- package/lib/commands/spaces/peerings/destroy.js +43 -0
- package/lib/commands/spaces/peerings/index.d.ts +13 -0
- package/lib/commands/spaces/peerings/index.js +31 -0
- package/lib/commands/spaces/peerings/info.d.ts +15 -0
- package/lib/{oldCommands → commands}/spaces/peerings/info.js +32 -40
- package/lib/commands/spaces/ps.d.ts +15 -0
- package/lib/commands/spaces/ps.js +77 -0
- package/lib/commands/spaces/rename.d.ts +11 -0
- package/lib/commands/spaces/rename.js +24 -0
- package/lib/commands/spaces/topology.d.ts +18 -0
- package/lib/commands/spaces/topology.js +87 -0
- package/lib/commands/spaces/transfer.d.ts +11 -0
- package/lib/commands/spaces/transfer.js +33 -0
- package/lib/commands/spaces/trusted-ips/add.d.ts +16 -0
- package/lib/commands/spaces/trusted-ips/add.js +49 -0
- package/lib/commands/spaces/trusted-ips/index.d.ts +15 -0
- package/lib/commands/spaces/trusted-ips/index.js +59 -0
- package/lib/commands/spaces/trusted-ips/remove.d.ts +15 -0
- package/lib/commands/spaces/trusted-ips/remove.js +51 -0
- package/lib/commands/spaces/vpn/config.d.ts +14 -0
- package/lib/commands/spaces/vpn/config.js +53 -0
- package/lib/commands/spaces/vpn/connect.d.ts +15 -0
- package/lib/commands/spaces/vpn/connect.js +46 -0
- package/lib/commands/spaces/vpn/connections.d.ts +17 -0
- package/lib/commands/spaces/vpn/connections.js +55 -0
- package/lib/commands/spaces/vpn/destroy.d.ts +14 -0
- package/lib/commands/spaces/vpn/destroy.js +36 -0
- package/lib/commands/spaces/vpn/info.d.ts +16 -0
- package/lib/commands/spaces/vpn/info.js +85 -0
- package/lib/commands/spaces/vpn/update.d.ts +14 -0
- package/lib/commands/spaces/vpn/update.js +36 -0
- package/lib/commands/spaces/vpn/wait.d.ts +16 -0
- package/lib/commands/spaces/vpn/wait.js +69 -0
- package/lib/commands/spaces/wait.d.ts +17 -0
- package/lib/commands/spaces/wait.js +87 -0
- package/lib/commands/status.js +14 -13
- package/lib/commands/teams/index.d.ts +1 -1
- package/lib/commands/teams/index.js +4 -5
- package/lib/commands/telemetry/add.d.ts +6 -5
- package/lib/commands/telemetry/add.js +43 -18
- package/lib/commands/telemetry/index.d.ts +4 -4
- package/lib/commands/telemetry/index.js +19 -17
- package/lib/commands/telemetry/info.d.ts +2 -2
- package/lib/commands/telemetry/info.js +5 -4
- package/lib/commands/telemetry/update.d.ts +3 -3
- package/lib/commands/telemetry/update.js +8 -9
- package/lib/commands/usage/addons.d.ts +2 -2
- package/lib/commands/usage/addons.js +17 -18
- package/lib/global_telemetry.d.ts +2 -2
- package/lib/global_telemetry.js +34 -36
- package/lib/lib/addons/addons_wait.d.ts +1 -1
- package/lib/lib/addons/addons_wait.js +2 -2
- package/lib/lib/addons/create_addon.d.ts +5 -3
- package/lib/lib/addons/create_addon.js +12 -9
- package/lib/lib/addons/destroy_addon.js +17 -9
- package/lib/lib/addons/resolve.d.ts +10 -11
- package/lib/lib/addons/resolve.js +19 -18
- package/lib/lib/addons/util.d.ts +2 -2
- package/lib/lib/addons/util.js +21 -14
- package/lib/lib/api.d.ts +1 -1
- package/lib/lib/api.js +19 -23
- package/lib/lib/apps/app-transfer.d.ts +3 -3
- package/lib/lib/apps/app-transfer.js +11 -11
- package/lib/lib/autocomplete/base.d.ts +11 -1
- package/lib/lib/autocomplete/base.js +33 -49
- package/lib/lib/autocomplete/cache.js +9 -7
- package/lib/lib/autocomplete/completions.d.ts +41 -1
- package/lib/lib/autocomplete/completions.js +258 -290
- package/lib/lib/buildpacks/buildpacks.d.ts +11 -11
- package/lib/lib/buildpacks/buildpacks.js +71 -71
- package/lib/lib/certs/certificate_details.js +3 -4
- package/lib/lib/certs/flags.d.ts +2 -2
- package/lib/lib/certs/flags.js +5 -8
- package/lib/lib/certs/get_cert_and_key.js +2 -2
- package/lib/lib/ci/git.d.ts +12 -2
- package/lib/lib/ci/git.js +20 -6
- package/lib/lib/ci/pipelines.d.ts +5 -5
- package/lib/lib/ci/pipelines.js +17 -17
- package/lib/lib/ci/source.d.ts +8 -0
- package/lib/lib/ci/source.js +22 -10
- package/lib/lib/ci/test-run.js +18 -15
- package/lib/lib/config/quote.js +4 -4
- package/lib/lib/config/util.d.ts +3 -0
- package/lib/lib/config/util.js +5 -0
- package/lib/lib/confirmCommand.js +6 -7
- package/lib/lib/container/docker_helper.d.ts +12 -12
- package/lib/lib/container/docker_helper.js +71 -74
- package/lib/lib/container/helpers.js +2 -2
- package/lib/lib/container/streamer.js +4 -4
- package/lib/lib/data/baseCommand.d.ts +4 -0
- package/lib/lib/data/baseCommand.js +15 -0
- package/lib/lib/data/createPool.d.ts +4 -0
- package/lib/lib/data/createPool.js +6 -0
- package/lib/lib/data/credentialUtils.d.ts +3 -0
- package/lib/lib/data/credentialUtils.js +23 -0
- package/lib/lib/data/displayQuota.d.ts +19 -0
- package/lib/lib/data/displayQuota.js +59 -0
- package/lib/lib/data/parseProvisionOpts.d.ts +15 -0
- package/lib/lib/data/parseProvisionOpts.js +31 -0
- package/lib/lib/data/types.d.ts +177 -0
- package/lib/lib/data/types.js +3 -0
- package/lib/lib/data-scrubber/patterns.d.ts +4 -0
- package/lib/lib/data-scrubber/patterns.js +13 -0
- package/lib/lib/data-scrubber/presets.d.ts +64 -0
- package/lib/lib/data-scrubber/presets.js +112 -0
- package/lib/lib/data-scrubber/scrubber.d.ts +131 -0
- package/lib/lib/data-scrubber/scrubber.js +256 -0
- package/lib/lib/data-scrubber/types.d.ts +169 -0
- package/lib/lib/domains/domains.js +10 -10
- package/lib/lib/domains/wait-for-domain.js +2 -3
- package/lib/lib/local/env-file-validator.js +2 -2
- package/lib/lib/local/fork-foreman.js +3 -2
- package/lib/lib/members/util.js +7 -7
- package/lib/lib/orgs/utils.js +2 -3
- package/lib/lib/pg/backups.d.ts +17 -1
- package/lib/lib/pg/backups.js +132 -156
- package/lib/lib/pg/download.js +7 -7
- package/lib/lib/pg/fetcher.d.ts +3 -1
- package/lib/lib/pg/fetcher.js +3 -162
- package/lib/lib/pg/psql.d.ts +17 -1
- package/lib/lib/pg/psql.js +59 -269
- package/lib/lib/pg/push_pull.d.ts +12 -0
- package/lib/lib/pg/push_pull.js +97 -119
- package/lib/lib/pg/setter.d.ts +16 -1
- package/lib/lib/pg/setter.js +61 -73
- package/lib/lib/pg/types.d.ts +10 -15
- package/lib/lib/pg/util.d.ts +8 -1
- package/lib/lib/pg/util.js +97 -211
- package/lib/lib/pipelines/disambiguate.js +9 -11
- package/lib/lib/pipelines/ownership.d.ts +1 -1
- package/lib/lib/pipelines/ownership.js +6 -12
- package/lib/lib/pipelines/render-pipeline.d.ts +2 -2
- package/lib/lib/pipelines/render-pipeline.js +10 -9
- package/lib/lib/pipelines/setup/create-apps.js +7 -9
- package/lib/lib/pipelines/setup/get-ci-settings.js +2 -2
- package/lib/lib/pipelines/setup/get-github-token.js +1 -3
- package/lib/lib/pipelines/setup/get-name-and-repo.js +27 -22
- package/lib/lib/pipelines/setup/get-settings.js +12 -12
- package/lib/lib/pipelines/setup/poll-app-setups.js +3 -5
- package/lib/lib/pipelines/setup/setup-pipeline.js +1 -3
- package/lib/lib/pipelines/setup/validate.d.ts +1 -1
- package/lib/lib/pipelines/setup/validate.js +2 -2
- package/lib/lib/pipelines/stages.d.ts +2 -2
- package/lib/lib/pipelines/stages.js +4 -4
- package/lib/lib/redis/api.d.ts +22 -22
- package/lib/lib/redis/api.js +62 -67
- package/lib/lib/releases/output.js +1 -1
- package/lib/lib/releases/status_helper.d.ts +1 -1
- package/lib/lib/releases/status_helper.js +16 -8
- package/lib/lib/run/colorize.js +73 -40
- package/lib/lib/run/dyno.d.ts +19 -19
- package/lib/lib/run/dyno.js +181 -174
- package/lib/lib/run/helpers.d.ts +25 -0
- package/lib/lib/run/helpers.js +119 -3
- package/lib/lib/run/log-displayer.d.ts +3 -3
- package/lib/lib/run/log-displayer.js +21 -21
- package/lib/lib/spaces/format.js +36 -23
- package/lib/lib/spaces/hosts.d.ts +9 -1
- package/lib/lib/spaces/hosts.js +28 -41
- package/lib/lib/spaces/peering.d.ts +4 -1
- package/lib/lib/spaces/peering.js +45 -52
- package/lib/lib/spaces/spaces.d.ts +6 -1
- package/lib/lib/spaces/spaces.js +30 -39
- package/lib/lib/spaces/vpn-connections.js +16 -16
- package/lib/lib/telemetry/util.d.ts +1 -1
- package/lib/lib/telemetry/util.js +3 -3
- package/lib/lib/types/completion.d.ts +15 -0
- package/lib/lib/utils/packageParser.js +2 -2
- package/lib/lib/utils/uuid-validate.js +1 -3
- package/lib/lib/webhooks/base.d.ts +2 -2
- package/lib/lib/webhooks/base.js +3 -3
- package/lib/nls-data.d.ts +10 -0
- package/lib/nls-data.js +10 -0
- package/lib/nls.d.ts +1 -1
- package/lib/nls.js +1 -1
- package/npm-shrinkwrap.json +17653 -18259
- package/oclif.manifest.json +8433 -2271
- package/package.json +26 -237
- package/lib/lib/pg/bastion.js +0 -137
- package/lib/lib/pg/config.d.ts +0 -2
- package/lib/lib/pg/config.js +0 -9
- package/lib/lib/pg/host.d.ts +0 -1
- package/lib/lib/pg/host.js +0 -3
- package/lib/lib/spaces/outbound-rules.js +0 -85
- package/lib/oldCommands/autocomplete/create.d.ts +0 -1
- package/lib/oldCommands/autocomplete/create.js +0 -254
- package/lib/oldCommands/autocomplete/doctor.d.ts +0 -1
- package/lib/oldCommands/autocomplete/doctor.js +0 -110
- package/lib/oldCommands/autocomplete/index.d.ts +0 -1
- package/lib/oldCommands/autocomplete/index.js +0 -80
- package/lib/oldCommands/autocomplete/options.d.ts +0 -1
- package/lib/oldCommands/autocomplete/options.js +0 -240
- package/lib/oldCommands/autocomplete/script.d.ts +0 -1
- package/lib/oldCommands/autocomplete/script.js +0 -35
- package/lib/oldCommands/pg/backups/cancel.d.ts +0 -1
- package/lib/oldCommands/pg/backups/cancel.js +0 -56
- package/lib/oldCommands/pg/backups/capture.d.ts +0 -1
- package/lib/oldCommands/pg/backups/capture.js +0 -77
- package/lib/oldCommands/pg/backups/delete.d.ts +0 -1
- package/lib/oldCommands/pg/backups/delete.js +0 -45
- package/lib/oldCommands/pg/backups/download.d.ts +0 -1
- package/lib/oldCommands/pg/backups/download.js +0 -64
- package/lib/oldCommands/pg/backups/index.d.ts +0 -1
- package/lib/oldCommands/pg/backups/index.js +0 -141
- package/lib/oldCommands/pg/backups/info.d.ts +0 -1
- package/lib/oldCommands/pg/backups/info.js +0 -102
- package/lib/oldCommands/pg/backups/restore.d.ts +0 -1
- package/lib/oldCommands/pg/backups/restore.js +0 -150
- package/lib/oldCommands/pg/backups/schedule.d.ts +0 -1
- package/lib/oldCommands/pg/backups/schedule.js +0 -107
- package/lib/oldCommands/pg/backups/schedules.d.ts +0 -1
- package/lib/oldCommands/pg/backups/schedules.js +0 -34
- package/lib/oldCommands/pg/backups/unschedule.d.ts +0 -1
- package/lib/oldCommands/pg/backups/unschedule.js +0 -60
- package/lib/oldCommands/pg/backups/url.d.ts +0 -1
- package/lib/oldCommands/pg/backups/url.js +0 -46
- package/lib/oldCommands/pg/bloat.d.ts +0 -1
- package/lib/oldCommands/pg/blocking.d.ts +0 -1
- package/lib/oldCommands/pg/blocking.js +0 -48
- package/lib/oldCommands/pg/connection-pooling/attach.d.ts +0 -1
- package/lib/oldCommands/pg/connection-pooling/attach.js +0 -53
- package/lib/oldCommands/pg/copy.d.ts +0 -1
- package/lib/oldCommands/pg/copy.js +0 -104
- package/lib/oldCommands/pg/credentials/create.d.ts +0 -1
- package/lib/oldCommands/pg/credentials/create.js +0 -47
- package/lib/oldCommands/pg/credentials/destroy.d.ts +0 -1
- package/lib/oldCommands/pg/credentials/destroy.js +0 -56
- package/lib/oldCommands/pg/credentials/repair-default.d.ts +0 -1
- package/lib/oldCommands/pg/credentials/repair-default.js +0 -43
- package/lib/oldCommands/pg/credentials/rotate.d.ts +0 -1
- package/lib/oldCommands/pg/credentials/rotate.js +0 -97
- package/lib/oldCommands/pg/credentials/url.d.ts +0 -1
- package/lib/oldCommands/pg/credentials/url.js +0 -75
- package/lib/oldCommands/pg/credentials.d.ts +0 -1
- package/lib/oldCommands/pg/credentials.js +0 -77
- package/lib/oldCommands/pg/diagnose.d.ts +0 -1
- package/lib/oldCommands/pg/diagnose.js +0 -136
- package/lib/oldCommands/pg/info.d.ts +0 -1
- package/lib/oldCommands/pg/info.js +0 -110
- package/lib/oldCommands/pg/kill.d.ts +0 -1
- package/lib/oldCommands/pg/kill.js +0 -37
- package/lib/oldCommands/pg/killall.d.ts +0 -1
- package/lib/oldCommands/pg/killall.js +0 -31
- package/lib/oldCommands/pg/links/create.d.ts +0 -1
- package/lib/oldCommands/pg/links/create.js +0 -70
- package/lib/oldCommands/pg/links/destroy.d.ts +0 -1
- package/lib/oldCommands/pg/links/destroy.js +0 -51
- package/lib/oldCommands/pg/links/index.d.ts +0 -1
- package/lib/oldCommands/pg/links/index.js +0 -64
- package/lib/oldCommands/pg/locks.d.ts +0 -1
- package/lib/oldCommands/pg/locks.js +0 -60
- package/lib/oldCommands/pg/maintenance/index.d.ts +0 -1
- package/lib/oldCommands/pg/maintenance/index.js +0 -34
- package/lib/oldCommands/pg/maintenance/run.d.ts +0 -1
- package/lib/oldCommands/pg/maintenance/run.js +0 -44
- package/lib/oldCommands/pg/maintenance/window.d.ts +0 -1
- package/lib/oldCommands/pg/maintenance/window.js +0 -52
- package/lib/oldCommands/pg/outliers.d.ts +0 -1
- package/lib/oldCommands/pg/outliers.js +0 -110
- package/lib/oldCommands/pg/promote.d.ts +0 -1
- package/lib/oldCommands/pg/promote.js +0 -183
- package/lib/oldCommands/pg/ps.d.ts +0 -1
- package/lib/oldCommands/pg/ps.js +0 -56
- package/lib/oldCommands/pg/psql.d.ts +0 -1
- package/lib/oldCommands/pg/psql.js +0 -53
- package/lib/oldCommands/pg/pull.d.ts +0 -1
- package/lib/oldCommands/pg/pull.js +0 -114
- package/lib/oldCommands/pg/push.d.ts +0 -1
- package/lib/oldCommands/pg/push.js +0 -111
- package/lib/oldCommands/pg/reset.d.ts +0 -1
- package/lib/oldCommands/pg/reset.js +0 -49
- package/lib/oldCommands/pg/settings/auto-explain/log-analyze.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain/log-analyze.js +0 -37
- package/lib/oldCommands/pg/settings/auto-explain/log-buffers.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain/log-buffers.js +0 -35
- package/lib/oldCommands/pg/settings/auto-explain/log-format.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain/log-format.js +0 -30
- package/lib/oldCommands/pg/settings/auto-explain/log-min-duration.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain/log-min-duration.js +0 -39
- package/lib/oldCommands/pg/settings/auto-explain/log-nested-statements.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain/log-nested-statements.js +0 -30
- package/lib/oldCommands/pg/settings/auto-explain/log-triggers.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain/log-triggers.js +0 -35
- package/lib/oldCommands/pg/settings/auto-explain/log-verbose.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain/log-verbose.js +0 -40
- package/lib/oldCommands/pg/settings/auto-explain.d.ts +0 -1
- package/lib/oldCommands/pg/settings/auto-explain.js +0 -45
- package/lib/oldCommands/pg/settings/data-connector-details-logs.d.ts +0 -1
- package/lib/oldCommands/pg/settings/data-connector-details-logs.js +0 -40
- package/lib/oldCommands/pg/settings/index.d.ts +0 -1
- package/lib/oldCommands/pg/settings/index.js +0 -41
- package/lib/oldCommands/pg/settings/log-connections.d.ts +0 -1
- package/lib/oldCommands/pg/settings/log-connections.js +0 -40
- package/lib/oldCommands/pg/settings/log-lock-waits.d.ts +0 -1
- package/lib/oldCommands/pg/settings/log-lock-waits.js +0 -36
- package/lib/oldCommands/pg/settings/log-min-duration-statement.d.ts +0 -1
- package/lib/oldCommands/pg/settings/log-min-duration-statement.js +0 -39
- package/lib/oldCommands/pg/settings/log-min-error-statement.d.ts +0 -1
- package/lib/oldCommands/pg/settings/log-min-error-statement.js +0 -31
- package/lib/oldCommands/pg/settings/log-statement.d.ts +0 -1
- package/lib/oldCommands/pg/settings/log-statement.js +0 -33
- package/lib/oldCommands/pg/settings/track-functions.d.ts +0 -1
- package/lib/oldCommands/pg/settings/track-functions.js +0 -33
- package/lib/oldCommands/pg/unfollow.d.ts +0 -1
- package/lib/oldCommands/pg/unfollow.js +0 -46
- package/lib/oldCommands/pg/upgrade/cancel.d.ts +0 -1
- package/lib/oldCommands/pg/upgrade/cancel.js +0 -62
- package/lib/oldCommands/pg/upgrade/dryrun.d.ts +0 -1
- package/lib/oldCommands/pg/upgrade/dryrun.js +0 -62
- package/lib/oldCommands/pg/upgrade/index.d.ts +0 -1
- package/lib/oldCommands/pg/upgrade/index.js +0 -85
- package/lib/oldCommands/pg/upgrade/prepare.d.ts +0 -1
- package/lib/oldCommands/pg/upgrade/prepare.js +0 -64
- package/lib/oldCommands/pg/upgrade/run.d.ts +0 -1
- package/lib/oldCommands/pg/upgrade/run.js +0 -106
- package/lib/oldCommands/pg/upgrade/wait.d.ts +0 -1
- package/lib/oldCommands/pg/upgrade/wait.js +0 -121
- package/lib/oldCommands/pg/upgrade.d.ts +0 -1
- package/lib/oldCommands/pg/upgrade.js +0 -66
- package/lib/oldCommands/pg/vacuum-stats.d.ts +0 -1
- package/lib/oldCommands/pg/wait.d.ts +0 -1
- package/lib/oldCommands/pg/wait.js +0 -96
- package/lib/oldCommands/pipelines/open.d.ts +0 -1
- package/lib/oldCommands/pipelines/open.js +0 -25
- package/lib/oldCommands/pipelines/promote.d.ts +0 -1
- package/lib/oldCommands/pipelines/promote.js +0 -269
- package/lib/oldCommands/pipelines/remove.d.ts +0 -1
- package/lib/oldCommands/pipelines/remove.js +0 -29
- package/lib/oldCommands/pipelines/rename.d.ts +0 -1
- package/lib/oldCommands/pipelines/rename.js +0 -42
- package/lib/oldCommands/pipelines/setup.d.ts +0 -1
- package/lib/oldCommands/pipelines/setup.js +0 -117
- package/lib/oldCommands/pipelines/transfer.d.ts +0 -1
- package/lib/oldCommands/pipelines/transfer.js +0 -78
- package/lib/oldCommands/pipelines/update.d.ts +0 -1
- package/lib/oldCommands/pipelines/update.js +0 -39
- package/lib/oldCommands/ps/autoscale/disable.d.ts +0 -1
- package/lib/oldCommands/ps/autoscale/disable.js +0 -43
- package/lib/oldCommands/ps/autoscale/enable.d.ts +0 -1
- package/lib/oldCommands/ps/autoscale/enable.js +0 -103
- package/lib/oldCommands/ps/index.d.ts +0 -1
- package/lib/oldCommands/ps/index.js +0 -254
- package/lib/oldCommands/ps/restart.d.ts +0 -1
- package/lib/oldCommands/ps/restart.js +0 -78
- package/lib/oldCommands/ps/scale.d.ts +0 -1
- package/lib/oldCommands/ps/scale.js +0 -95
- package/lib/oldCommands/ps/stop.d.ts +0 -1
- package/lib/oldCommands/ps/stop.js +0 -73
- package/lib/oldCommands/ps/type.d.ts +0 -1
- package/lib/oldCommands/ps/type.js +0 -190
- package/lib/oldCommands/ps/wait.d.ts +0 -1
- package/lib/oldCommands/ps/wait.js +0 -93
- package/lib/oldCommands/releases/index.d.ts +0 -1
- package/lib/oldCommands/releases/index.js +0 -156
- package/lib/oldCommands/releases/info.d.ts +0 -1
- package/lib/oldCommands/releases/info.js +0 -68
- package/lib/oldCommands/releases/output.d.ts +0 -1
- package/lib/oldCommands/releases/output.js +0 -42
- package/lib/oldCommands/releases/retry.d.ts +0 -1
- package/lib/oldCommands/releases/retry.js +0 -59
- package/lib/oldCommands/releases/rollback.d.ts +0 -1
- package/lib/oldCommands/releases/rollback.js +0 -65
- package/lib/oldCommands/run/detached.d.ts +0 -1
- package/lib/oldCommands/run/detached.js +0 -61
- package/lib/oldCommands/run/index.d.ts +0 -1
- package/lib/oldCommands/run/index.js +0 -72
- package/lib/oldCommands/run/inside.d.ts +0 -1
- package/lib/oldCommands/run/inside.js +0 -93
- package/lib/oldCommands/spaces/create.d.ts +0 -1
- package/lib/oldCommands/spaces/create.js +0 -99
- package/lib/oldCommands/spaces/destroy.d.ts +0 -1
- package/lib/oldCommands/spaces/destroy.js +0 -79
- package/lib/oldCommands/spaces/drains/get.d.ts +0 -1
- package/lib/oldCommands/spaces/drains/get.js +0 -33
- package/lib/oldCommands/spaces/drains/set.d.ts +0 -1
- package/lib/oldCommands/spaces/drains/set.js +0 -33
- package/lib/oldCommands/spaces/hosts.d.ts +0 -1
- package/lib/oldCommands/spaces/hosts.js +0 -42
- package/lib/oldCommands/spaces/index.d.ts +0 -1
- package/lib/oldCommands/spaces/index.js +0 -74
- package/lib/oldCommands/spaces/info.d.ts +0 -1
- package/lib/oldCommands/spaces/info.js +0 -59
- package/lib/oldCommands/spaces/peerings/accept.d.ts +0 -1
- package/lib/oldCommands/spaces/peerings/accept.js +0 -41
- package/lib/oldCommands/spaces/peerings/destroy.d.ts +0 -1
- package/lib/oldCommands/spaces/peerings/destroy.js +0 -51
- package/lib/oldCommands/spaces/peerings/index.d.ts +0 -1
- package/lib/oldCommands/spaces/peerings/index.js +0 -39
- package/lib/oldCommands/spaces/peerings/info.d.ts +0 -1
- package/lib/oldCommands/spaces/ps.d.ts +0 -1
- package/lib/oldCommands/spaces/ps.js +0 -97
- package/lib/oldCommands/spaces/rename.d.ts +0 -1
- package/lib/oldCommands/spaces/rename.js +0 -29
- package/lib/oldCommands/spaces/topology.d.ts +0 -1
- package/lib/oldCommands/spaces/topology.js +0 -95
- package/lib/oldCommands/spaces/transfer.d.ts +0 -1
- package/lib/oldCommands/spaces/transfer.js +0 -37
- package/lib/oldCommands/spaces/trusted-ips/add.d.ts +0 -1
- package/lib/oldCommands/spaces/trusted-ips/add.js +0 -48
- package/lib/oldCommands/spaces/trusted-ips/index.d.ts +0 -1
- package/lib/oldCommands/spaces/trusted-ips/index.js +0 -57
- package/lib/oldCommands/spaces/trusted-ips/remove.d.ts +0 -1
- package/lib/oldCommands/spaces/trusted-ips/remove.js +0 -50
- package/lib/oldCommands/spaces/vpn/config.d.ts +0 -1
- package/lib/oldCommands/spaces/vpn/config.js +0 -61
- package/lib/oldCommands/spaces/vpn/connect.d.ts +0 -1
- package/lib/oldCommands/spaces/vpn/connect.js +0 -54
- package/lib/oldCommands/spaces/vpn/connections.d.ts +0 -1
- package/lib/oldCommands/spaces/vpn/connections.js +0 -70
- package/lib/oldCommands/spaces/vpn/destroy.d.ts +0 -1
- package/lib/oldCommands/spaces/vpn/destroy.js +0 -48
- package/lib/oldCommands/spaces/vpn/info.d.ts +0 -1
- package/lib/oldCommands/spaces/vpn/info.js +0 -89
- package/lib/oldCommands/spaces/vpn/update.d.ts +0 -1
- package/lib/oldCommands/spaces/vpn/update.js +0 -46
- package/lib/oldCommands/spaces/vpn/wait.d.ts +0 -1
- package/lib/oldCommands/spaces/vpn/wait.js +0 -80
- package/lib/oldCommands/spaces/wait.d.ts +0 -1
- package/lib/oldCommands/spaces/wait.js +0 -106
- package/lib/package.nls.json +0 -6
- /package/lib/lib/{pg/bastion.d.ts → data-scrubber/types.js} +0 -0
- /package/lib/lib/{spaces/outbound-rules.d.ts → types/completion.js} +0 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { color } from '@heroku/heroku-cli-util';
|
|
2
|
+
import { flags } from '@heroku-cli/command';
|
|
3
|
+
import { AppCompletion, PipelineCompletion, SpaceCompletion, TeamCompletion, } from '@heroku-cli/command/lib/completions.js';
|
|
4
|
+
import { Args, ux } from '@oclif/core';
|
|
5
|
+
import * as path from 'path';
|
|
6
|
+
import { AutocompleteBase } from '../../lib/autocomplete/base.js';
|
|
7
|
+
import { updateCache } from '../../lib/autocomplete/cache.js';
|
|
8
|
+
import Create from './create.js';
|
|
9
|
+
export default class Index extends AutocompleteBase {
|
|
10
|
+
static args = {
|
|
11
|
+
shell: Args.string({ description: 'shell type', required: false }),
|
|
12
|
+
};
|
|
13
|
+
static description = 'display autocomplete installation instructions';
|
|
14
|
+
static examples = [
|
|
15
|
+
color.command('heroku autocomplete'),
|
|
16
|
+
color.command('heroku autocomplete bash'),
|
|
17
|
+
color.command('heroku autocomplete zsh'),
|
|
18
|
+
color.command('heroku autocomplete --refresh-cache'),
|
|
19
|
+
];
|
|
20
|
+
static flags = {
|
|
21
|
+
'refresh-cache': flags.boolean({ char: 'r', description: 'refresh cache only (ignores displaying instructions)' }),
|
|
22
|
+
};
|
|
23
|
+
async run() {
|
|
24
|
+
const { args, flags } = await this.parse(Index);
|
|
25
|
+
const shell = args.shell || this.config.shell;
|
|
26
|
+
this.errorIfNotSupportedShell(shell);
|
|
27
|
+
ux.action.start('Building the autocomplete cache');
|
|
28
|
+
const create = new Create([], this.config);
|
|
29
|
+
await create.run();
|
|
30
|
+
await this.updateCache(AppCompletion, 'app');
|
|
31
|
+
await this.updateCache(PipelineCompletion, 'pipeline');
|
|
32
|
+
await this.updateCache(SpaceCompletion, 'space');
|
|
33
|
+
await this.updateCache(TeamCompletion, 'team');
|
|
34
|
+
ux.action.stop();
|
|
35
|
+
if (!flags['refresh-cache']) {
|
|
36
|
+
const { bin } = this.config;
|
|
37
|
+
const bashNote = 'If your terminal starts as a login shell you may need to print the init script into ~/.bash_profile or ~/.profile.';
|
|
38
|
+
const zshNote = `After sourcing, you can run \`${color.command('compaudit -D')}\` to ensure no permissions conflicts are present`;
|
|
39
|
+
const note = shell === 'zsh' ? zshNote : bashNote;
|
|
40
|
+
const tabStr = shell === 'bash' ? '<TAB><TAB>' : '<TAB>';
|
|
41
|
+
this.log(`
|
|
42
|
+
${color.label(`Setup Instructions for ${bin.toUpperCase()} CLI Autocomplete ---`)}
|
|
43
|
+
|
|
44
|
+
1) Add the autocomplete env var to your ${shell} profile and source it
|
|
45
|
+
${color.command(`printf "$(${bin} autocomplete:script ${shell})" >> ~/.${shell}rc; source ~/.${shell}rc`)}
|
|
46
|
+
|
|
47
|
+
NOTE: ${note}
|
|
48
|
+
|
|
49
|
+
2) Test it out, e.g.:
|
|
50
|
+
${color.command(`${bin} ${tabStr}`)} # Command completion
|
|
51
|
+
${color.command(`${bin} apps:info --${tabStr}`)} # Flag completion
|
|
52
|
+
${color.command(`${bin} apps:info --app=${tabStr}`)} # Flag option completion
|
|
53
|
+
|
|
54
|
+
Visit the autocomplete Dev Center doc at ${color.info('https://devcenter.heroku.com/articles/heroku-cli-autocomplete')}
|
|
55
|
+
|
|
56
|
+
Enjoy!
|
|
57
|
+
`);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
async updateCache(completion, cacheKey) {
|
|
61
|
+
const cachePath = path.join(this.completionsCacheDir, cacheKey);
|
|
62
|
+
const options = await completion.options({ config: this.config });
|
|
63
|
+
await updateCache(cachePath, options);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AutocompleteBase } from '../../lib/autocomplete/base.js';
|
|
2
|
+
export default class Options extends AutocompleteBase {
|
|
3
|
+
static hidden: boolean;
|
|
4
|
+
static description: string;
|
|
5
|
+
static flags: {
|
|
6
|
+
app: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
|
+
};
|
|
8
|
+
static args: {
|
|
9
|
+
completion: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
10
|
+
};
|
|
11
|
+
parsedArgs: {
|
|
12
|
+
[name: string]: string;
|
|
13
|
+
};
|
|
14
|
+
parsedFlags: {
|
|
15
|
+
[name: string]: string;
|
|
16
|
+
};
|
|
17
|
+
run(): Promise<void>;
|
|
18
|
+
private processCommandLine;
|
|
19
|
+
private determineCompletion;
|
|
20
|
+
private fetchOptions;
|
|
21
|
+
private parsedFlagsWithEnvVars;
|
|
22
|
+
private throwError;
|
|
23
|
+
private findFlagFromWildArg;
|
|
24
|
+
private determineCmdState;
|
|
25
|
+
}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
import { flags } from '@heroku-cli/command';
|
|
2
|
+
import { Args } from '@oclif/core';
|
|
3
|
+
import * as path from 'path';
|
|
4
|
+
import { AutocompleteBase } from '../../lib/autocomplete/base.js';
|
|
5
|
+
import { fetchCache } from '../../lib/autocomplete/cache.js';
|
|
6
|
+
export default class Options extends AutocompleteBase {
|
|
7
|
+
static hidden = true;
|
|
8
|
+
static description = 'display arg or flag completion options (used internally by completion functions)';
|
|
9
|
+
static flags = {
|
|
10
|
+
app: flags.app({ required: false, hidden: true }),
|
|
11
|
+
};
|
|
12
|
+
static args = {
|
|
13
|
+
completion: Args.string({ strict: false }),
|
|
14
|
+
};
|
|
15
|
+
parsedArgs = {};
|
|
16
|
+
parsedFlags = {};
|
|
17
|
+
// helpful dictionary
|
|
18
|
+
//
|
|
19
|
+
// *args: refers to a Command's static args
|
|
20
|
+
// *argv: refers to the current execution's command line positional input
|
|
21
|
+
// Klass: (class) Command class
|
|
22
|
+
// completion: (object) object with data/methods to build/retrieve options from cache
|
|
23
|
+
// curPosition*: the current argv position the shell is trying to complete
|
|
24
|
+
// options: (string) white-space separated list of values for the shell to use for completion
|
|
25
|
+
async run() {
|
|
26
|
+
this.errorIfWindows();
|
|
27
|
+
// ex: heroku autocomplete:options 'heroku addons:destroy -a myapp myaddon'
|
|
28
|
+
try {
|
|
29
|
+
const commandStateVars = await this.processCommandLine();
|
|
30
|
+
const completion = this.determineCompletion(commandStateVars);
|
|
31
|
+
const options = await this.fetchOptions(completion);
|
|
32
|
+
if (options)
|
|
33
|
+
this.log(options);
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
// write to ac log
|
|
37
|
+
await this.writeLogFile(error.message);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
async processCommandLine() {
|
|
41
|
+
// find command id
|
|
42
|
+
const commandLineToComplete = this.argv[0].split(' ');
|
|
43
|
+
const id = commandLineToComplete[1];
|
|
44
|
+
// find Command
|
|
45
|
+
const C = this.config.findCommand(id);
|
|
46
|
+
let Klass;
|
|
47
|
+
if (C) {
|
|
48
|
+
Klass = await C.load();
|
|
49
|
+
// process Command state from command line data
|
|
50
|
+
const slicedArgv = commandLineToComplete.slice(2);
|
|
51
|
+
const [argsIndex, curPositionIsFlag, curPositionIsFlagValue] = this.determineCmdState(slicedArgv, Klass);
|
|
52
|
+
return { id, Klass, argsIndex, curPositionIsFlag, curPositionIsFlagValue, slicedArgv };
|
|
53
|
+
}
|
|
54
|
+
this.throwError(`Command ${id} not found`);
|
|
55
|
+
}
|
|
56
|
+
determineCompletion(commandStateVars) {
|
|
57
|
+
const { id, Klass, argsIndex, curPositionIsFlag, curPositionIsFlagValue, slicedArgv } = commandStateVars;
|
|
58
|
+
// setup empty cache completion vars to assign
|
|
59
|
+
let cacheKey;
|
|
60
|
+
let cacheCompletion;
|
|
61
|
+
// completing a flag/value? else completing an arg
|
|
62
|
+
if (curPositionIsFlag || curPositionIsFlagValue) {
|
|
63
|
+
const slicedArgvCount = slicedArgv.length;
|
|
64
|
+
const lastArgvArg = slicedArgv[slicedArgvCount - 1];
|
|
65
|
+
const previousArgvArg = slicedArgv[slicedArgvCount - 2];
|
|
66
|
+
const argvFlag = curPositionIsFlagValue ? previousArgvArg : lastArgvArg;
|
|
67
|
+
const { name, flag } = this.findFlagFromWildArg(argvFlag, Klass);
|
|
68
|
+
if (!flag)
|
|
69
|
+
this.throwError(`${argvFlag} is not a valid flag for ${id}`);
|
|
70
|
+
cacheKey = name || flag.name;
|
|
71
|
+
cacheCompletion = flag.completion;
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
const cmdArgs = Klass.args || [];
|
|
75
|
+
// variable arg (strict: false)
|
|
76
|
+
if (!Klass.strict) {
|
|
77
|
+
cacheKey = cmdArgs[0] && cmdArgs[0].name.toLowerCase();
|
|
78
|
+
cacheCompletion = this.findCompletion(cacheKey, id);
|
|
79
|
+
if (!cacheCompletion)
|
|
80
|
+
this.throwError(`Cannot complete variable arg position for ${id}`);
|
|
81
|
+
}
|
|
82
|
+
else if (argsIndex > cmdArgs.length - 1) {
|
|
83
|
+
this.throwError(`Cannot complete arg position ${argsIndex} for ${id}`);
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
const arg = cmdArgs[argsIndex];
|
|
87
|
+
cacheKey = arg.name.toLowerCase();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// try to auto-populate the completion object
|
|
91
|
+
if (!cacheCompletion) {
|
|
92
|
+
cacheCompletion = this.findCompletion(cacheKey, id);
|
|
93
|
+
}
|
|
94
|
+
return { cacheKey, cacheCompletion };
|
|
95
|
+
}
|
|
96
|
+
async fetchOptions(cache) {
|
|
97
|
+
const { cacheCompletion, cacheKey } = cache;
|
|
98
|
+
const flags = await this.parsedFlagsWithEnvVars();
|
|
99
|
+
// build/retrieve & return options cache
|
|
100
|
+
if (cacheCompletion && cacheCompletion.options) {
|
|
101
|
+
const ctx = {
|
|
102
|
+
args: this.parsedArgs,
|
|
103
|
+
// special case for app & team env vars
|
|
104
|
+
flags,
|
|
105
|
+
argv: this.argv,
|
|
106
|
+
config: this.config,
|
|
107
|
+
};
|
|
108
|
+
// use cacheKey function or fallback to arg/flag name
|
|
109
|
+
const ckey = cacheCompletion.cacheKey ? await cacheCompletion.cacheKey(ctx) : null;
|
|
110
|
+
const key = ckey || cacheKey || 'unknown_key_error';
|
|
111
|
+
const flagCachePath = path.join(this.completionsCacheDir, key);
|
|
112
|
+
// build/retrieve cache
|
|
113
|
+
const duration = cacheCompletion.cacheDuration || 60 * 60 * 24; // 1 day
|
|
114
|
+
const opts = { cacheFn: () => cacheCompletion.options(ctx) };
|
|
115
|
+
const options = await fetchCache(flagCachePath, duration, opts);
|
|
116
|
+
// return options cache
|
|
117
|
+
return (options || []).join('\n');
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
async parsedFlagsWithEnvVars() {
|
|
121
|
+
const { flags } = await this.parse(Options);
|
|
122
|
+
return {
|
|
123
|
+
app: process.env.HEROKU_APP || flags.app,
|
|
124
|
+
team: process.env.HEROKU_TEAM || process.env.HEROKU_ORG,
|
|
125
|
+
...this.parsedFlags,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
throwError(msg) {
|
|
129
|
+
throw new Error(msg);
|
|
130
|
+
}
|
|
131
|
+
findFlagFromWildArg(wild, Klass) {
|
|
132
|
+
let name = wild.replace(/^-+/, '');
|
|
133
|
+
name = name.replace(/[=](.+)?$/, '');
|
|
134
|
+
const unknown = { flag: undefined, name: undefined };
|
|
135
|
+
if (!Klass.flags)
|
|
136
|
+
return unknown;
|
|
137
|
+
const CFlags = Klass.flags;
|
|
138
|
+
let flag = CFlags[name];
|
|
139
|
+
if (flag)
|
|
140
|
+
return { name, flag };
|
|
141
|
+
name = Object.keys(CFlags).find((k) => CFlags[k].char === name) || 'undefinedcommand';
|
|
142
|
+
flag = CFlags && CFlags[name];
|
|
143
|
+
if (flag)
|
|
144
|
+
return { name, flag };
|
|
145
|
+
return unknown;
|
|
146
|
+
}
|
|
147
|
+
determineCmdState(argv, Klass) {
|
|
148
|
+
const argNames = Object.keys(Klass.args || {});
|
|
149
|
+
let needFlagValueSatisfied = false;
|
|
150
|
+
let argIsFlag = false;
|
|
151
|
+
let argIsFlagValue = false;
|
|
152
|
+
let argsIndex = -1;
|
|
153
|
+
let flagName;
|
|
154
|
+
argv.filter(wild => {
|
|
155
|
+
if (wild.match(/^-(-)?/)) {
|
|
156
|
+
// we're a flag
|
|
157
|
+
argIsFlag = true;
|
|
158
|
+
// ignore me
|
|
159
|
+
const wildSplit = wild.split('=');
|
|
160
|
+
const key = wildSplit.length === 1 ? wild : wildSplit[0];
|
|
161
|
+
const { name, flag } = this.findFlagFromWildArg(key, Klass);
|
|
162
|
+
flagName = name;
|
|
163
|
+
// end ignore me
|
|
164
|
+
if (wildSplit.length === 1) {
|
|
165
|
+
// we're a flag w/o a '=value'
|
|
166
|
+
// (find flag & see if flag needs a value)
|
|
167
|
+
if (flag && flag.type !== 'boolean') {
|
|
168
|
+
// we're a flag who needs our value to be next
|
|
169
|
+
argIsFlagValue = false;
|
|
170
|
+
needFlagValueSatisfied = true;
|
|
171
|
+
return false;
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
// --app=my-app is considered a flag & not a flag value
|
|
175
|
+
// the shell's autocomplete handles partial value matching
|
|
176
|
+
// add parsedFlag
|
|
177
|
+
if (wildSplit.length === 2 && name)
|
|
178
|
+
this.parsedFlags[name] = wildSplit[1];
|
|
179
|
+
// we're a flag who is satisfied
|
|
180
|
+
argIsFlagValue = false;
|
|
181
|
+
needFlagValueSatisfied = false;
|
|
182
|
+
return false;
|
|
183
|
+
}
|
|
184
|
+
// we're not a flag
|
|
185
|
+
argIsFlag = false;
|
|
186
|
+
if (needFlagValueSatisfied) {
|
|
187
|
+
// we're a flag value
|
|
188
|
+
// add parsedFlag
|
|
189
|
+
if (flagName)
|
|
190
|
+
this.parsedFlags[flagName] = wild;
|
|
191
|
+
argIsFlagValue = true;
|
|
192
|
+
needFlagValueSatisfied = false;
|
|
193
|
+
return false;
|
|
194
|
+
}
|
|
195
|
+
// we're an arg!
|
|
196
|
+
// add parsedArgs
|
|
197
|
+
// TO-DO: how to handle variableArgs?
|
|
198
|
+
argsIndex += 1;
|
|
199
|
+
if (argsIndex < argNames.length) {
|
|
200
|
+
this.parsedArgs[argNames[argsIndex]] = wild;
|
|
201
|
+
}
|
|
202
|
+
argIsFlagValue = false;
|
|
203
|
+
needFlagValueSatisfied = false;
|
|
204
|
+
return true;
|
|
205
|
+
});
|
|
206
|
+
return [argsIndex, argIsFlag, argIsFlagValue];
|
|
207
|
+
}
|
|
208
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AutocompleteBase } from '../../lib/autocomplete/base.js';
|
|
2
|
+
export default class Script extends AutocompleteBase {
|
|
3
|
+
static description: string;
|
|
4
|
+
static hidden: boolean;
|
|
5
|
+
static args: {
|
|
6
|
+
shell: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
7
|
+
};
|
|
8
|
+
run(): Promise<void>;
|
|
9
|
+
private get prefix();
|
|
10
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Args } from '@oclif/core';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import { AutocompleteBase } from '../../lib/autocomplete/base.js';
|
|
4
|
+
export default class Script extends AutocompleteBase {
|
|
5
|
+
static description = 'display autocomplete setup script for shell';
|
|
6
|
+
static hidden = true;
|
|
7
|
+
static args = {
|
|
8
|
+
shell: Args.string({ description: 'shell type', required: false }),
|
|
9
|
+
};
|
|
10
|
+
async run() {
|
|
11
|
+
const { args } = await this.parse(Script);
|
|
12
|
+
const shell = args.shell || this.config.shell;
|
|
13
|
+
this.errorIfNotSupportedShell(shell);
|
|
14
|
+
const shellUpcase = shell.toUpperCase();
|
|
15
|
+
this.log(`${this.prefix}HEROKU_AC_${shellUpcase}_SETUP_PATH=${path.join(this.autocompleteCacheDir, `${shell}_setup`)} && test -f $HEROKU_AC_${shellUpcase}_SETUP_PATH && source $HEROKU_AC_${shellUpcase}_SETUP_PATH;`);
|
|
16
|
+
}
|
|
17
|
+
get prefix() {
|
|
18
|
+
return `\n# ${this.config.bin} autocomplete setup\n`;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
+
import { color, hux } from '@heroku/heroku-cli-util';
|
|
1
2
|
import { Command, flags as Flags } from '@heroku-cli/command';
|
|
2
|
-
import { hux } from '@heroku/heroku-cli-util';
|
|
3
|
-
import { color } from '@heroku-cli/color';
|
|
4
|
-
import { BuildpackCommand } from '../../lib/buildpacks/buildpacks.js';
|
|
5
3
|
import { getGeneration } from '../../lib/apps/generation.js';
|
|
4
|
+
import { BuildpackCommand } from '../../lib/buildpacks/buildpacks.js';
|
|
6
5
|
export default class Index extends Command {
|
|
7
6
|
static description = 'list the buildpacks on an app';
|
|
8
7
|
static flags = {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { Command } from '@heroku-cli/command';
|
|
2
2
|
export default class Remove extends Command {
|
|
3
|
+
static args: {
|
|
4
|
+
buildpack: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
5
|
+
};
|
|
3
6
|
static description: string;
|
|
4
7
|
static flags: {
|
|
5
8
|
app: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
6
|
-
remote: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
9
|
index: import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
-
|
|
9
|
-
static args: {
|
|
10
|
-
buildpack: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
10
|
+
remote: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
};
|
|
12
12
|
run(): Promise<void>;
|
|
13
13
|
}
|
|
@@ -1,20 +1,21 @@
|
|
|
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 { BuildpackCommand } from '../../lib/buildpacks/buildpacks.js';
|
|
4
5
|
export default class Remove extends Command {
|
|
6
|
+
static args = {
|
|
7
|
+
buildpack: Args.string({
|
|
8
|
+
description: 'namespace/name of the buildpack',
|
|
9
|
+
}),
|
|
10
|
+
};
|
|
5
11
|
static description = 'remove a buildpack set on the app';
|
|
6
12
|
static flags = {
|
|
7
13
|
app: Flags.app({ required: true }),
|
|
8
|
-
remote: Flags.remote(),
|
|
9
14
|
index: Flags.integer({
|
|
10
|
-
description: 'the 1-based index of the URL to remove from the list of URLs',
|
|
11
15
|
char: 'i',
|
|
16
|
+
description: 'the 1-based index of the URL to remove from the list of URLs',
|
|
12
17
|
}),
|
|
13
|
-
|
|
14
|
-
static args = {
|
|
15
|
-
buildpack: Args.string({
|
|
16
|
-
description: 'namespace/name of the buildpack',
|
|
17
|
-
}),
|
|
18
|
+
remote: Flags.remote(),
|
|
18
19
|
};
|
|
19
20
|
async run() {
|
|
20
21
|
const { args, flags } = await this.parse(Remove);
|
|
@@ -27,7 +28,7 @@ export default class Remove extends Command {
|
|
|
27
28
|
}
|
|
28
29
|
const buildpacks = await buildpackCommand.fetch(flags.app);
|
|
29
30
|
if (buildpacks.length === 0) {
|
|
30
|
-
ux.error(`No buildpacks were found. Next release on ${flags.app} will detect buildpack normally.`, { exit: 1 });
|
|
31
|
+
ux.error(`No buildpacks were found. Next release on ${color.app(flags.app)} will detect buildpack normally.`, { exit: 1 });
|
|
31
32
|
}
|
|
32
33
|
let spliceIndex;
|
|
33
34
|
if (flags.index) {
|
|
@@ -2,18 +2,19 @@ import { APIClient, Command } from '@heroku-cli/command';
|
|
|
2
2
|
import inquirer from 'inquirer';
|
|
3
3
|
import { SniEndpoint } from '../../lib/types/sni_endpoint.js';
|
|
4
4
|
export default class Add extends Command {
|
|
5
|
-
static
|
|
6
|
-
|
|
5
|
+
static args: {
|
|
6
|
+
CRT: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
KEY: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
8
|
+
};
|
|
7
9
|
static description: string;
|
|
8
10
|
static examples: string[];
|
|
9
11
|
static flags: {
|
|
10
12
|
app: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
13
|
remote: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
14
|
};
|
|
13
|
-
static
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
};
|
|
15
|
+
static strict: boolean;
|
|
16
|
+
static topic: string;
|
|
17
|
+
configureDomains(app: string, heroku: APIClient, cert: SniEndpoint): Promise<void>;
|
|
17
18
|
getDomainsToAssociate(sniEndpoint: SniEndpoint): Promise<{
|
|
18
19
|
domains: string[];
|
|
19
20
|
}> & {
|
|
@@ -21,9 +22,8 @@ export default class Add extends Command {
|
|
|
21
22
|
domains: string[];
|
|
22
23
|
}>;
|
|
23
24
|
};
|
|
24
|
-
|
|
25
|
+
run(): Promise<void>;
|
|
25
26
|
selectDomains(domainOptions: string[]): Promise<{
|
|
26
27
|
domains: string[];
|
|
27
28
|
}>;
|
|
28
|
-
run(): Promise<void>;
|
|
29
29
|
}
|
|
@@ -1,41 +1,31 @@
|
|
|
1
|
-
import { color } from '@heroku-cli
|
|
1
|
+
import { hux, color } from '@heroku/heroku-cli-util';
|
|
2
2
|
import { Command, flags } from '@heroku-cli/command';
|
|
3
3
|
import { Args, ux } from '@oclif/core';
|
|
4
|
-
import { hux } from '@heroku/heroku-cli-util';
|
|
5
|
-
import { waitForDomains } from '../../lib/certs/domains.js';
|
|
6
4
|
import inquirer from 'inquirer';
|
|
7
|
-
import { CertAndKeyManager } from '../../lib/certs/get_cert_and_key.js';
|
|
8
5
|
import tsheredoc from 'tsheredoc';
|
|
9
6
|
import { displayCertificateDetails } from '../../lib/certs/certificate_details.js';
|
|
7
|
+
import { waitForDomains } from '../../lib/certs/domains.js';
|
|
8
|
+
import { CertAndKeyManager } from '../../lib/certs/get_cert_and_key.js';
|
|
10
9
|
const heredoc = tsheredoc.default;
|
|
11
10
|
export default class Add extends Command {
|
|
12
|
-
static
|
|
13
|
-
|
|
11
|
+
static args = {
|
|
12
|
+
CRT: Args.string({ description: 'absolute path of the certificate file on disk', required: true }),
|
|
13
|
+
KEY: Args.string({ description: 'absolute path of the key file on disk', required: true }),
|
|
14
|
+
};
|
|
14
15
|
static description = `Add an SSL certificate to an app.
|
|
15
16
|
|
|
16
17
|
Note: certificates with PEM encoding are also valid.
|
|
17
18
|
`;
|
|
18
|
-
static examples = [
|
|
19
|
-
|
|
19
|
+
static examples = [heredoc(`
|
|
20
|
+
${color.command('heroku certs:add example.com.crt example.com.key')}
|
|
20
21
|
If you require intermediate certificates, refer to this article on merging certificates to get a complete chain:
|
|
21
|
-
https://help.salesforce.com/s/articleView?id=000333504&type=1`)
|
|
22
|
-
];
|
|
22
|
+
${color.info('https://help.salesforce.com/s/articleView?id=000333504&type=1')}`)];
|
|
23
23
|
static flags = {
|
|
24
24
|
app: flags.app({ required: true }),
|
|
25
25
|
remote: flags.remote(),
|
|
26
26
|
};
|
|
27
|
-
static
|
|
28
|
-
|
|
29
|
-
KEY: Args.string({ required: true, description: 'absolute path of the key file on disk' }),
|
|
30
|
-
};
|
|
31
|
-
getDomainsToAssociate(sniEndpoint) {
|
|
32
|
-
return inquirer.prompt([{
|
|
33
|
-
type: 'checkbox',
|
|
34
|
-
name: 'domains',
|
|
35
|
-
message: 'Select domains',
|
|
36
|
-
choices: sniEndpoint.ssl_cert.cert_domains,
|
|
37
|
-
}]);
|
|
38
|
-
}
|
|
27
|
+
static strict = true;
|
|
28
|
+
static topic = 'certs';
|
|
39
29
|
async configureDomains(app, heroku, cert) {
|
|
40
30
|
const certDomains = cert.ssl_cert.cert_domains;
|
|
41
31
|
const apiDomains = await waitForDomains(app, heroku);
|
|
@@ -49,20 +39,20 @@ export default class Add extends Command {
|
|
|
49
39
|
})));
|
|
50
40
|
}
|
|
51
41
|
}
|
|
52
|
-
|
|
42
|
+
getDomainsToAssociate(sniEndpoint) {
|
|
53
43
|
return inquirer.prompt([{
|
|
54
|
-
|
|
55
|
-
name: 'domains',
|
|
44
|
+
choices: sniEndpoint.ssl_cert.cert_domains,
|
|
56
45
|
message: 'Select domains',
|
|
57
|
-
|
|
46
|
+
name: 'domains',
|
|
47
|
+
type: 'checkbox',
|
|
58
48
|
}]);
|
|
59
49
|
}
|
|
60
50
|
async run() {
|
|
61
|
-
const {
|
|
51
|
+
const { args, flags } = await this.parse(Add);
|
|
62
52
|
const { app } = flags;
|
|
63
53
|
const certManager = new CertAndKeyManager();
|
|
64
54
|
const files = await certManager.getCertAndKey(args);
|
|
65
|
-
ux.action.start(`Adding SSL certificate to ${color.
|
|
55
|
+
ux.action.start(`Adding SSL certificate to ${color.app(app)}`);
|
|
66
56
|
const { body: sniEndpoint } = await this.heroku.post(`/apps/${app}/sni-endpoints`, {
|
|
67
57
|
body: {
|
|
68
58
|
certificate_chain: files.crt.toString(),
|
|
@@ -73,6 +63,14 @@ export default class Add extends Command {
|
|
|
73
63
|
displayCertificateDetails(sniEndpoint);
|
|
74
64
|
await this.configureDomains(app, this.heroku, sniEndpoint);
|
|
75
65
|
}
|
|
66
|
+
async selectDomains(domainOptions) {
|
|
67
|
+
return inquirer.prompt([{
|
|
68
|
+
choices: domainOptions,
|
|
69
|
+
message: 'Select domains',
|
|
70
|
+
name: 'domains',
|
|
71
|
+
type: 'checkbox',
|
|
72
|
+
}]);
|
|
73
|
+
}
|
|
76
74
|
}
|
|
77
75
|
function splitDomains(domains) {
|
|
78
76
|
return domains.map(domain => [domain.slice(0, 1), domain.slice(1)]);
|
|
@@ -85,7 +83,7 @@ function createMatcherFromSplitDomain([firstChar, rest]) {
|
|
|
85
83
|
else {
|
|
86
84
|
matcherContents.push(firstChar);
|
|
87
85
|
}
|
|
88
|
-
const escapedRest = rest.
|
|
86
|
+
const escapedRest = rest.replaceAll('.', '\\.');
|
|
89
87
|
matcherContents.push(escapedRest);
|
|
90
88
|
return new RegExp(matcherContents.join(''));
|
|
91
89
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Command } from '@heroku-cli/command';
|
|
2
2
|
export default class Disable extends Command {
|
|
3
|
-
static topic: string;
|
|
4
3
|
static description: string;
|
|
5
4
|
static flags: {
|
|
6
|
-
confirm: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
5
|
app: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
6
|
+
confirm: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
7
|
remote: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
8
|
};
|
|
9
|
+
static topic: string;
|
|
10
10
|
run(): Promise<void>;
|
|
11
11
|
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { color } from '@heroku-cli
|
|
1
|
+
import { color } from '@heroku/heroku-cli-util';
|
|
2
2
|
import { Command, flags } from '@heroku-cli/command';
|
|
3
3
|
import { ux } from '@oclif/core';
|
|
4
|
-
import ConfirmCommand from '../../../lib/confirmCommand.js';
|
|
5
4
|
import tsheredoc from 'tsheredoc';
|
|
5
|
+
import ConfirmCommand from '../../../lib/confirmCommand.js';
|
|
6
6
|
const heredoc = tsheredoc.default;
|
|
7
7
|
export default class Disable extends Command {
|
|
8
|
-
static topic = 'certs';
|
|
9
8
|
static description = 'disable ACM for an app';
|
|
10
9
|
static flags = {
|
|
11
|
-
confirm: flags.string({ char: 'c', hidden: true }),
|
|
12
10
|
app: flags.app({ required: true }),
|
|
11
|
+
confirm: flags.string({ char: 'c', hidden: true }),
|
|
13
12
|
remote: flags.remote(),
|
|
14
13
|
};
|
|
14
|
+
static topic = 'certs';
|
|
15
15
|
async run() {
|
|
16
16
|
const { flags } = await this.parse(Disable);
|
|
17
17
|
const { app, confirm } = flags;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Command } from '@heroku-cli/command';
|
|
2
2
|
export default class Enable extends Command {
|
|
3
|
-
static topic: string;
|
|
4
3
|
static description: string;
|
|
5
4
|
static flags: {
|
|
6
|
-
wait: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
7
5
|
app: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
6
|
remote: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
|
+
wait: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
9
8
|
};
|
|
10
9
|
static notifier: (subtitle: string, message: string, success?: boolean) => void;
|
|
10
|
+
static topic: string;
|
|
11
11
|
run(): Promise<void>;
|
|
12
12
|
}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import { color } from '@heroku-cli
|
|
1
|
+
import { color, hux } from '@heroku/heroku-cli-util';
|
|
2
2
|
import { Command, flags } from '@heroku-cli/command';
|
|
3
3
|
import { ux } from '@oclif/core';
|
|
4
|
-
import {
|
|
5
|
-
import { getDomains, waitForDomains, printDomains, waitForCertIssuedOnDomains } from '../../../lib/domains/domains.js';
|
|
4
|
+
import { getDomains, printDomains, waitForCertIssuedOnDomains, waitForDomains, } from '../../../lib/domains/domains.js';
|
|
6
5
|
import notify from '../../../lib/notify.js';
|
|
7
6
|
export default class Enable extends Command {
|
|
8
|
-
static topic = 'certs';
|
|
9
7
|
static description = 'enable ACM status for an app';
|
|
10
8
|
static flags = {
|
|
11
|
-
wait: flags.boolean({ description: 'watch ACM status and exit when complete' }),
|
|
12
9
|
app: flags.app({ required: true }),
|
|
13
10
|
remote: flags.remote(),
|
|
11
|
+
wait: flags.boolean({ description: 'watch ACM status and exit when complete' }),
|
|
14
12
|
};
|
|
15
13
|
static notifier = notify;
|
|
14
|
+
static topic = 'certs';
|
|
16
15
|
async run() {
|
|
17
16
|
const { flags } = await this.parse(Enable);
|
|
18
17
|
const { app, wait } = flags;
|
|
@@ -20,26 +19,26 @@ export default class Enable extends Command {
|
|
|
20
19
|
const domainsBeforeEnable = await getDomains(this.heroku, app);
|
|
21
20
|
await this.heroku.post(`/apps/${app}/acm`, { body: {} });
|
|
22
21
|
if (wait) {
|
|
23
|
-
ux.action.stop(`${color.
|
|
22
|
+
ux.action.stop(`${color.info('starting')}.`);
|
|
24
23
|
try {
|
|
25
24
|
await waitForCertIssuedOnDomains(this.heroku, app);
|
|
26
25
|
Enable.notifier('heroku certs:auto:enable', 'Certificate issued to all domains');
|
|
27
26
|
}
|
|
28
27
|
catch (error) {
|
|
29
28
|
Enable.notifier('heroku certs:auto:enable', 'An error occurred', false);
|
|
30
|
-
hux.styledHeader(`${color.
|
|
29
|
+
hux.styledHeader(`${color.failure('Error')}: The certificate could not be issued to all domains. See status with ${color.code('heroku certs:auto')}.`);
|
|
31
30
|
throw error;
|
|
32
31
|
}
|
|
33
32
|
}
|
|
34
33
|
else {
|
|
35
|
-
ux.action.stop(`${color.
|
|
34
|
+
ux.action.stop(`${color.info('starting')}. See status with ${color.code('heroku certs:auto')} or wait until active with ${color.code('heroku certs:auto --wait')}`);
|
|
36
35
|
}
|
|
37
36
|
const domains = await waitForDomains(this.heroku, app);
|
|
38
37
|
const changedCnames = domains.filter(domain => {
|
|
39
38
|
const domainBeforeEnable = domainsBeforeEnable.find(domainBefore => domain.hostname === domainBefore.hostname);
|
|
40
39
|
return domainBeforeEnable && domain.cname !== domainBeforeEnable.cname;
|
|
41
40
|
});
|
|
42
|
-
const message = `Your certificate will now be managed by Heroku. Check the status by running ${color.
|
|
41
|
+
const message = `Your certificate will now be managed by Heroku. Check the status by running ${color.code('heroku certs:auto')}.`;
|
|
43
42
|
if (domains.length === 0 || changedCnames.length > 0) {
|
|
44
43
|
printDomains(changedCnames, message);
|
|
45
44
|
}
|