@vendure/cloud 0.2.0 → 0.3.1
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 +60 -6
- package/dist/cli/arguments.d.ts +5 -0
- package/dist/cli/arguments.d.ts.map +1 -0
- package/dist/cli/arguments.js +57 -0
- package/dist/cli/arguments.js.map +1 -0
- package/dist/cli/command.d.ts +26 -0
- package/dist/cli/command.d.ts.map +1 -0
- package/dist/cli/command.js +84 -0
- package/dist/cli/command.js.map +1 -0
- package/dist/cli/commands/deployment/arguments.d.ts +3 -0
- package/dist/cli/commands/deployment/arguments.d.ts.map +1 -0
- package/dist/cli/commands/deployment/arguments.js +13 -0
- package/dist/cli/commands/deployment/arguments.js.map +1 -0
- package/dist/cli/commands/deployment/build-logs.d.ts +3 -0
- package/dist/cli/commands/deployment/build-logs.d.ts.map +1 -0
- package/dist/cli/commands/deployment/build-logs.js +98 -0
- package/dist/cli/commands/deployment/build-logs.js.map +1 -0
- package/dist/cli/commands/deployment/deploy.d.ts +3 -0
- package/dist/cli/commands/deployment/deploy.d.ts.map +1 -0
- package/dist/cli/commands/deployment/deploy.js +306 -0
- package/dist/cli/commands/deployment/deploy.js.map +1 -0
- package/dist/cli/commands/deployment/index.d.ts +3 -0
- package/dist/cli/commands/deployment/index.d.ts.map +1 -0
- package/dist/cli/commands/deployment/index.js +177 -0
- package/dist/cli/commands/deployment/index.js.map +1 -0
- package/dist/cli/commands/deployment/list.d.ts +3 -0
- package/dist/cli/commands/deployment/list.d.ts.map +1 -0
- package/dist/cli/commands/deployment/list.js +77 -0
- package/dist/cli/commands/deployment/list.js.map +1 -0
- package/dist/cli/commands/deployment/logs.d.ts +3 -0
- package/dist/cli/commands/deployment/logs.d.ts.map +1 -0
- package/dist/cli/commands/deployment/logs.js +88 -0
- package/dist/cli/commands/deployment/logs.js.map +1 -0
- package/dist/cli/commands/deployment/options.d.ts +11 -0
- package/dist/cli/commands/deployment/options.d.ts.map +1 -0
- package/dist/cli/commands/deployment/options.js +37 -0
- package/dist/cli/commands/deployment/options.js.map +1 -0
- package/dist/cli/commands/deployment/plan-format.d.ts +8 -0
- package/dist/cli/commands/deployment/plan-format.d.ts.map +1 -0
- package/dist/cli/commands/deployment/plan-format.js +25 -0
- package/dist/cli/commands/deployment/plan-format.js.map +1 -0
- package/dist/cli/commands/deployment/plan.d.ts +3 -0
- package/dist/cli/commands/deployment/plan.d.ts.map +1 -0
- package/dist/cli/commands/deployment/plan.js +54 -0
- package/dist/cli/commands/deployment/plan.js.map +1 -0
- package/dist/cli/commands/deployment/rollback.d.ts +3 -0
- package/dist/cli/commands/deployment/rollback.d.ts.map +1 -0
- package/dist/cli/commands/deployment/rollback.js +97 -0
- package/dist/cli/commands/deployment/rollback.js.map +1 -0
- package/dist/cli/commands/deployment/shared.d.ts +5 -0
- package/dist/cli/commands/deployment/shared.d.ts.map +1 -0
- package/dist/cli/commands/deployment/shared.js +23 -0
- package/dist/cli/commands/deployment/shared.js.map +1 -0
- package/dist/cli/commands/deployment/show.d.ts +3 -0
- package/dist/cli/commands/deployment/show.d.ts.map +1 -0
- package/dist/cli/commands/deployment/show.js +71 -0
- package/dist/cli/commands/deployment/show.js.map +1 -0
- package/dist/cli/commands/deployment/source.d.ts +14 -0
- package/dist/cli/commands/deployment/source.d.ts.map +1 -0
- package/dist/cli/commands/deployment/source.js +19 -0
- package/dist/cli/commands/deployment/source.js.map +1 -0
- package/dist/cli/commands/deployment/status.d.ts +3 -0
- package/dist/cli/commands/deployment/status.d.ts.map +1 -0
- package/dist/cli/commands/deployment/status.js +59 -0
- package/dist/cli/commands/deployment/status.js.map +1 -0
- package/dist/cli/commands/deployment/teardown.d.ts +3 -0
- package/dist/cli/commands/deployment/teardown.d.ts.map +1 -0
- package/dist/cli/commands/deployment/teardown.js +178 -0
- package/dist/cli/commands/deployment/teardown.js.map +1 -0
- package/dist/cli/commands/identity-context/context.d.ts +3 -0
- package/dist/cli/commands/identity-context/context.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/context.js +47 -0
- package/dist/cli/commands/identity-context/context.js.map +1 -0
- package/dist/cli/commands/identity-context/index.d.ts +2 -0
- package/dist/cli/commands/identity-context/index.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/index.js +94 -0
- package/dist/cli/commands/identity-context/index.js.map +1 -0
- package/dist/cli/commands/identity-context/keys.d.ts +5 -0
- package/dist/cli/commands/identity-context/keys.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/keys.js +52 -0
- package/dist/cli/commands/identity-context/keys.js.map +1 -0
- package/dist/cli/commands/identity-context/login.d.ts +2 -0
- package/dist/cli/commands/identity-context/login.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/login.js +158 -0
- package/dist/cli/commands/identity-context/login.js.map +1 -0
- package/dist/cli/commands/identity-context/logout.d.ts +2 -0
- package/dist/cli/commands/identity-context/logout.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/logout.js +12 -0
- package/dist/cli/commands/identity-context/logout.js.map +1 -0
- package/dist/cli/commands/identity-context/org-switch.d.ts +3 -0
- package/dist/cli/commands/identity-context/org-switch.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/org-switch.js +71 -0
- package/dist/cli/commands/identity-context/org-switch.js.map +1 -0
- package/dist/cli/commands/identity-context/use.d.ts +3 -0
- package/dist/cli/commands/identity-context/use.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/use.js +23 -0
- package/dist/cli/commands/identity-context/use.js.map +1 -0
- package/dist/cli/commands/identity-context/whoami.d.ts +3 -0
- package/dist/cli/commands/identity-context/whoami.d.ts.map +1 -0
- package/dist/cli/commands/identity-context/whoami.js +80 -0
- package/dist/cli/commands/identity-context/whoami.js.map +1 -0
- package/dist/cli/commands/index.d.ts +4 -0
- package/dist/cli/commands/index.d.ts.map +1 -0
- package/dist/cli/commands/index.js +67 -0
- package/dist/cli/commands/index.js.map +1 -0
- package/dist/cli/commands/project-config/config/build-fields.d.ts +4 -0
- package/dist/cli/commands/project-config/config/build-fields.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/build-fields.js +16 -0
- package/dist/cli/commands/project-config/config/build-fields.js.map +1 -0
- package/dist/cli/commands/project-config/config/build.d.ts +4 -0
- package/dist/cli/commands/project-config/config/build.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/build.js +46 -0
- package/dist/cli/commands/project-config/config/build.js.map +1 -0
- package/dist/cli/commands/project-config/config/desired-state.d.ts +4 -0
- package/dist/cli/commands/project-config/config/desired-state.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/desired-state.js +34 -0
- package/dist/cli/commands/project-config/config/desired-state.js.map +1 -0
- package/dist/cli/commands/project-config/config/index.d.ts +2 -0
- package/dist/cli/commands/project-config/config/index.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/index.js +177 -0
- package/dist/cli/commands/project-config/config/index.js.map +1 -0
- package/dist/cli/commands/project-config/config/runtime.d.ts +3 -0
- package/dist/cli/commands/project-config/config/runtime.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/runtime.js +38 -0
- package/dist/cli/commands/project-config/config/runtime.js.map +1 -0
- package/dist/cli/commands/project-config/config/search.d.ts +3 -0
- package/dist/cli/commands/project-config/config/search.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/search.js +54 -0
- package/dist/cli/commands/project-config/config/search.js.map +1 -0
- package/dist/cli/commands/project-config/config/set.d.ts +2 -0
- package/dist/cli/commands/project-config/config/set.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/set.js +14 -0
- package/dist/cli/commands/project-config/config/set.js.map +1 -0
- package/dist/cli/commands/project-config/config/show.d.ts +6 -0
- package/dist/cli/commands/project-config/config/show.d.ts.map +1 -0
- package/dist/cli/commands/project-config/config/show.js +33 -0
- package/dist/cli/commands/project-config/config/show.js.map +1 -0
- package/dist/cli/commands/project-config/env/add.d.ts +3 -0
- package/dist/cli/commands/project-config/env/add.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/add.js +22 -0
- package/dist/cli/commands/project-config/env/add.js.map +1 -0
- package/dist/cli/commands/project-config/env/get.d.ts +3 -0
- package/dist/cli/commands/project-config/env/get.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/get.js +12 -0
- package/dist/cli/commands/project-config/env/get.js.map +1 -0
- package/dist/cli/commands/project-config/env/import.d.ts +3 -0
- package/dist/cli/commands/project-config/env/import.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/import.js +45 -0
- package/dist/cli/commands/project-config/env/import.js.map +1 -0
- package/dist/cli/commands/project-config/env/index.d.ts +2 -0
- package/dist/cli/commands/project-config/env/index.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/index.js +103 -0
- package/dist/cli/commands/project-config/env/index.js.map +1 -0
- package/dist/cli/commands/project-config/env/list.d.ts +3 -0
- package/dist/cli/commands/project-config/env/list.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/list.js +25 -0
- package/dist/cli/commands/project-config/env/list.js.map +1 -0
- package/dist/cli/commands/project-config/env/metadata-options.d.ts +9 -0
- package/dist/cli/commands/project-config/env/metadata-options.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/metadata-options.js +32 -0
- package/dist/cli/commands/project-config/env/metadata-options.js.map +1 -0
- package/dist/cli/commands/project-config/env/pull.d.ts +3 -0
- package/dist/cli/commands/project-config/env/pull.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/pull.js +50 -0
- package/dist/cli/commands/project-config/env/pull.js.map +1 -0
- package/dist/cli/commands/project-config/env/read-value.d.ts +3 -0
- package/dist/cli/commands/project-config/env/read-value.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/read-value.js +20 -0
- package/dist/cli/commands/project-config/env/read-value.js.map +1 -0
- package/dist/cli/commands/project-config/env/rm.d.ts +3 -0
- package/dist/cli/commands/project-config/env/rm.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/rm.js +23 -0
- package/dist/cli/commands/project-config/env/rm.js.map +1 -0
- package/dist/cli/commands/project-config/env/run.d.ts +3 -0
- package/dist/cli/commands/project-config/env/run.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/run.js +28 -0
- package/dist/cli/commands/project-config/env/run.js.map +1 -0
- package/dist/cli/commands/project-config/env/update.d.ts +3 -0
- package/dist/cli/commands/project-config/env/update.d.ts.map +1 -0
- package/dist/cli/commands/project-config/env/update.js +32 -0
- package/dist/cli/commands/project-config/env/update.js.map +1 -0
- package/dist/cli/commands/project-config/environment/create.d.ts +3 -0
- package/dist/cli/commands/project-config/environment/create.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/create.js +33 -0
- package/dist/cli/commands/project-config/environment/create.js.map +1 -0
- package/dist/cli/commands/project-config/environment/delete.d.ts +3 -0
- package/dist/cli/commands/project-config/environment/delete.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/delete.js +42 -0
- package/dist/cli/commands/project-config/environment/delete.js.map +1 -0
- package/dist/cli/commands/project-config/environment/find.d.ts +7 -0
- package/dist/cli/commands/project-config/environment/find.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/find.js +18 -0
- package/dist/cli/commands/project-config/environment/find.js.map +1 -0
- package/dist/cli/commands/project-config/environment/index.d.ts +2 -0
- package/dist/cli/commands/project-config/environment/index.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/index.js +76 -0
- package/dist/cli/commands/project-config/environment/index.js.map +1 -0
- package/dist/cli/commands/project-config/environment/initial-superadmin.d.ts +3 -0
- package/dist/cli/commands/project-config/environment/initial-superadmin.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/initial-superadmin.js +13 -0
- package/dist/cli/commands/project-config/environment/initial-superadmin.js.map +1 -0
- package/dist/cli/commands/project-config/environment/list.d.ts +3 -0
- package/dist/cli/commands/project-config/environment/list.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/list.js +23 -0
- package/dist/cli/commands/project-config/environment/list.js.map +1 -0
- package/dist/cli/commands/project-config/environment/show.d.ts +3 -0
- package/dist/cli/commands/project-config/environment/show.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/show.js +30 -0
- package/dist/cli/commands/project-config/environment/show.js.map +1 -0
- package/dist/cli/commands/project-config/environment/update.d.ts +3 -0
- package/dist/cli/commands/project-config/environment/update.d.ts.map +1 -0
- package/dist/cli/commands/project-config/environment/update.js +19 -0
- package/dist/cli/commands/project-config/environment/update.js.map +1 -0
- package/dist/cli/commands/project-config/index.d.ts +3 -0
- package/dist/cli/commands/project-config/index.d.ts.map +1 -0
- package/dist/cli/commands/project-config/index.js +27 -0
- package/dist/cli/commands/project-config/index.js.map +1 -0
- package/dist/cli/commands/project-config/init/build-detection.d.ts +11 -0
- package/dist/cli/commands/project-config/init/build-detection.d.ts.map +1 -0
- package/dist/cli/commands/project-config/init/build-detection.js +113 -0
- package/dist/cli/commands/project-config/init/build-detection.js.map +1 -0
- package/dist/cli/commands/project-config/init/index.d.ts +2 -0
- package/dist/cli/commands/project-config/init/index.d.ts.map +1 -0
- package/dist/cli/commands/project-config/init/index.js +48 -0
- package/dist/cli/commands/project-config/init/index.js.map +1 -0
- package/dist/cli/commands/project-config/init/init.d.ts +14 -0
- package/dist/cli/commands/project-config/init/init.d.ts.map +1 -0
- package/dist/cli/commands/project-config/init/init.js +367 -0
- package/dist/cli/commands/project-config/init/init.js.map +1 -0
- package/dist/cli/commands/project-config/options.d.ts +10 -0
- package/dist/cli/commands/project-config/options.d.ts.map +1 -0
- package/dist/cli/commands/project-config/options.js +80 -0
- package/dist/cli/commands/project-config/options.js.map +1 -0
- package/dist/cli/commands/project-config/project/create.d.ts +3 -0
- package/dist/cli/commands/project-config/project/create.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/create.js +20 -0
- package/dist/cli/commands/project-config/project/create.js.map +1 -0
- package/dist/cli/commands/project-config/project/delete.d.ts +3 -0
- package/dist/cli/commands/project-config/project/delete.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/delete.js +28 -0
- package/dist/cli/commands/project-config/project/delete.js.map +1 -0
- package/dist/cli/commands/project-config/project/index.d.ts +2 -0
- package/dist/cli/commands/project-config/project/index.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/index.js +88 -0
- package/dist/cli/commands/project-config/project/index.js.map +1 -0
- package/dist/cli/commands/project-config/project/link.d.ts +3 -0
- package/dist/cli/commands/project-config/project/link.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/link.js +45 -0
- package/dist/cli/commands/project-config/project/link.js.map +1 -0
- package/dist/cli/commands/project-config/project/list.d.ts +3 -0
- package/dist/cli/commands/project-config/project/list.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/list.js +15 -0
- package/dist/cli/commands/project-config/project/list.js.map +1 -0
- package/dist/cli/commands/project-config/project/show.d.ts +3 -0
- package/dist/cli/commands/project-config/project/show.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/show.js +33 -0
- package/dist/cli/commands/project-config/project/show.js.map +1 -0
- package/dist/cli/commands/project-config/project/unlink.d.ts +3 -0
- package/dist/cli/commands/project-config/project/unlink.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/unlink.js +21 -0
- package/dist/cli/commands/project-config/project/unlink.js.map +1 -0
- package/dist/cli/commands/project-config/project/update.d.ts +3 -0
- package/dist/cli/commands/project-config/project/update.d.ts.map +1 -0
- package/dist/cli/commands/project-config/project/update.js +18 -0
- package/dist/cli/commands/project-config/project/update.js.map +1 -0
- package/dist/cli/commands/project-config/source/connect.d.ts +15 -0
- package/dist/cli/commands/project-config/source/connect.d.ts.map +1 -0
- package/dist/cli/commands/project-config/source/connect.js +208 -0
- package/dist/cli/commands/project-config/source/connect.js.map +1 -0
- package/dist/cli/commands/project-config/source/disconnect.d.ts +3 -0
- package/dist/cli/commands/project-config/source/disconnect.d.ts.map +1 -0
- package/dist/cli/commands/project-config/source/disconnect.js +27 -0
- package/dist/cli/commands/project-config/source/disconnect.js.map +1 -0
- package/dist/cli/commands/project-config/source/index.d.ts +2 -0
- package/dist/cli/commands/project-config/source/index.d.ts.map +1 -0
- package/dist/cli/commands/project-config/source/index.js +74 -0
- package/dist/cli/commands/project-config/source/index.js.map +1 -0
- package/dist/cli/commands/project-config/source/map.d.ts +3 -0
- package/dist/cli/commands/project-config/source/map.d.ts.map +1 -0
- package/dist/cli/commands/project-config/source/map.js +93 -0
- package/dist/cli/commands/project-config/source/map.js.map +1 -0
- package/dist/cli/commands/project-config/source/repos.d.ts +3 -0
- package/dist/cli/commands/project-config/source/repos.d.ts.map +1 -0
- package/dist/cli/commands/project-config/source/repos.js +18 -0
- package/dist/cli/commands/project-config/source/repos.js.map +1 -0
- package/dist/cli/commands/project-config/source/status.d.ts +3 -0
- package/dist/cli/commands/project-config/source/status.d.ts.map +1 -0
- package/dist/cli/commands/project-config/source/status.js +72 -0
- package/dist/cli/commands/project-config/source/status.js.map +1 -0
- package/dist/cli/commands/runtime-data/backup.d.ts +5 -0
- package/dist/cli/commands/runtime-data/backup.d.ts.map +1 -0
- package/dist/cli/commands/runtime-data/backup.js +107 -0
- package/dist/cli/commands/runtime-data/backup.js.map +1 -0
- package/dist/cli/commands/runtime-data/index.d.ts +2 -0
- package/dist/cli/commands/runtime-data/index.d.ts.map +1 -0
- package/dist/cli/commands/runtime-data/index.js +206 -0
- package/dist/cli/commands/runtime-data/index.js.map +1 -0
- package/dist/cli/commands/runtime-data/resource.d.ts +11 -0
- package/dist/cli/commands/runtime-data/resource.d.ts.map +1 -0
- package/dist/cli/commands/runtime-data/resource.js +147 -0
- package/dist/cli/commands/runtime-data/resource.js.map +1 -0
- package/dist/cli/commands/runtime-data/restore.d.ts +3 -0
- package/dist/cli/commands/runtime-data/restore.d.ts.map +1 -0
- package/dist/cli/commands/runtime-data/restore.js +119 -0
- package/dist/cli/commands/runtime-data/restore.js.map +1 -0
- package/dist/cli/commands/runtime-data/seeds.d.ts +6 -0
- package/dist/cli/commands/runtime-data/seeds.d.ts.map +1 -0
- package/dist/cli/commands/runtime-data/seeds.js +213 -0
- package/dist/cli/commands/runtime-data/seeds.js.map +1 -0
- package/dist/cli/commands/runtime-data/tunnel.d.ts +16 -0
- package/dist/cli/commands/runtime-data/tunnel.d.ts.map +1 -0
- package/dist/cli/commands/runtime-data/tunnel.js +249 -0
- package/dist/cli/commands/runtime-data/tunnel.js.map +1 -0
- package/dist/cli/host-arguments.d.ts +7 -0
- package/dist/cli/host-arguments.d.ts.map +1 -0
- package/dist/cli/host-arguments.js +46 -0
- package/dist/cli/host-arguments.js.map +1 -0
- package/dist/cli/host-nodes.d.ts +30 -0
- package/dist/cli/host-nodes.d.ts.map +1 -0
- package/dist/cli/host-nodes.js +17 -0
- package/dist/cli/host-nodes.js.map +1 -0
- package/dist/cli/index.d.ts +29 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +60 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/lib/api-client.d.ts +19 -0
- package/dist/cli/lib/api-client.d.ts.map +1 -0
- package/dist/cli/lib/api-client.js +111 -0
- package/dist/cli/lib/api-client.js.map +1 -0
- package/dist/cli/lib/auth.d.ts +132 -0
- package/dist/cli/lib/auth.d.ts.map +1 -0
- package/dist/cli/lib/auth.js +505 -0
- package/dist/cli/lib/auth.js.map +1 -0
- package/dist/cli/lib/config.d.ts +7 -0
- package/dist/cli/lib/config.d.ts.map +1 -0
- package/dist/cli/lib/config.js +11 -0
- package/dist/cli/lib/config.js.map +1 -0
- package/dist/cli/lib/context.d.ts +10 -0
- package/dist/cli/lib/context.d.ts.map +1 -0
- package/dist/cli/lib/context.js +42 -0
- package/dist/cli/lib/context.js.map +1 -0
- package/dist/cli/lib/contract/build-settings.d.ts +36 -0
- package/dist/cli/lib/contract/build-settings.d.ts.map +1 -0
- package/dist/cli/lib/contract/build-settings.js +73 -0
- package/dist/cli/lib/contract/build-settings.js.map +1 -0
- package/dist/cli/lib/contract/database.d.ts +47 -0
- package/dist/cli/lib/contract/database.d.ts.map +1 -0
- package/dist/cli/lib/contract/database.js +29 -0
- package/dist/cli/lib/contract/database.js.map +1 -0
- package/dist/cli/lib/contract/deployment-resource-labels.d.ts +11 -0
- package/dist/cli/lib/contract/deployment-resource-labels.d.ts.map +1 -0
- package/dist/cli/lib/contract/deployment-resource-labels.js +80 -0
- package/dist/cli/lib/contract/deployment-resource-labels.js.map +1 -0
- package/dist/cli/lib/contract/deployments.d.ts +128 -0
- package/dist/cli/lib/contract/deployments.d.ts.map +1 -0
- package/dist/cli/lib/contract/deployments.js +46 -0
- package/dist/cli/lib/contract/deployments.js.map +1 -0
- package/dist/cli/lib/contract/desired-state.d.ts +104 -0
- package/dist/cli/lib/contract/desired-state.d.ts.map +1 -0
- package/dist/cli/lib/contract/desired-state.js +171 -0
- package/dist/cli/lib/contract/desired-state.js.map +1 -0
- package/dist/cli/lib/contract/foreign-credentials.d.ts +49 -0
- package/dist/cli/lib/contract/foreign-credentials.d.ts.map +1 -0
- package/dist/cli/lib/contract/foreign-credentials.js +71 -0
- package/dist/cli/lib/contract/foreign-credentials.js.map +1 -0
- package/dist/cli/lib/contract/logs.d.ts +44 -0
- package/dist/cli/lib/contract/logs.d.ts.map +1 -0
- package/dist/cli/lib/contract/logs.js +66 -0
- package/dist/cli/lib/contract/logs.js.map +1 -0
- package/dist/cli/lib/contract/projects.d.ts +31 -0
- package/dist/cli/lib/contract/projects.d.ts.map +1 -0
- package/dist/cli/lib/contract/projects.js +9 -0
- package/dist/cli/lib/contract/projects.js.map +1 -0
- package/dist/cli/lib/contract/public-error-details.d.ts +4 -0
- package/dist/cli/lib/contract/public-error-details.d.ts.map +1 -0
- package/dist/cli/lib/contract/public-error-details.js +248 -0
- package/dist/cli/lib/contract/public-error-details.js.map +1 -0
- package/dist/cli/lib/contract/runtime-operations.d.ts +87 -0
- package/dist/cli/lib/contract/runtime-operations.d.ts.map +1 -0
- package/dist/cli/lib/contract/runtime-operations.js +67 -0
- package/dist/cli/lib/contract/runtime-operations.js.map +1 -0
- package/dist/cli/lib/contract/seeds.d.ts +31 -0
- package/dist/cli/lib/contract/seeds.d.ts.map +1 -0
- package/dist/cli/lib/contract/seeds.js +43 -0
- package/dist/cli/lib/contract/seeds.js.map +1 -0
- package/dist/cli/lib/contract/source-repository.d.ts +73 -0
- package/dist/cli/lib/contract/source-repository.d.ts.map +1 -0
- package/dist/cli/lib/contract/source-repository.js +31 -0
- package/dist/cli/lib/contract/source-repository.js.map +1 -0
- package/dist/cli/lib/contract/wire-types.d.ts +47 -0
- package/dist/cli/lib/contract/wire-types.d.ts.map +1 -0
- package/dist/cli/lib/contract/wire-types.js +13 -0
- package/dist/cli/lib/contract/wire-types.js.map +1 -0
- package/dist/cli/lib/contract/wire-values.d.ts +6 -0
- package/dist/cli/lib/contract/wire-values.d.ts.map +1 -0
- package/dist/cli/lib/contract/wire-values.js +21 -0
- package/dist/cli/lib/contract/wire-values.js.map +1 -0
- package/dist/cli/lib/dotenv.d.ts +2 -0
- package/dist/cli/lib/dotenv.d.ts.map +1 -0
- package/dist/cli/lib/dotenv.js +28 -0
- package/dist/cli/lib/dotenv.js.map +1 -0
- package/dist/cli/lib/env-file.d.ts +2 -0
- package/dist/cli/lib/env-file.d.ts.map +1 -0
- package/dist/cli/lib/env-file.js +26 -0
- package/dist/cli/lib/env-file.js.map +1 -0
- package/dist/cli/lib/env-preflight.d.ts +24 -0
- package/dist/cli/lib/env-preflight.d.ts.map +1 -0
- package/dist/cli/lib/env-preflight.js +265 -0
- package/dist/cli/lib/env-preflight.js.map +1 -0
- package/dist/cli/lib/error-output.d.ts +3 -0
- package/dist/cli/lib/error-output.d.ts.map +1 -0
- package/dist/cli/lib/error-output.js +2 -0
- package/dist/cli/lib/error-output.js.map +1 -0
- package/dist/cli/lib/errors.d.ts +37 -0
- package/dist/cli/lib/errors.d.ts.map +1 -0
- package/dist/cli/lib/errors.js +147 -0
- package/dist/cli/lib/errors.js.map +1 -0
- package/dist/cli/lib/file-lock.d.ts +23 -0
- package/dist/cli/lib/file-lock.d.ts.map +1 -0
- package/dist/cli/lib/file-lock.js +121 -0
- package/dist/cli/lib/file-lock.js.map +1 -0
- package/dist/cli/lib/format.d.ts +6 -0
- package/dist/cli/lib/format.d.ts.map +1 -0
- package/dist/cli/lib/format.js +44 -0
- package/dist/cli/lib/format.js.map +1 -0
- package/dist/cli/lib/id-prefix.d.ts +6 -0
- package/dist/cli/lib/id-prefix.d.ts.map +1 -0
- package/dist/cli/lib/id-prefix.js +18 -0
- package/dist/cli/lib/id-prefix.js.map +1 -0
- package/dist/cli/lib/invocation.d.ts +6 -0
- package/dist/cli/lib/invocation.d.ts.map +1 -0
- package/dist/cli/lib/invocation.js +34 -0
- package/dist/cli/lib/invocation.js.map +1 -0
- package/dist/cli/lib/log-stream.d.ts +7 -0
- package/dist/cli/lib/log-stream.d.ts.map +1 -0
- package/dist/cli/lib/log-stream.js +179 -0
- package/dist/cli/lib/log-stream.js.map +1 -0
- package/dist/cli/lib/logger.d.ts +5 -0
- package/dist/cli/lib/logger.d.ts.map +1 -0
- package/dist/cli/lib/logger.js +52 -0
- package/dist/cli/lib/logger.js.map +1 -0
- package/dist/cli/lib/open-browser.d.ts +2 -0
- package/dist/cli/lib/open-browser.d.ts.map +1 -0
- package/dist/cli/lib/open-browser.js +8 -0
- package/dist/cli/lib/open-browser.js.map +1 -0
- package/dist/cli/lib/organization.d.ts +3 -0
- package/dist/cli/lib/organization.d.ts.map +1 -0
- package/dist/cli/lib/organization.js +20 -0
- package/dist/cli/lib/organization.js.map +1 -0
- package/dist/cli/lib/project-link.d.ts +12 -0
- package/dist/cli/lib/project-link.d.ts.map +1 -0
- package/dist/cli/lib/project-link.js +69 -0
- package/dist/cli/lib/project-link.js.map +1 -0
- package/dist/cli/lib/resolve.d.ts +20 -0
- package/dist/cli/lib/resolve.d.ts.map +1 -0
- package/dist/cli/lib/resolve.js +88 -0
- package/dist/cli/lib/resolve.js.map +1 -0
- package/dist/cli/lib/sleep.d.ts +2 -0
- package/dist/cli/lib/sleep.d.ts.map +1 -0
- package/dist/cli/lib/sleep.js +4 -0
- package/dist/cli/lib/sleep.js.map +1 -0
- package/dist/cli/lib/slug.d.ts +3 -0
- package/dist/cli/lib/slug.d.ts.map +1 -0
- package/dist/cli/lib/slug.js +13 -0
- package/dist/cli/lib/slug.js.map +1 -0
- package/dist/cli/lib/source-repository-link.d.ts +5 -0
- package/dist/cli/lib/source-repository-link.d.ts.map +1 -0
- package/dist/cli/lib/source-repository-link.js +28 -0
- package/dist/cli/lib/source-repository-link.js.map +1 -0
- package/dist/cli/lib/types.d.ts +58 -0
- package/dist/cli/lib/types.d.ts.map +1 -0
- package/dist/cli/lib/types.js +10 -0
- package/dist/cli/lib/types.js.map +1 -0
- package/dist/cli/root-options.d.ts +14 -0
- package/dist/cli/root-options.d.ts.map +1 -0
- package/dist/cli/root-options.js +53 -0
- package/dist/cli/root-options.js.map +1 -0
- package/dist/cli-plugin.d.ts +22 -0
- package/dist/cli-plugin.d.ts.map +1 -0
- package/dist/cli-plugin.js +30 -0
- package/dist/cli-plugin.js.map +1 -0
- package/dist/cloud-config-module.d.ts +3 -0
- package/dist/cloud-config-module.d.ts.map +1 -0
- package/dist/cloud-config-module.js +16 -0
- package/dist/cloud-config-module.js.map +1 -0
- package/dist/dev/cli-host.d.ts +3 -0
- package/dist/dev/cli-host.d.ts.map +1 -0
- package/dist/dev/cli-host.js +72 -0
- package/dist/dev/cli-host.js.map +1 -0
- package/dist/dev/dashboard-vite-config.d.ts +8 -0
- package/dist/dev/dashboard-vite-config.d.ts.map +1 -0
- package/dist/dev/dashboard-vite-config.js +52 -0
- package/dist/dev/dashboard-vite-config.js.map +1 -0
- package/dist/dev/dev-command.d.ts +7 -0
- package/dist/dev/dev-command.d.ts.map +1 -0
- package/dist/dev/dev-command.js +140 -0
- package/dist/dev/dev-command.js.map +1 -0
- package/dist/dev/dev-config.d.ts +4 -0
- package/dist/dev/dev-config.d.ts.map +1 -0
- package/dist/dev/dev-config.js +28 -0
- package/dist/dev/dev-config.js.map +1 -0
- package/dist/dev/dev-migrate.d.ts +2 -0
- package/dist/dev/dev-migrate.d.ts.map +1 -0
- package/dist/dev/dev-migrate.js +17 -0
- package/dist/dev/dev-migrate.js.map +1 -0
- package/dist/dev/dev-process.d.ts +2 -0
- package/dist/dev/dev-process.d.ts.map +1 -0
- package/dist/dev/dev-process.js +14 -0
- package/dist/dev/dev-process.js.map +1 -0
- package/dist/dev/dev-server.d.ts +2 -0
- package/dist/dev/dev-server.d.ts.map +1 -0
- package/dist/dev/dev-server.js +15 -0
- package/dist/dev/dev-server.js.map +1 -0
- package/dist/dev/dev-worker.d.ts +2 -0
- package/dist/dev/dev-worker.d.ts.map +1 -0
- package/dist/dev/dev-worker.js +11 -0
- package/dist/dev/dev-worker.js.map +1 -0
- package/dist/dev/local-services.d.ts +23 -0
- package/dist/dev/local-services.d.ts.map +1 -0
- package/dist/dev/local-services.js +288 -0
- package/dist/dev/local-services.js.map +1 -0
- package/dist/dev/project-layout.d.ts +11 -0
- package/dist/dev/project-layout.d.ts.map +1 -0
- package/dist/dev/project-layout.js +89 -0
- package/dist/dev/project-layout.js.map +1 -0
- package/dist/entrypoint.js +3 -12
- package/dist/entrypoint.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/local-asset-server.d.ts +4 -0
- package/dist/local-asset-server.d.ts.map +1 -0
- package/dist/local-asset-server.js +24 -0
- package/dist/local-asset-server.js.map +1 -0
- package/dist/local-cache-plugin.d.ts +5 -0
- package/dist/local-cache-plugin.d.ts.map +1 -0
- package/dist/local-cache-plugin.js +68 -0
- package/dist/local-cache-plugin.js.map +1 -0
- package/dist/local-cache.d.ts +17 -0
- package/dist/local-cache.d.ts.map +1 -0
- package/dist/local-cache.js +144 -0
- package/dist/local-cache.js.map +1 -0
- package/dist/local-dashboard-plugin.d.ts +9 -0
- package/dist/local-dashboard-plugin.d.ts.map +1 -0
- package/dist/local-dashboard-plugin.js +37 -0
- package/dist/local-dashboard-plugin.js.map +1 -0
- package/dist/local-database.d.ts +15 -0
- package/dist/local-database.d.ts.map +1 -0
- package/dist/local-database.js +64 -0
- package/dist/local-database.js.map +1 -0
- package/dist/local-runtime.d.ts +15 -2
- package/dist/local-runtime.d.ts.map +1 -1
- package/dist/local-runtime.js +145 -28
- package/dist/local-runtime.js.map +1 -1
- package/dist/vite.d.ts +9 -0
- package/dist/vite.d.ts.map +1 -0
- package/dist/vite.js +94 -0
- package/dist/vite.js.map +1 -0
- package/package.json +72 -7
|
@@ -0,0 +1,306 @@
|
|
|
1
|
+
import * as prompts from "@clack/prompts";
|
|
2
|
+
import { TERMINAL_STATUSES, cloudInvocation, createAuthenticatedClient, formatInlineUserFacingErrorReason, formatUserFacingErrorDetails, resolveEnvironment, sleep, } from "../../index.js";
|
|
3
|
+
// Imported directly rather than through `../../index.js`. That module carries the primitives every
|
|
4
|
+
// family shares; these two are this family's own plumbing that happens to live under `lib/`.
|
|
5
|
+
import { formatEnvPreflightSkipped, formatMissingEnvVarsWarning, runEnvVarPreflight, } from "../../lib/env-preflight.js";
|
|
6
|
+
import { consumeLogStream } from "../../lib/log-stream.js";
|
|
7
|
+
import { readImageOptions, readNegatableOption } from "./options.js";
|
|
8
|
+
import { resolveDeploymentSource } from "./source.js";
|
|
9
|
+
const POLL_INTERVAL_MS = 3_000;
|
|
10
|
+
// Compatibility fallback for an older control plane that does not yet expose
|
|
11
|
+
// its phase timeout. Deliberately generous; the current API owns the deadline.
|
|
12
|
+
const LEGACY_POLLING_TIMEOUT_MS = 60 * 60 * 1000;
|
|
13
|
+
function waitPhase(deployment) {
|
|
14
|
+
if (deployment.status === "PENDING") {
|
|
15
|
+
return "provisioning";
|
|
16
|
+
}
|
|
17
|
+
if (deployment.status === "QUEUED" || deployment.status === "BUILDING") {
|
|
18
|
+
return "build";
|
|
19
|
+
}
|
|
20
|
+
if (deployment.status === "BUILT") {
|
|
21
|
+
return "handoff";
|
|
22
|
+
}
|
|
23
|
+
return "rollout";
|
|
24
|
+
}
|
|
25
|
+
function waitTimeout(phase, deployment) {
|
|
26
|
+
const ms = (deployment.pollingTimeoutSeconds ?? LEGACY_POLLING_TIMEOUT_MS / 1000) * 1000;
|
|
27
|
+
switch (phase) {
|
|
28
|
+
case "provisioning":
|
|
29
|
+
return { ms, label: "Infrastructure setup" };
|
|
30
|
+
case "build":
|
|
31
|
+
return { ms, label: "Build" };
|
|
32
|
+
case "handoff":
|
|
33
|
+
return { ms, label: "Build handoff" };
|
|
34
|
+
case "rollout":
|
|
35
|
+
return { ms, label: "Deployment rollout" };
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function spinnerMessage(status) {
|
|
39
|
+
switch (status) {
|
|
40
|
+
case "BUILDING":
|
|
41
|
+
return "Building...";
|
|
42
|
+
case "BUILT":
|
|
43
|
+
return "Build complete, deploying...";
|
|
44
|
+
case "DEPLOYING":
|
|
45
|
+
return "Deploying...";
|
|
46
|
+
default:
|
|
47
|
+
return "Waiting for build to start...";
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// The exit code is returned rather than set on `process.exitCode`, because the Vendure CLI host
|
|
51
|
+
// calls `process.exit` with whatever an action answers. Nothing here ends the process itself: a
|
|
52
|
+
// command that did would take that decision away from the host part-way through the run.
|
|
53
|
+
export async function deploy({ options, globals }) {
|
|
54
|
+
const imageOpts = readImageOptions(options);
|
|
55
|
+
const wait = readNegatableOption(options.wait);
|
|
56
|
+
const json = globals.json === true;
|
|
57
|
+
const { project, environment } = await resolveEnvironment(globals);
|
|
58
|
+
if (!json) {
|
|
59
|
+
prompts.log.info(`Deploying ${project.slug} (${environment.slug})...`);
|
|
60
|
+
}
|
|
61
|
+
const client = createAuthenticatedClient(globals);
|
|
62
|
+
const source = await resolveDeploymentSource(client, environment, imageOpts);
|
|
63
|
+
if (!json) {
|
|
64
|
+
const proceed = await warnOnMissingEnvVars(client, environment);
|
|
65
|
+
if (!proceed) {
|
|
66
|
+
prompts.outro(`Deploy cancelled. Set the variables above, then re-run \`${cloudInvocation()} deploy\`.`);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
const deployment = source.kind === "managed-build"
|
|
71
|
+
? await startManagedBuild(client, environment.id, source.mapping.branch)
|
|
72
|
+
: await client.post("/deployments", {
|
|
73
|
+
environmentId: environment.id,
|
|
74
|
+
trigger: "USER",
|
|
75
|
+
...source.images,
|
|
76
|
+
});
|
|
77
|
+
if (!wait) {
|
|
78
|
+
if (json) {
|
|
79
|
+
process.stdout.write(`${JSON.stringify({ deploymentId: deployment.id, status: deployment.status })}\n`);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
prompts.log.info(`VC Deployment ${deployment.id} started. Run \`${cloudInvocation()} deployment logs ${deployment.id} --follow\` to follow its Build Step.`);
|
|
83
|
+
}
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
const spinner = json ? null : prompts.spinner();
|
|
87
|
+
spinner?.start("Deployment in progress...");
|
|
88
|
+
let current = deployment;
|
|
89
|
+
let phase = waitPhase(current);
|
|
90
|
+
let budgetStart = Date.now();
|
|
91
|
+
let followedBuildLogs = false;
|
|
92
|
+
while (!TERMINAL_STATUSES.has(current.status)) {
|
|
93
|
+
if (source.kind === "managed-build" &&
|
|
94
|
+
!json &&
|
|
95
|
+
!followedBuildLogs &&
|
|
96
|
+
(current.status === "QUEUED" || current.status === "BUILDING")) {
|
|
97
|
+
spinner?.stop("Build started");
|
|
98
|
+
followedBuildLogs = true;
|
|
99
|
+
try {
|
|
100
|
+
const interrupted = await consumeLogStream(client, `/deployments/${encodeURIComponent(deployment.id)}/build-logs/stream?lines=100`, { expectTerminalFrame: true });
|
|
101
|
+
if (interrupted) {
|
|
102
|
+
return 130;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
prompts.log.warn(`Could not follow the Build Step Log; deployment monitoring continues. ${error instanceof Error ? error.message : String(error)}`);
|
|
107
|
+
}
|
|
108
|
+
current = await client.get(`/deployments/${deployment.id}`);
|
|
109
|
+
if (!TERMINAL_STATUSES.has(current.status)) {
|
|
110
|
+
spinner?.start("Deployment in progress...");
|
|
111
|
+
}
|
|
112
|
+
phase = waitPhase(current);
|
|
113
|
+
budgetStart = Date.now();
|
|
114
|
+
continue;
|
|
115
|
+
}
|
|
116
|
+
const nextPhase = waitPhase(current);
|
|
117
|
+
if (nextPhase !== phase) {
|
|
118
|
+
phase = nextPhase;
|
|
119
|
+
budgetStart = Date.now();
|
|
120
|
+
}
|
|
121
|
+
const timeout = waitTimeout(phase, current);
|
|
122
|
+
if (Date.now() - budgetStart > timeout.ms) {
|
|
123
|
+
spinner?.stop(`${timeout.label} timed out`);
|
|
124
|
+
if (json) {
|
|
125
|
+
process.stdout.write(`${JSON.stringify({ deploymentId: current.id, status: current.status, timedOut: true })}\n`);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
prompts.log.warn(`${timeout.label} did not complete within ${timeout.ms / 60_000} minutes. It may still finish — run \`${cloudInvocation()} deployment list\` to check, or re-run \`${cloudInvocation()} deploy\`.`);
|
|
129
|
+
}
|
|
130
|
+
return 1;
|
|
131
|
+
}
|
|
132
|
+
await sleep(POLL_INTERVAL_MS);
|
|
133
|
+
current = await client.get(`/deployments/${deployment.id}`);
|
|
134
|
+
spinner?.message(current.statusMessage ?? spinnerMessage(current.status));
|
|
135
|
+
}
|
|
136
|
+
if (json) {
|
|
137
|
+
process.stdout.write(`${JSON.stringify(current)}\n`);
|
|
138
|
+
if (current.status !== "RUNNING" && current.status !== "SUCCEEDED") {
|
|
139
|
+
return 1;
|
|
140
|
+
}
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
if (current.status === "RUNNING" || current.status === "SUCCEEDED") {
|
|
144
|
+
spinner?.stop("Deploy complete");
|
|
145
|
+
const liveUrl = resolveLiveUrl(environment, client);
|
|
146
|
+
prompts.log.info(formatDeploymentSummary(current.summary ?? null, {
|
|
147
|
+
environmentSlug: environment.slug,
|
|
148
|
+
imageOpts,
|
|
149
|
+
liveUrl,
|
|
150
|
+
projectSlug: project.slug,
|
|
151
|
+
}));
|
|
152
|
+
// A cleanup failure is reported and still earns exit 1, but it does not end the run: the
|
|
153
|
+
// deployment itself succeeded, and the kept-resource warning and the outro below are part of
|
|
154
|
+
// telling the customer where that left them.
|
|
155
|
+
let exitCode;
|
|
156
|
+
if (current.summary) {
|
|
157
|
+
const cleanupFailures = current.summary.cleanup.failures;
|
|
158
|
+
if (cleanupFailures.length > 0) {
|
|
159
|
+
prompts.log.warn(formatCleanupFailures(cleanupFailures, project.slug, environment.slug));
|
|
160
|
+
exitCode = 1;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
const protectedResources = current.protectedResources ?? [];
|
|
164
|
+
if (protectedResources.length > 0) {
|
|
165
|
+
const lines = protectedResources.map((resource) => ` • ${resource.label}`).join("\n");
|
|
166
|
+
prompts.log.warn(`${protectedResources.length} data-bearing resource${protectedResources.length === 1 ? " was" : "s were"} kept:\n${lines}\nRun \`${cloudInvocation()} deploy teardown\` to remove ${protectedResources.length === 1 ? "it" : "them"}.`);
|
|
167
|
+
}
|
|
168
|
+
prompts.outro(`${project.slug} (${environment.slug}) is live`);
|
|
169
|
+
return exitCode;
|
|
170
|
+
}
|
|
171
|
+
spinner?.stop("Deployment failed");
|
|
172
|
+
if (current.errorDetails) {
|
|
173
|
+
prompts.log.error(formatUserFacingErrorDetails(current.errorDetails, {
|
|
174
|
+
projectSlug: project.slug,
|
|
175
|
+
environmentSlug: environment.slug,
|
|
176
|
+
}));
|
|
177
|
+
}
|
|
178
|
+
return 1;
|
|
179
|
+
}
|
|
180
|
+
// Preflight: warn about env vars the local app references but that aren't set
|
|
181
|
+
// on the target environment. Returns whether the deploy should proceed — an
|
|
182
|
+
// interactive TTY is asked to confirm; non-interactive runs warn and continue.
|
|
183
|
+
// A check that could not run prints a note and asks nothing: silence would read
|
|
184
|
+
// as the environment already having everything the app needs.
|
|
185
|
+
async function warnOnMissingEnvVars(client, environment) {
|
|
186
|
+
const preflight = await runEnvVarPreflight(client, environment.id);
|
|
187
|
+
if (preflight.status === "not-checked") {
|
|
188
|
+
prompts.log.info(formatEnvPreflightSkipped(preflight.reason));
|
|
189
|
+
return true;
|
|
190
|
+
}
|
|
191
|
+
if (preflight.missing.length === 0)
|
|
192
|
+
return true;
|
|
193
|
+
prompts.log.warn(formatMissingEnvVarsWarning(preflight.missing, environment.slug));
|
|
194
|
+
if (!process.stdin.isTTY)
|
|
195
|
+
return true;
|
|
196
|
+
const proceed = await prompts.confirm({
|
|
197
|
+
initialValue: false,
|
|
198
|
+
message: "Continue with the deploy anyway?",
|
|
199
|
+
});
|
|
200
|
+
return !prompts.isCancel(proceed) && proceed;
|
|
201
|
+
}
|
|
202
|
+
async function startManagedBuild(client, environmentId, branch) {
|
|
203
|
+
const result = await client.post(`/environments/${environmentId}/source-trigger`, { ref: branch });
|
|
204
|
+
return client.get(`/deployments/${result.deploymentId}`);
|
|
205
|
+
}
|
|
206
|
+
function formatDeploymentSummary(summary, context) {
|
|
207
|
+
const appImageLines = formatApplicationImageChanges(context.imageOpts);
|
|
208
|
+
const sections = {
|
|
209
|
+
Added: new Set(),
|
|
210
|
+
Updated: new Set(),
|
|
211
|
+
Removed: new Set(),
|
|
212
|
+
};
|
|
213
|
+
const imageSection = shouldTreatImageAsCreated(summary) ? sections.Added : sections.Updated;
|
|
214
|
+
for (const line of appImageLines) {
|
|
215
|
+
imageSection.add(line);
|
|
216
|
+
}
|
|
217
|
+
if (summary) {
|
|
218
|
+
for (const action of summary.actions) {
|
|
219
|
+
if (action.action === "create")
|
|
220
|
+
sections.Added.add(action.label);
|
|
221
|
+
if (action.action === "update")
|
|
222
|
+
sections.Updated.add(action.label);
|
|
223
|
+
}
|
|
224
|
+
for (const deleted of summary.cleanup.deleted) {
|
|
225
|
+
sections.Removed.add(`${deleted.label} no longer in config`);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
const lines = [
|
|
229
|
+
"Deploy summary",
|
|
230
|
+
`Project: ${context.projectSlug}`,
|
|
231
|
+
`Environment: ${context.environmentSlug}`,
|
|
232
|
+
];
|
|
233
|
+
if (context.liveUrl) {
|
|
234
|
+
lines.push(`URL: ${context.liveUrl}`);
|
|
235
|
+
}
|
|
236
|
+
let hasChanges = false;
|
|
237
|
+
for (const [section, items] of Object.entries(sections)) {
|
|
238
|
+
if (items.size === 0)
|
|
239
|
+
continue;
|
|
240
|
+
hasChanges = true;
|
|
241
|
+
lines.push("", section, ...Array.from(items).map((item) => ` ${item}`));
|
|
242
|
+
}
|
|
243
|
+
if (!hasChanges) {
|
|
244
|
+
lines.push("", "No applied resource changes");
|
|
245
|
+
}
|
|
246
|
+
return lines.join("\n");
|
|
247
|
+
}
|
|
248
|
+
function formatApplicationImageChanges(imageOpts) {
|
|
249
|
+
const serverTag = imageOpts.serverImage ? extractImageTag(imageOpts.serverImage) : null;
|
|
250
|
+
const workerTag = imageOpts.workerImage ? extractImageTag(imageOpts.workerImage) : null;
|
|
251
|
+
const migrationTag = imageOpts.migrationImage ? extractImageTag(imageOpts.migrationImage) : null;
|
|
252
|
+
const tags = [serverTag, workerTag, migrationTag].filter((tag) => tag !== null);
|
|
253
|
+
const uniqueTags = new Set(tags);
|
|
254
|
+
const allImagesProvided = imageOpts.serverImage && imageOpts.workerImage && imageOpts.migrationImage;
|
|
255
|
+
if (allImagesProvided && uniqueTags.size === 1) {
|
|
256
|
+
return [`Application image: ${tags[0]}`];
|
|
257
|
+
}
|
|
258
|
+
if (tags.length > 0) {
|
|
259
|
+
return [
|
|
260
|
+
serverTag ? `Server image: ${serverTag}` : null,
|
|
261
|
+
workerTag ? `Worker image: ${workerTag}` : null,
|
|
262
|
+
migrationTag ? `Migration image: ${migrationTag}` : null,
|
|
263
|
+
].filter((line) => line !== null);
|
|
264
|
+
}
|
|
265
|
+
return [];
|
|
266
|
+
}
|
|
267
|
+
function shouldTreatImageAsCreated(summary) {
|
|
268
|
+
return (summary?.actions.some((action) => {
|
|
269
|
+
if (action.action !== "create")
|
|
270
|
+
return false;
|
|
271
|
+
return action.isApplication;
|
|
272
|
+
}) ?? false);
|
|
273
|
+
}
|
|
274
|
+
function extractImageTag(image) {
|
|
275
|
+
const slash = image.lastIndexOf("/");
|
|
276
|
+
const colon = image.lastIndexOf(":");
|
|
277
|
+
if (colon <= slash)
|
|
278
|
+
return null;
|
|
279
|
+
return image.slice(colon + 1);
|
|
280
|
+
}
|
|
281
|
+
function formatCleanupFailures(failures, projectSlug, environmentSlug) {
|
|
282
|
+
if (failures.length === 1) {
|
|
283
|
+
const failure = failures[0];
|
|
284
|
+
return `Could not remove resource no longer in config: ${failure.label} (${formatErrorReason(failure.error, projectSlug, environmentSlug)})`;
|
|
285
|
+
}
|
|
286
|
+
const lines = failures
|
|
287
|
+
.map((failure) => ` • ${failure.label} (${formatErrorReason(failure.error, projectSlug, environmentSlug)})`)
|
|
288
|
+
.join("\n");
|
|
289
|
+
return `Could not remove ${failures.length} resources no longer in config:\n${lines}`;
|
|
290
|
+
}
|
|
291
|
+
function formatErrorReason(error, projectSlug, environmentSlug) {
|
|
292
|
+
return formatInlineUserFacingErrorReason(error, { projectSlug, environmentSlug });
|
|
293
|
+
}
|
|
294
|
+
// Read, never composed. The address is one label whose composition rule lives in the control
|
|
295
|
+
// plane, so a CLI that built its own would print a hostname nothing serves the moment that rule
|
|
296
|
+
// changes. Null from an older control plane means no address to show, and an automation credential
|
|
297
|
+
// gets no address at all — a script has nothing to click. The client carries an organization only
|
|
298
|
+
// for the stored session, which is the same signal `getAuthenticatedOrganizationSlug` reads.
|
|
299
|
+
function resolveLiveUrl(environment, client) {
|
|
300
|
+
if (!client.organizationId)
|
|
301
|
+
return null;
|
|
302
|
+
if (!environment.platformHostname)
|
|
303
|
+
return null;
|
|
304
|
+
return `https://${environment.platformHostname}`;
|
|
305
|
+
}
|
|
306
|
+
//# sourceMappingURL=deploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../../src/cli/commands/deployment/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAML,iBAAiB,EACjB,eAAe,EACf,yBAAyB,EACzB,iCAAiC,EACjC,4BAA4B,EAC5B,kBAAkB,EAClB,KAAK,GACN,MAAM,gBAAgB,CAAC;AAExB,mGAAmG;AACnG,6FAA6F;AAC7F,OAAO,EACL,yBAAyB,EACzB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAA+B,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEtD,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,6EAA6E;AAC7E,+EAA+E;AAC/E,MAAM,yBAAyB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAIjD,SAAS,SAAS,CAAC,UAAsB;IACvC,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACpC,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACvE,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAClB,KAA0B,EAC1B,UAAsB;IAEtB,MAAM,EAAE,GAAG,CAAC,UAAU,CAAC,qBAAqB,IAAI,yBAAyB,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IACzF,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,cAAc;YACjB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;QAC/C,KAAK,OAAO;YACV,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAChC,KAAK,SAAS;YACZ,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QACxC,KAAK,SAAS;YACZ,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,MAAc;IACpC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,UAAU;YACb,OAAO,aAAa,CAAC;QACvB,KAAK,OAAO;YACV,OAAO,8BAA8B,CAAC;QACxC,KAAK,WAAW;YACd,OAAO,cAAc,CAAC;QACxB;YACE,OAAO,+BAA+B,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,gGAAgG;AAChG,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAqB;IAClE,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;IAEnC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,MAAM,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEnE,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,MAAM,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAE7E,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CACX,4DAA4D,eAAe,EAAE,YAAY,CAC1F,CAAC;YACF,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GACd,MAAM,CAAC,IAAI,KAAK,eAAe;QAC7B,CAAC,CAAC,MAAM,iBAAiB,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QACxE,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAa,cAAc,EAAE;YAC5C,aAAa,EAAE,WAAW,CAAC,EAAE;YAC7B,OAAO,EAAE,MAAM;YACf,GAAG,MAAM,CAAC,MAAM;SACjB,CAAC,CAAC;IAET,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAClF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,IAAI,CACd,iBAAiB,UAAU,CAAC,EAAE,mBAAmB,eAAe,EAAE,oBAAoB,UAAU,CAAC,EAAE,uCAAuC,CAC3I,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;IAChD,OAAO,EAAE,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAE5C,IAAI,OAAO,GAAG,UAAU,CAAC;IACzB,IAAI,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC/B,IAAI,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAE9B,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,IACE,MAAM,CAAC,IAAI,KAAK,eAAe;YAC/B,CAAC,IAAI;YACL,CAAC,iBAAiB;YAClB,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,EAC9D,CAAC;YACD,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAC/B,iBAAiB,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,MAAM,EACN,gBAAgB,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC,8BAA8B,EAC/E,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAC9B,CAAC;gBACF,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,GAAG,CAAC;gBACb,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,IAAI,CACd,yEACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CACvD,EAAE,CACH,CAAC;YACJ,CAAC;YACD,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,CAAa,gBAAgB,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3C,OAAO,EAAE,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC9C,CAAC;YACD,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;YAC3B,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACzB,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;YACxB,KAAK,GAAG,SAAS,CAAC;YAClB,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,CAAC;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;YAC1C,OAAO,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,YAAY,CAAC,CAAC;YAC5C,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,CAC5F,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,IAAI,CACd,GAAG,OAAO,CAAC,KAAK,4BAA4B,OAAO,CAAC,EAAE,GAAG,MAAM,yCAAyC,eAAe,EAAE,4CAA4C,eAAe,EAAE,YAAY,CACnM,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC9B,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,CAAa,gBAAgB,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QACxE,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YACnE,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACnE,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,IAAI,CACd,uBAAuB,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,EAAE;YAC/C,eAAe,EAAE,WAAW,CAAC,IAAI;YACjC,SAAS;YACT,OAAO;YACP,WAAW,EAAE,OAAO,CAAC,IAAI;SAC1B,CAAC,CACH,CAAC;QACF,yFAAyF;QACzF,6FAA6F;QAC7F,6CAA6C;QAC7C,IAAI,QAA4B,CAAC;QACjC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;YACzD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,eAAe,EAAE,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;gBACzF,QAAQ,GAAG,CAAC,CAAC;YACf,CAAC;QACH,CAAC;QACD,MAAM,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,EAAE,CAAC;QAC5D,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvF,OAAO,CAAC,GAAG,CAAC,IAAI,CACd,GAAG,kBAAkB,CAAC,MAAM,yBAAyB,kBAAkB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,WAAW,KAAK,WAAW,eAAe,EAAE,gCAAgC,kBAAkB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CACvO,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,WAAW,CAAC,CAAC;QAC/D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACnC,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CACf,4BAA4B,CAAC,OAAO,CAAC,YAAY,EAAE;YACjD,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,eAAe,EAAE,WAAW,CAAC,IAAI;SAClC,CAAC,CACH,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,+EAA+E;AAC/E,gFAAgF;AAChF,8DAA8D;AAC9D,KAAK,UAAU,oBAAoB,CAAC,MAAiB,EAAE,WAAwB;IAC7E,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IACnE,IAAI,SAAS,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACnF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAEtC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;QACpC,YAAY,EAAE,KAAK;QACnB,OAAO,EAAE,kCAAkC;KAC5C,CAAC,CAAC;IACH,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;AAC/C,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,MAAiB,EACjB,aAAqB,EACrB,MAAc;IAEd,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAC9B,iBAAiB,aAAa,iBAAiB,EAC/C,EAAE,GAAG,EAAE,MAAM,EAAE,CAChB,CAAC;IACF,OAAO,MAAM,CAAC,GAAG,CAAa,gBAAgB,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAAiC,EACjC,OAKC;IAED,MAAM,aAAa,GAAG,6BAA6B,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG;QACf,KAAK,EAAE,IAAI,GAAG,EAAU;QACxB,OAAO,EAAE,IAAI,GAAG,EAAU;QAC1B,OAAO,EAAE,IAAI,GAAG,EAAU;KAC3B,CAAC;IAEF,MAAM,YAAY,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;IAC5F,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;gBAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjE,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;gBAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrE,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YAC9C,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,sBAAsB,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG;QACZ,gBAAgB;QAChB,YAAY,OAAO,CAAC,WAAW,EAAE;QACjC,gBAAgB,OAAO,CAAC,eAAe,EAAE;KAC1C,CAAC;IACF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,KAAK,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxD,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC;YAAE,SAAS;QAC/B,UAAU,GAAG,IAAI,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,6BAA6B,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,6BAA6B,CAAC,SAAiC;IACtE,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,MAAM,SAAS,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,MAAM,YAAY,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjG,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;IAE/F,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,iBAAiB,GACrB,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,cAAc,CAAC;IAC7E,IAAI,iBAAiB,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC/C,OAAO,CAAC,sBAAsB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO;YACL,SAAS,CAAC,CAAC,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI;YAC/C,SAAS,CAAC,CAAC,CAAC,iBAAiB,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI;YAC/C,YAAY,CAAC,CAAC,CAAC,oBAAoB,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI;SACzD,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAiC;IAClE,OAAO,CACL,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QAC/B,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC7C,OAAO,MAAM,CAAC,aAAa,CAAC;IAC9B,CAAC,CAAC,IAAI,KAAK,CACZ,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,KAAK,IAAI,KAAK;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAAkD,EAClD,WAAmB,EACnB,eAAuB;IAEvB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,kDAAkD,OAAO,CAAC,KAAK,KAAK,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,CAAC,GAAG,CAAC;IAC/I,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ;SACnB,GAAG,CACF,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,OAAO,CAAC,KAAK,KAAK,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,CAAC,GAAG,CAC7F;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,oBAAoB,QAAQ,CAAC,MAAM,oCAAoC,KAAK,EAAE,CAAC;AACxF,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa,EAAE,WAAmB,EAAE,eAAuB;IACpF,OAAO,iCAAiC,CAAC,KAAK,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,6FAA6F;AAC7F,gGAAgG;AAChG,mGAAmG;AACnG,kGAAkG;AAClG,6FAA6F;AAC7F,SAAS,cAAc,CAAC,WAAwB,EAAE,MAAiB;IACjE,IAAI,CAAC,MAAM,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC,WAAW,CAAC,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAE/C,OAAO,WAAW,WAAW,CAAC,gBAAgB,EAAE,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deployment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,kBAAkB,CAAC;AA2H1B,eAAO,MAAM,kBAAkB,EAAE,gBAAgB,EAyDhD,CAAC"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import { defineCloudCommand, defineCloudCommandGroup, } from "../../command.js";
|
|
2
|
+
// The hosted Cloud commands that put an application on the platform and then say what happened to
|
|
3
|
+
// it: the deploy itself, the environment's current state, its runtime logs, its VC Deployment
|
|
4
|
+
// history with the Build Step Log, and the rollback.
|
|
5
|
+
//
|
|
6
|
+
// This module declares the tree and nothing else. Every `run` reaches its implementation through
|
|
7
|
+
// `await import(...)`, so the Vendure CLI host — which `require`s the plugin on every `vendure`
|
|
8
|
+
// invocation, including the ones with nothing to do with Cloud — pays for this file and
|
|
9
|
+
// `../../command.js`, not for `zod`, `picocolors`, the log stream or the authentication stack
|
|
10
|
+
// behind them. `test/cli-deployment-tree.test.ts` holds that line.
|
|
11
|
+
//
|
|
12
|
+
// The commands are in the order `vcloud` registered them, so `vendure --help` lists them the way
|
|
13
|
+
// `vcloud --help` did. The host has no equivalent of Commander's help groups, so the order is all
|
|
14
|
+
// that survives of that grouping.
|
|
15
|
+
// `required` is about the value, not the option: without it the host registers
|
|
16
|
+
// `--server-image [image]`, and `--server-image` with nothing after it parses as `true` rather than
|
|
17
|
+
// being the error it is today. An image reference is the whole content of the flag, so a `true`
|
|
18
|
+
// reaching `readStringOption` is refused — but only after the customer has been told nothing about
|
|
19
|
+
// which flag they mistyped.
|
|
20
|
+
const IMAGE_OPTIONS = [
|
|
21
|
+
{
|
|
22
|
+
long: "--server-image <image>",
|
|
23
|
+
description: "Docker image reference for the server",
|
|
24
|
+
required: true,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
long: "--worker-image <image>",
|
|
28
|
+
description: "Docker image reference for the worker",
|
|
29
|
+
required: true,
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
long: "--migration-image <image>",
|
|
33
|
+
description: "Docker image reference for the migration job",
|
|
34
|
+
required: true,
|
|
35
|
+
},
|
|
36
|
+
];
|
|
37
|
+
// `vcloud` registers this group as `deployment` with a `deployments` alias. The Vendure CLI
|
|
38
|
+
// extension API has no alias field, so only the primary name survives the port — the same trade the
|
|
39
|
+
// identity family made for `key`/`keys`.
|
|
40
|
+
const deploymentHistoryCommands = defineCloudCommandGroup({
|
|
41
|
+
name: "deployment",
|
|
42
|
+
description: "Deployment management",
|
|
43
|
+
subcommands: [
|
|
44
|
+
defineCloudCommand({
|
|
45
|
+
name: "list",
|
|
46
|
+
description: "List deployment history",
|
|
47
|
+
options: [
|
|
48
|
+
{
|
|
49
|
+
long: "--limit <number>",
|
|
50
|
+
description: "Number of deployments to show",
|
|
51
|
+
required: true,
|
|
52
|
+
defaultValue: "10",
|
|
53
|
+
},
|
|
54
|
+
{ long: "--no-trunc", description: "Show full deployment IDs" },
|
|
55
|
+
],
|
|
56
|
+
run: async (input) => (await import("./list.js")).listDeployments(input),
|
|
57
|
+
}),
|
|
58
|
+
defineCloudCommand({
|
|
59
|
+
name: "logs",
|
|
60
|
+
description: "View a deployment's Build Step Log",
|
|
61
|
+
arguments: [{ name: "deployment-id", description: "VC Deployment ID or ID prefix" }],
|
|
62
|
+
options: [
|
|
63
|
+
{
|
|
64
|
+
short: "-f",
|
|
65
|
+
long: "--follow",
|
|
66
|
+
description: "Follow output until the Build Step finishes",
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
short: "-n",
|
|
70
|
+
long: "--lines <number>",
|
|
71
|
+
description: "Recent lines to replay in follow mode",
|
|
72
|
+
required: true,
|
|
73
|
+
defaultValue: "100",
|
|
74
|
+
},
|
|
75
|
+
],
|
|
76
|
+
run: async (input) => (await import("./build-logs.js")).deploymentBuildLogs(input),
|
|
77
|
+
}),
|
|
78
|
+
defineCloudCommand({
|
|
79
|
+
name: "show",
|
|
80
|
+
description: "Show a VC Deployment",
|
|
81
|
+
arguments: [{ name: "deployment-id", description: "VC Deployment ID or ID prefix" }],
|
|
82
|
+
run: async (input) => (await import("./show.js")).showDeployment(input),
|
|
83
|
+
}),
|
|
84
|
+
],
|
|
85
|
+
});
|
|
86
|
+
// `deploy` carries its own action and these two subcommands, the shape `vcloud deploy` has always
|
|
87
|
+
// had. The host registers it as a runnable parent: `vendure deploy` deploys, `vendure deploy plan`
|
|
88
|
+
// and `vendure deploy teardown` run these, and a word that is neither — `vendure deploy palan` —
|
|
89
|
+
// is refused as an unknown command rather than falling through into a deploy of the whole
|
|
90
|
+
// environment.
|
|
91
|
+
//
|
|
92
|
+
// That refusal is why `deploy` declares no positional argument and must not gain one. The host
|
|
93
|
+
// rejects a node declaring both positional arguments and subcommands at plugin load, because the
|
|
94
|
+
// first word after `deploy` would be ambiguous between a subcommand name and an argument value.
|
|
95
|
+
const deploySubcommands = [
|
|
96
|
+
defineCloudCommand({
|
|
97
|
+
name: "plan",
|
|
98
|
+
description: "Preview infrastructure changes without deploying",
|
|
99
|
+
options: [...IMAGE_OPTIONS],
|
|
100
|
+
run: async (input) => (await import("./plan.js")).deployPlan(input),
|
|
101
|
+
}),
|
|
102
|
+
defineCloudCommand({
|
|
103
|
+
name: "teardown",
|
|
104
|
+
description: "Delete all provisioned resources for an environment",
|
|
105
|
+
options: [
|
|
106
|
+
{
|
|
107
|
+
long: "--force",
|
|
108
|
+
description: "Delete all infrastructure for the project plus all related records",
|
|
109
|
+
},
|
|
110
|
+
{ long: "--yes", description: "Skip the confirmation prompt (for CI / non-interactive use)" },
|
|
111
|
+
{
|
|
112
|
+
long: "--no-wait",
|
|
113
|
+
description: "Start teardown and exit without waiting for completion",
|
|
114
|
+
},
|
|
115
|
+
],
|
|
116
|
+
run: async (input) => (await import("./teardown.js")).deployTeardown(input),
|
|
117
|
+
}),
|
|
118
|
+
];
|
|
119
|
+
export const deploymentCommands = [
|
|
120
|
+
// Composed rather than declared through one helper: `defineCloudCommand` builds the runnable half,
|
|
121
|
+
// and the subcommands are attached to it. The host's own node type carries both.
|
|
122
|
+
{
|
|
123
|
+
...defineCloudCommand({
|
|
124
|
+
name: "deploy",
|
|
125
|
+
description: "Deploy the current environment",
|
|
126
|
+
options: [
|
|
127
|
+
...IMAGE_OPTIONS,
|
|
128
|
+
{
|
|
129
|
+
long: "--no-wait",
|
|
130
|
+
description: "Start the deployment and exit without waiting for completion",
|
|
131
|
+
},
|
|
132
|
+
],
|
|
133
|
+
run: async (input) => (await import("./deploy.js")).deploy(input),
|
|
134
|
+
}),
|
|
135
|
+
subcommands: deploySubcommands,
|
|
136
|
+
},
|
|
137
|
+
defineCloudCommand({
|
|
138
|
+
name: "status",
|
|
139
|
+
description: "Show deployment status and service health for an environment",
|
|
140
|
+
run: async (input) => (await import("./status.js")).status(input),
|
|
141
|
+
}),
|
|
142
|
+
defineCloudCommand({
|
|
143
|
+
name: "logs",
|
|
144
|
+
description: "View application logs for an environment",
|
|
145
|
+
options: [
|
|
146
|
+
{
|
|
147
|
+
short: "-s",
|
|
148
|
+
long: "--service <name>",
|
|
149
|
+
description: "Service to show logs for (server, worker, or migration)",
|
|
150
|
+
required: true,
|
|
151
|
+
defaultValue: "server",
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
short: "-n",
|
|
155
|
+
long: "--lines <number>",
|
|
156
|
+
description: "Number of log lines to fetch",
|
|
157
|
+
required: true,
|
|
158
|
+
defaultValue: "100",
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
long: "--since <duration>",
|
|
162
|
+
description: "Only logs newer than this window (e.g. 30m, 6h, 2d)",
|
|
163
|
+
required: true,
|
|
164
|
+
},
|
|
165
|
+
{ short: "-f", long: "--follow", description: "Stream logs in real-time" },
|
|
166
|
+
],
|
|
167
|
+
run: async (input) => (await import("./logs.js")).logs(input),
|
|
168
|
+
}),
|
|
169
|
+
deploymentHistoryCommands,
|
|
170
|
+
defineCloudCommand({
|
|
171
|
+
name: "rollback",
|
|
172
|
+
description: "Rollback the current environment to a previous deployment",
|
|
173
|
+
arguments: [{ name: "deploymentId", description: "VC Deployment ID or ID prefix" }],
|
|
174
|
+
run: async (input) => (await import("./rollback.js")).rollback(input),
|
|
175
|
+
}),
|
|
176
|
+
];
|
|
177
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/commands/deployment/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAE1B,kGAAkG;AAClG,8FAA8F;AAC9F,qDAAqD;AACrD,EAAE;AACF,iGAAiG;AACjG,gGAAgG;AAChG,wFAAwF;AACxF,8FAA8F;AAC9F,mEAAmE;AACnE,EAAE;AACF,iGAAiG;AACjG,kGAAkG;AAClG,kCAAkC;AAElC,+EAA+E;AAC/E,oGAAoG;AACpG,gGAAgG;AAChG,mGAAmG;AACnG,4BAA4B;AAC5B,MAAM,aAAa,GAAG;IACpB;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,uCAAuC;QACpD,QAAQ,EAAE,IAAI;KACf;IACD;QACE,IAAI,EAAE,2BAA2B;QACjC,WAAW,EAAE,8CAA8C;QAC3D,QAAQ,EAAE,IAAI;KACf;CACF,CAAC;AAEF,4FAA4F;AAC5F,oGAAoG;AACpG,yCAAyC;AACzC,MAAM,yBAAyB,GAAG,uBAAuB,CAAC;IACxD,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,uBAAuB;IACpC,WAAW,EAAE;QACX,kBAAkB,CAAC;YACjB,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,yBAAyB;YACtC,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,kBAAkB;oBACxB,WAAW,EAAE,+BAA+B;oBAC5C,QAAQ,EAAE,IAAI;oBACd,YAAY,EAAE,IAAI;iBACnB;gBACD,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,0BAA0B,EAAE;aAChE;YACD,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC;SACzE,CAAC;QACF,kBAAkB,CAAC;YACjB,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,oCAAoC;YACjD,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;YACpF,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,UAAU;oBAChB,WAAW,EAAE,6CAA6C;iBAC3D;gBACD;oBACE,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,kBAAkB;oBACxB,WAAW,EAAE,uCAAuC;oBACpD,QAAQ,EAAE,IAAI;oBACd,YAAY,EAAE,KAAK;iBACpB;aACF;YACD,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC;SACnF,CAAC;QACF,kBAAkB,CAAC;YACjB,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,sBAAsB;YACnC,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;YACpF,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;SACxE,CAAC;KACH;CACF,CAAC,CAAC;AAEH,kGAAkG;AAClG,mGAAmG;AACnG,iGAAiG;AACjG,0FAA0F;AAC1F,eAAe;AACf,EAAE;AACF,+FAA+F;AAC/F,iGAAiG;AACjG,gGAAgG;AAChG,MAAM,iBAAiB,GAAuB;IAC5C,kBAAkB,CAAC;QACjB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,kDAAkD;QAC/D,OAAO,EAAE,CAAC,GAAG,aAAa,CAAC;QAC3B,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;KACpE,CAAC;IACF,kBAAkB,CAAC;QACjB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,qDAAqD;QAClE,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,oEAAoE;aAClF;YACD,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,6DAA6D,EAAE;YAC7F;gBACE,IAAI,EAAE,WAAW;gBACjB,WAAW,EAAE,wDAAwD;aACtE;SACF;QACD,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;KAC5E,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAuB;IACpD,mGAAmG;IACnG,iFAAiF;IACjF;QACE,GAAG,kBAAkB,CAAC;YACpB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,gCAAgC;YAC7C,OAAO,EAAE;gBACP,GAAG,aAAa;gBAChB;oBACE,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,8DAA8D;iBAC5E;aACF;YACD,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAClE,CAAC;QACF,WAAW,EAAE,iBAAiB;KAC/B;IACD,kBAAkB,CAAC;QACjB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,8DAA8D;QAC3E,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;KAClE,CAAC;IACF,kBAAkB,CAAC;QACjB,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,0CAA0C;QACvD,OAAO,EAAE;YACP;gBACE,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE,yDAAyD;gBACtE,QAAQ,EAAE,IAAI;gBACd,YAAY,EAAE,QAAQ;aACvB;YACD;gBACE,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,kBAAkB;gBACxB,WAAW,EAAE,8BAA8B;gBAC3C,QAAQ,EAAE,IAAI;gBACd,YAAY,EAAE,KAAK;aACpB;YACD;gBACE,IAAI,EAAE,oBAAoB;gBAC1B,WAAW,EAAE,qDAAqD;gBAClE,QAAQ,EAAE,IAAI;aACf;YACD,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,0BAA0B,EAAE;SAC3E;QACD,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;KAC9D,CAAC;IACF,yBAAyB;IACzB,kBAAkB,CAAC;QACjB,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,2DAA2D;QACxE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;QACnF,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;KACtE,CAAC;CACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deployment/list.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,iBAAiB,EASvB,MAAM,gBAAgB,CAAC;AA6BxB,wBAAsB,eAAe,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+D5F"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import * as prompts from "@clack/prompts";
|
|
2
|
+
import pc from "picocolors";
|
|
3
|
+
import { FAILED_STATUSES, SUCCESS_STATUSES, cloudInvocation, createAuthenticatedClient, formatDateTime, resolveEnvironment, writeJson, } from "../../index.js";
|
|
4
|
+
import { DEPLOYMENT_ID_LENGTH, DEPLOYMENT_ID_PREFIX_MIN_LENGTH, } from "../../lib/contract/wire-values.js";
|
|
5
|
+
import { readIntegerOption, readNegatableOption } from "./options.js";
|
|
6
|
+
function formatRunDuration(startedAt, completedAt) {
|
|
7
|
+
if (!startedAt || !completedAt)
|
|
8
|
+
return "—";
|
|
9
|
+
const ms = new Date(completedAt).getTime() - new Date(startedAt).getTime();
|
|
10
|
+
if (ms < 0)
|
|
11
|
+
return "—";
|
|
12
|
+
const totalSeconds = Math.floor(ms / 1000);
|
|
13
|
+
const minutes = Math.floor(totalSeconds / 60);
|
|
14
|
+
const seconds = totalSeconds % 60;
|
|
15
|
+
if (minutes === 0)
|
|
16
|
+
return `${seconds}s`;
|
|
17
|
+
return `${minutes}m ${seconds}s`;
|
|
18
|
+
}
|
|
19
|
+
function colorStatus(status) {
|
|
20
|
+
if (SUCCESS_STATUSES.has(status))
|
|
21
|
+
return pc.green(status);
|
|
22
|
+
if (FAILED_STATUSES.has(status))
|
|
23
|
+
return pc.red(status);
|
|
24
|
+
return pc.yellow(status);
|
|
25
|
+
}
|
|
26
|
+
function padCell(value, width) {
|
|
27
|
+
if (value.length >= width)
|
|
28
|
+
return `${value.slice(0, width - 1)} `;
|
|
29
|
+
return value.padEnd(width);
|
|
30
|
+
}
|
|
31
|
+
export async function listDeployments({ options, globals }) {
|
|
32
|
+
const limit = readIntegerOption(options.limit, "--limit");
|
|
33
|
+
const showFullIds = !readNegatableOption(options.trunc);
|
|
34
|
+
const json = globals.json === true;
|
|
35
|
+
const { environment } = await resolveEnvironment(globals);
|
|
36
|
+
const client = createAuthenticatedClient(globals);
|
|
37
|
+
const spinner = json ? undefined : prompts.spinner();
|
|
38
|
+
spinner?.start("Fetching deployments...");
|
|
39
|
+
const params = new URLSearchParams({
|
|
40
|
+
environmentId: environment.id,
|
|
41
|
+
limit: String(limit),
|
|
42
|
+
});
|
|
43
|
+
const page = await client.get(`/deployments?${params}`);
|
|
44
|
+
const deployments = page.items;
|
|
45
|
+
spinner?.stop(`Found ${page.total} deployment(s).`);
|
|
46
|
+
if (json) {
|
|
47
|
+
writeJson(deployments);
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (deployments.length === 0) {
|
|
51
|
+
prompts.log.info(`No deployments found. Run \`${cloudInvocation()} deploy\` to create one.`);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
const idWidth = showFullIds
|
|
55
|
+
? Math.max(DEPLOYMENT_ID_LENGTH + 2, ...deployments.map((deployment) => deployment.id.length + 2))
|
|
56
|
+
: 10;
|
|
57
|
+
const cols = {
|
|
58
|
+
id: "ID".padEnd(idWidth),
|
|
59
|
+
status: "STATUS".padEnd(12),
|
|
60
|
+
trigger: "TRIGGER".padEnd(10),
|
|
61
|
+
by: "BY".padEnd(24),
|
|
62
|
+
createdAt: "CREATED".padEnd(20),
|
|
63
|
+
duration: "DURATION".padEnd(10),
|
|
64
|
+
};
|
|
65
|
+
prompts.log.info(pc.bold(`${cols.id}${cols.status}${cols.trigger}${cols.by}${cols.createdAt}${cols.duration}`));
|
|
66
|
+
for (const dep of deployments) {
|
|
67
|
+
const id = (showFullIds ? dep.id : dep.id.slice(0, DEPLOYMENT_ID_PREFIX_MIN_LENGTH)).padEnd(idWidth);
|
|
68
|
+
const statusPadded = dep.status.padEnd(12);
|
|
69
|
+
const status = colorStatus(statusPadded);
|
|
70
|
+
const trigger = dep.trigger.padEnd(10);
|
|
71
|
+
const by = padCell(dep.triggeredBy?.name ?? "—", 24);
|
|
72
|
+
const createdAt = formatDateTime(dep.createdAt).padEnd(20);
|
|
73
|
+
const duration = formatRunDuration(dep.startedAt, dep.completedAt);
|
|
74
|
+
prompts.log.info(`${id}${status}${trigger}${by}${createdAt}${duration}`);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/cli/commands/deployment/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/deployment/logs.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,iBAAiB,EAGvB,MAAM,gBAAgB,CAAC;AAwFxB,wBAAsB,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA2B/F"}
|