@automattic/vip 4.1.6 → 4.1.8
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/assets/dev-env.lando.template.yml.ejs +1 -1
- package/dist/bin/vip-app-deploy-token-generate.js +110 -78
- package/dist/bin/vip-app-deploy-token.js +24 -16
- package/dist/bin/vip-app-deploy-validate.js +45 -41
- package/dist/bin/vip-app-deploy.js +222 -215
- package/dist/bin/vip-app-list.js +59 -43
- package/dist/bin/vip-app.js +97 -66
- package/dist/bin/vip-backup-db.js +36 -29
- package/dist/bin/vip-backup.js +16 -9
- package/dist/bin/vip-cache-purge-url.js +93 -55
- package/dist/bin/vip-cache.js +23 -14
- package/dist/bin/vip-config-envvar-delete.js +74 -73
- package/dist/bin/vip-config-envvar-get-all.js +68 -68
- package/dist/bin/vip-config-envvar-get.js +46 -46
- package/dist/bin/vip-config-envvar-list.js +54 -57
- package/dist/bin/vip-config-envvar-set.js +102 -96
- package/dist/bin/vip-config-envvar.js +38 -24
- package/dist/bin/vip-config-software-get.js +88 -75
- package/dist/bin/vip-config-software-update.js +116 -120
- package/dist/bin/vip-config-software.js +31 -21
- package/dist/bin/vip-config.js +25 -17
- package/dist/bin/vip-db-phpmyadmin.js +40 -39
- package/dist/bin/vip-db.js +13 -12
- package/dist/bin/vip-defensive-mode-configure.js +197 -197
- package/dist/bin/vip-defensive-mode-disable.js +43 -35
- package/dist/bin/vip-defensive-mode-enable.js +47 -38
- package/dist/bin/vip-defensive-mode.js +28 -17
- package/dist/bin/vip-dev-env-create.js +147 -104
- package/dist/bin/vip-dev-env-destroy.js +48 -39
- package/dist/bin/vip-dev-env-envvar-delete.js +60 -49
- package/dist/bin/vip-dev-env-envvar-get-all.js +52 -45
- package/dist/bin/vip-dev-env-envvar-get.js +48 -37
- package/dist/bin/vip-dev-env-envvar-list.js +48 -41
- package/dist/bin/vip-dev-env-envvar-set.js +83 -70
- package/dist/bin/vip-dev-env-envvar.js +38 -23
- package/dist/bin/vip-dev-env-exec.js +81 -74
- package/dist/bin/vip-dev-env-import-media.js +34 -26
- package/dist/bin/vip-dev-env-import-sql.js +65 -51
- package/dist/bin/vip-dev-env-import.js +23 -14
- package/dist/bin/vip-dev-env-info.js +59 -50
- package/dist/bin/vip-dev-env-list.js +34 -31
- package/dist/bin/vip-dev-env-logs.js +59 -49
- package/dist/bin/vip-dev-env-purge.js +71 -63
- package/dist/bin/vip-dev-env-shell.js +82 -71
- package/dist/bin/vip-dev-env-start.js +77 -65
- package/dist/bin/vip-dev-env-stop.js +80 -74
- package/dist/bin/vip-dev-env-sync-sql.js +80 -72
- package/dist/bin/vip-dev-env-sync.js +18 -11
- package/dist/bin/vip-dev-env-update.js +93 -84
- package/dist/bin/vip-dev-env.js +25 -8
- package/dist/bin/vip-edge-workers-build.js +82 -54
- package/dist/bin/vip-edge-workers-delete.js +84 -52
- package/dist/bin/vip-edge-workers-deploy.js +186 -126
- package/dist/bin/vip-edge-workers-disable.js +75 -44
- package/dist/bin/vip-edge-workers-enable.js +86 -54
- package/dist/bin/vip-edge-workers-get.js +108 -88
- package/dist/bin/vip-edge-workers-init.js +83 -53
- package/dist/bin/vip-edge-workers-list.js +89 -54
- package/dist/bin/vip-edge-workers-new.js +98 -69
- package/dist/bin/vip-edge-workers-validate.js +123 -82
- package/dist/bin/vip-edge-workers.js +19 -6
- package/dist/bin/vip-export-sql.js +75 -69
- package/dist/bin/vip-export.js +12 -7
- package/dist/bin/vip-import-media-abort.js +99 -73
- package/dist/bin/vip-import-media-status.js +83 -51
- package/dist/bin/vip-import-media.js +165 -166
- package/dist/bin/vip-import-sql-status.js +75 -45
- package/dist/bin/vip-import-sql.js +536 -596
- package/dist/bin/vip-import-validate-files.js +122 -141
- package/dist/bin/vip-import-validate-sql.js +52 -16
- package/dist/bin/vip-import.js +16 -7
- package/dist/bin/vip-logout.js +17 -13
- package/dist/bin/vip-logs.js +209 -183
- package/dist/bin/vip-search-replace.js +85 -53
- package/dist/bin/vip-slowlogs.js +168 -147
- package/dist/bin/vip-sync.js +163 -133
- package/dist/bin/vip-whoami.js +71 -35
- package/dist/bin/vip-wp.js +506 -549
- package/dist/bin/vip.js +161 -116
- package/dist/commands/backup-db.js +183 -149
- package/dist/commands/dev-env-import-sql.js +162 -117
- package/dist/commands/dev-env-sync-sql.js +372 -330
- package/dist/commands/export-sql.js +441 -425
- package/dist/commands/phpmyadmin.js +232 -212
- package/dist/commands/wp-ssh.js +218 -187
- package/dist/lib/analytics/clients/tracks.js +84 -91
- package/dist/lib/analytics/index.js +27 -27
- package/dist/lib/api/app.js +37 -36
- package/dist/lib/api/cache-purge.js +17 -20
- package/dist/lib/api/constants.js +5 -6
- package/dist/lib/api/edge-workers.js +84 -135
- package/dist/lib/api/error-debug.js +10 -13
- package/dist/lib/api/feature-flags.js +16 -17
- package/dist/lib/api/http.js +47 -48
- package/dist/lib/api/user.js +17 -18
- package/dist/lib/api.js +107 -116
- package/dist/lib/app-logs/app-logs.js +24 -25
- package/dist/lib/app-slowlogs/app-slowlogs.js +23 -24
- package/dist/lib/app-slowlogs/types.js +2 -1
- package/dist/lib/app.js +6 -8
- package/dist/lib/backup-storage-availability/backup-storage-availability.js +119 -119
- package/dist/lib/backup-storage-availability/docker-machine-not-found-error.js +5 -6
- package/dist/lib/cli/apiConfig.js +71 -41
- package/dist/lib/cli/command.js +1120 -873
- package/dist/lib/cli/config.js +29 -29
- package/dist/lib/cli/envAlias.js +35 -50
- package/dist/lib/cli/exit.js +19 -19
- package/dist/lib/cli/format.js +172 -172
- package/dist/lib/cli/progress.js +193 -236
- package/dist/lib/cli/prompt.js +14 -15
- package/dist/lib/cli/runtime-mode.js +5 -6
- package/dist/lib/client-file-uploader.js +489 -641
- package/dist/lib/config/software.js +206 -212
- package/dist/lib/constants/dev-environment.js +40 -37
- package/dist/lib/constants/file-size.js +6 -7
- package/dist/lib/constants/vipgo.js +24 -12
- package/dist/lib/custom-deploy/custom-deploy.js +138 -120
- package/dist/lib/database.js +88 -85
- package/dist/lib/defensive-mode/api.js +41 -46
- package/dist/lib/defensive-mode/cli-helpers.js +40 -40
- package/dist/lib/dev-environment/dev-environment-cli.js +776 -735
- package/dist/lib/dev-environment/dev-environment-configuration-file.js +224 -191
- package/dist/lib/dev-environment/dev-environment-core.js +697 -732
- package/dist/lib/dev-environment/dev-environment-database.js +57 -41
- package/dist/lib/dev-environment/dev-environment-lando.js +734 -666
- package/dist/lib/dev-environment/docker-utils.js +96 -90
- package/dist/lib/dev-environment/env-vars.js +61 -59
- package/dist/lib/dev-environment/lando-loader.js +6 -7
- package/dist/lib/dev-environment/types.js +2 -1
- package/dist/lib/edge-workers/confirmation.js +42 -36
- package/dist/lib/edge-workers/deployment.js +150 -159
- package/dist/lib/edge-workers/index.js +68 -85
- package/dist/lib/edge-workers/location.js +26 -26
- package/dist/lib/edge-workers/output.js +14 -15
- package/dist/lib/edge-workers/project.js +123 -132
- package/dist/lib/edge-workers/toolchains/assemblyscript/constants.js +6 -8
- package/dist/lib/edge-workers/toolchains/assemblyscript/index.js +100 -101
- package/dist/lib/edge-workers/toolchains/assemblyscript/templates.js +31 -33
- package/dist/lib/edge-workers/toolchains/index.js +15 -15
- package/dist/lib/edge-workers/types.js +10 -38
- package/dist/lib/edge-workers/validation.js +161 -150
- package/dist/lib/env.js +16 -17
- package/dist/lib/envvar/api-delete.js +16 -18
- package/dist/lib/envvar/api-get-all.js +15 -19
- package/dist/lib/envvar/api-get.js +8 -9
- package/dist/lib/envvar/api-list.js +16 -21
- package/dist/lib/envvar/api-set.js +20 -19
- package/dist/lib/envvar/api.js +34 -29
- package/dist/lib/envvar/input.js +29 -34
- package/dist/lib/envvar/logging.js +9 -11
- package/dist/lib/envvar/read-file.js +6 -7
- package/dist/lib/http/download-file.js +76 -44
- package/dist/lib/http/proxy-agent.js +37 -40
- package/dist/lib/http/proxy-dispatcher.js +69 -71
- package/dist/lib/keychain/insecure.js +40 -36
- package/dist/lib/keychain/keychain.js +2 -1
- package/dist/lib/keychain/secure.js +16 -15
- package/dist/lib/keychain.js +22 -22
- package/dist/lib/live-backup-copy.js +117 -115
- package/dist/lib/logout.js +17 -19
- package/dist/lib/media-import/config.js +15 -14
- package/dist/lib/media-import/media-file-import.js +9 -13
- package/dist/lib/media-import/progress.js +53 -65
- package/dist/lib/media-import/status.js +241 -256
- package/dist/lib/media-import/utils.js +15 -15
- package/dist/lib/node-version-check.js +16 -16
- package/dist/lib/promise.js +16 -17
- package/dist/lib/read-file.js +48 -16
- package/dist/lib/rechallenge/client.js +37 -43
- package/dist/lib/rechallenge/errors.js +38 -37
- package/dist/lib/rechallenge/flow.js +148 -123
- package/dist/lib/rechallenge/index.js +23 -24
- package/dist/lib/rechallenge/link.js +153 -151
- package/dist/lib/rechallenge/open-browser.js +14 -17
- package/dist/lib/rechallenge/token-cache.js +83 -86
- package/dist/lib/rechallenge/types.js +5 -14
- package/dist/lib/retry.js +93 -129
- package/dist/lib/search-and-replace.js +164 -148
- package/dist/lib/site-import/db-file-import.js +12 -16
- package/dist/lib/site-import/status.js +291 -291
- package/dist/lib/token.js +86 -87
- package/dist/lib/tracker.js +51 -62
- package/dist/lib/types/graphql/rate-limit-exceeded-error.js +2 -1
- package/dist/lib/types.js +2 -1
- package/dist/lib/user-error.js +6 -8
- package/dist/lib/utils.js +81 -87
- package/dist/lib/validations/custom-deploy.js +218 -186
- package/dist/lib/validations/is-multi-site-sql-dump.js +6 -6
- package/dist/lib/validations/is-multi-site.js +83 -50
- package/dist/lib/validations/is-multisite-domain-mapped.js +92 -62
- package/dist/lib/validations/line-by-line.js +78 -46
- package/dist/lib/validations/site-type.js +59 -63
- package/dist/lib/validations/sql-insert-parser.js +415 -0
- package/dist/lib/validations/sql.js +551 -431
- package/dist/lib/validations/utils.js +27 -29
- package/dist/lib/vip-import-validate-files.js +481 -490
- package/dist/lib/wp/helpers.js +41 -45
- package/dist/lib/wp/readline.js +21 -57
- package/dist/lib/xdg-data.js +11 -12
- package/helpers/mark-cli-executable.js +9 -0
- package/node_modules/@apollo/client/CHANGELOG.md +10 -0
- package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs +5 -0
- package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs +2 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs +14 -2
- package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs +16 -0
- package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.d.cts +2 -0
- package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs +3 -2
- package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs +9 -1
- package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/QueryInfo.d.cts +1 -1
- package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs +10 -3
- package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.d.cts +42 -43
- package/node_modules/@apollo/client/__cjs/version.cjs +1 -1
- package/node_modules/@apollo/client/cache/inmemory/helpers.js +5 -0
- package/node_modules/@apollo/client/cache/inmemory/helpers.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js +2 -1
- package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/key-extractor.js +14 -2
- package/node_modules/@apollo/client/cache/inmemory/key-extractor.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/policies.d.ts +2 -0
- package/node_modules/@apollo/client/cache/inmemory/policies.js +17 -1
- package/node_modules/@apollo/client/cache/inmemory/policies.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/writeToStore.js +3 -2
- package/node_modules/@apollo/client/cache/inmemory/writeToStore.js.map +1 -1
- package/node_modules/@apollo/client/core/QueryInfo.d.ts +1 -1
- package/node_modules/@apollo/client/core/QueryInfo.js +10 -2
- package/node_modules/@apollo/client/core/QueryInfo.js.map +1 -1
- package/node_modules/@apollo/client/core/QueryManager.js +10 -3
- package/node_modules/@apollo/client/core/QueryManager.js.map +1 -1
- package/node_modules/@apollo/client/package.json +1 -1
- package/node_modules/@apollo/client/react/hooks/useFragment.d.ts +42 -43
- package/node_modules/@apollo/client/react/hooks/useFragment.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useFragment.d.ts +42 -43
- package/node_modules/@apollo/client/react/hooks-compiled/useFragment.js.map +1 -1
- package/node_modules/@apollo/client/version.js +1 -1
- package/node_modules/@automattic/vip-search-replace/README.md +6 -1
- package/node_modules/@automattic/vip-search-replace/lib/index.js +46 -14
- package/node_modules/@automattic/vip-search-replace/package.json +1 -1
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/package.json +2 -2
- package/node_modules/@types/node/zlib.d.ts +752 -0
- package/node_modules/check-disk-space/README.md +92 -32
- package/node_modules/check-disk-space/dist/check-disk-space.d.mts +58 -0
- package/node_modules/check-disk-space/dist/check-disk-space.mjs +170 -190
- package/node_modules/check-disk-space/package.json +43 -71
- package/node_modules/cpu-features/build/Makefile +2 -2
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/filesystem.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_macos_or_iphone.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_windows.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_arm_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_mips_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_ppc_linux.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_freebsd.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_macos.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_windows.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/stack_line_reader.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/string_view.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpufeatures/src/binding.o.d +157 -145
- package/node_modules/cpu-features/build/Release/cpufeatures.node +0 -0
- package/node_modules/cpu-features/build/Release/obj.target/cpufeatures/src/binding.o +0 -0
- package/node_modules/cpu-features/build/Release/obj.target/cpufeatures.node +0 -0
- package/node_modules/cpu-features/build/config.gypi +100 -31
- package/node_modules/cpu-features/build/cpufeatures.target.mk +14 -14
- package/node_modules/cpu-features/build/deps/cpu_features/cpu_features.target.mk +14 -14
- package/node_modules/ssh2/lib/protocol/crypto/build/Makefile +2 -2
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d.raw +136 -0
- package/node_modules/ssh2/lib/protocol/crypto/build/sshcrypto.target.mk +14 -14
- package/node_modules/undici/docs/docs/api/Interceptors.md +15 -2
- package/node_modules/undici/lib/dispatcher/client-h2.js +78 -3
- package/node_modules/undici/lib/dispatcher/pool-base.js +20 -3
- package/node_modules/undici/package.json +3 -3
- package/node_modules/undici/types/api.d.ts +1 -1
- package/node_modules/undici/types/utility.d.ts +4 -4
- package/package.json +44 -13
- package/dist/lib/analytics/clients/client.js +0 -1
- package/dist/lib/analytics/clients/pendo.js +0 -78
- package/helpers/check-version.js +0 -16
- package/node_modules/check-disk-space/dist/check-disk-space.cjs +0 -210
- package/node_modules/check-disk-space/dist/check-disk-space.d.ts +0 -53
- package/node_modules/fetch-retry/.eslintignore +0 -1
- package/node_modules/fetch-retry/.eslintrc.yml +0 -20
- package/node_modules/fetch-retry/.github/workflows/node.js.yml +0 -32
- package/node_modules/fetch-retry/.husky/pre-commit +0 -6
- package/node_modules/fetch-retry/.nycrc.json +0 -24
- package/node_modules/fetch-retry/.travis.yml +0 -3
- package/node_modules/fetch-retry/LICENSE +0 -21
- package/node_modules/fetch-retry/README.md +0 -128
- package/node_modules/fetch-retry/dist/fetch-retry.umd.js +0 -151
- package/node_modules/fetch-retry/index.d.ts +0 -29
- package/node_modules/fetch-retry/index.js +0 -143
- package/node_modules/fetch-retry/package.json +0 -41
- package/node_modules/fetch-retry/rollup.config.js +0 -12
- package/node_modules/fetch-retry/test/.eslintrc.yml +0 -7
- package/node_modules/fetch-retry/test/integration/index.js +0 -212
- package/node_modules/fetch-retry/test/integration/mock-api/index.js +0 -42
- package/node_modules/fetch-retry/test/unit/index.js +0 -1169
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d +0 -265
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto.node.d +0 -1
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/sshcrypto.node.d +0 -1
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto/src/binding.o +0 -0
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto.node +0 -0
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/sshcrypto.node +0 -0
|
@@ -1,79 +1,85 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
const debug_1 = __importDefault(require("debug"));
|
|
9
|
+
const command_1 = __importDefault(require("../lib/cli/command"));
|
|
10
|
+
const dev_environment_cli_1 = require("../lib/dev-environment/dev-environment-cli");
|
|
11
|
+
const dev_environment_core_1 = require("../lib/dev-environment/dev-environment-core");
|
|
12
|
+
const dev_environment_lando_1 = require("../lib/dev-environment/dev-environment-lando");
|
|
13
|
+
const tracker_1 = require("../lib/tracker");
|
|
14
|
+
const debug = (0, debug_1.default)('@automattic/vip:bin:dev-environment');
|
|
13
15
|
const exampleUsage = 'vip dev-env stop';
|
|
14
16
|
const usage = 'vip dev-env stop';
|
|
15
|
-
const examples = [
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
trackingInfo
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
logSlug
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
logSlug = slug;
|
|
44
|
-
}
|
|
45
|
-
const lando = await (0, _devEnvironmentLando.bootstrapLando)({
|
|
46
|
-
logFile: (0, _devEnvironmentCli.getDevEnvLogFile)(logSlug)
|
|
47
|
-
});
|
|
48
|
-
(0, _devEnvironmentCli.validateDependencies)(lando);
|
|
49
|
-
await (0, _tracker.trackEvent)('dev_env_stop_command_execute', trackingInfo);
|
|
50
|
-
for (const slug of environments) {
|
|
51
|
-
try {
|
|
52
|
-
// eslint-disable-next-line no-await-in-loop
|
|
53
|
-
await (0, _devEnvironmentCore.stopEnvironment)(lando, slug);
|
|
54
|
-
const message = _chalk.default.green('✓') + ` environment "${slug}" stopped.\n`;
|
|
55
|
-
console.log(message);
|
|
56
|
-
} catch (error) {
|
|
57
|
-
let err;
|
|
58
|
-
if (!(error instanceof Error)) {
|
|
59
|
-
err = new Error(error?.toString());
|
|
60
|
-
} else {
|
|
61
|
-
err = error;
|
|
62
|
-
}
|
|
63
|
-
process.exitCode = 1;
|
|
64
|
-
const errorTrackingInfo = {
|
|
65
|
-
...trackingInfo,
|
|
66
|
-
failure: err.message,
|
|
67
|
-
stack: err.stack
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
// trackEvent does not throw
|
|
71
|
-
// eslint-disable-next-line no-await-in-loop
|
|
72
|
-
await (0, _tracker.trackEvent)('dev_env_stop_command_error', errorTrackingInfo);
|
|
73
|
-
console.error(_chalk.default.red('Error:'), err.message.replace('ERROR: ', ''));
|
|
17
|
+
const examples = [
|
|
18
|
+
{
|
|
19
|
+
usage: `${exampleUsage} --slug=example-site`,
|
|
20
|
+
description: 'Stop a local environment named "example-site".',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
usage: `${exampleUsage} --all`,
|
|
24
|
+
description: 'Stops all local environments.',
|
|
25
|
+
},
|
|
26
|
+
];
|
|
27
|
+
(0, command_1.default)({
|
|
28
|
+
usage,
|
|
29
|
+
})
|
|
30
|
+
.option('slug', 'A unique name for a local environment. Default is "vip-local".', undefined, dev_environment_cli_1.processSlug)
|
|
31
|
+
.option('all', 'Stop all local environments.')
|
|
32
|
+
.examples(examples)
|
|
33
|
+
.argv(process.argv, async (arg, opt) => {
|
|
34
|
+
debug('Args: ', arg, 'Options: ', opt);
|
|
35
|
+
/** @type {Record< string, unknown >} */
|
|
36
|
+
let trackingInfo;
|
|
37
|
+
/** @type {string[]} */
|
|
38
|
+
let environments;
|
|
39
|
+
/** @type {string|undefined} */
|
|
40
|
+
let logSlug;
|
|
41
|
+
if (opt.all) {
|
|
42
|
+
trackingInfo = { all: true };
|
|
43
|
+
environments = (0, dev_environment_core_1.getAllEnvironmentNames)();
|
|
44
|
+
logSlug = undefined;
|
|
74
45
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
46
|
+
else {
|
|
47
|
+
const slug = await (0, dev_environment_cli_1.getEnvironmentName)(opt);
|
|
48
|
+
trackingInfo = (0, dev_environment_cli_1.getEnvTrackingInfo)(slug);
|
|
49
|
+
environments = [slug];
|
|
50
|
+
logSlug = slug;
|
|
51
|
+
}
|
|
52
|
+
const lando = await (0, dev_environment_lando_1.bootstrapLando)({ logFile: (0, dev_environment_cli_1.getDevEnvLogFile)(logSlug) });
|
|
53
|
+
(0, dev_environment_cli_1.validateDependencies)(lando);
|
|
54
|
+
await (0, tracker_1.trackEvent)('dev_env_stop_command_execute', trackingInfo);
|
|
55
|
+
for (const slug of environments) {
|
|
56
|
+
try {
|
|
57
|
+
// eslint-disable-next-line no-await-in-loop
|
|
58
|
+
await (0, dev_environment_core_1.stopEnvironment)(lando, slug);
|
|
59
|
+
const message = chalk_1.default.green('✓') + ` environment "${slug}" stopped.\n`;
|
|
60
|
+
console.log(message);
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
let err;
|
|
64
|
+
if (!(error instanceof Error)) {
|
|
65
|
+
err = new Error(error?.toString());
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
err = error;
|
|
69
|
+
}
|
|
70
|
+
process.exitCode = 1;
|
|
71
|
+
const errorTrackingInfo = {
|
|
72
|
+
...trackingInfo,
|
|
73
|
+
failure: err.message,
|
|
74
|
+
stack: err.stack,
|
|
75
|
+
};
|
|
76
|
+
// trackEvent does not throw
|
|
77
|
+
// eslint-disable-next-line no-await-in-loop
|
|
78
|
+
await (0, tracker_1.trackEvent)('dev_env_stop_command_error', errorTrackingInfo);
|
|
79
|
+
console.error(chalk_1.default.red('Error:'), err.message.replace('ERROR: ', ''));
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (process.exitCode === 0) {
|
|
83
|
+
await (0, tracker_1.trackEvent)('dev_env_stop_command_success', trackingInfo);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
@@ -1,34 +1,43 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const dev_env_sync_sql_1 = require("../commands/dev-env-sync-sql");
|
|
8
|
+
const command_1 = __importDefault(require("../lib/cli/command"));
|
|
9
|
+
const dev_environment_cli_1 = require("../lib/dev-environment/dev-environment-cli");
|
|
10
|
+
const dev_environment_lando_1 = require("../lib/dev-environment/dev-environment-lando");
|
|
11
|
+
const live_backup_copy_1 = require("../lib/live-backup-copy");
|
|
12
|
+
const tracker_1 = require("../lib/tracker");
|
|
13
|
+
const user_error_1 = __importDefault(require("../lib/user-error"));
|
|
12
14
|
const usage = 'vip dev-env sync sql';
|
|
13
|
-
const examples = [
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
},
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
15
|
+
const examples = [
|
|
16
|
+
{
|
|
17
|
+
usage: `vip @example-app.develop dev-env sync sql --slug=example-site`,
|
|
18
|
+
description: 'Sync the entire database of the develop environment in the "example-app" application to a local environment named "example-site".',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
usage: `vip @example-app.develop dev-env sync sql --slug=example-site --table=wp_posts --table=wp_comments`,
|
|
22
|
+
description: 'Sync only the wp_posts and wp_comments tables from the database of the develop environment to a local environment named "example-site".',
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
usage: `vip @example-app.develop dev-env sync sql --slug=example-site --table=wp_posts,wp_comments`,
|
|
26
|
+
description: 'Use comma-separated syntax to specify that only the wp_posts and wp_comments tables are synced.',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
usage: `vip @example-app.develop dev-env sync sql --slug=example-site --site-id=2 --site-id=3`,
|
|
30
|
+
description: 'Sync only the tables related to network site ID 2 and network site ID 3.',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
usage: `vip @example-app.develop dev-env sync sql --slug=example-site --site-id=2,3`,
|
|
34
|
+
description: 'Use comma-separated syntax to specify that only the tables related to network site ID 2 and network site ID 3 are synced.',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
usage: `vip @example-app.develop dev-env sync sql --slug=example-site --config-file=~/dev-env-sync-config.json`,
|
|
38
|
+
description: 'Reference a local configuration file that specifies the data to sync to a local environment.',
|
|
39
|
+
},
|
|
40
|
+
];
|
|
32
41
|
const appQuery = `
|
|
33
42
|
id,
|
|
34
43
|
name,
|
|
@@ -44,48 +53,47 @@ const appQuery = `
|
|
|
44
53
|
isMultisite
|
|
45
54
|
}
|
|
46
55
|
`;
|
|
47
|
-
(0,
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
})
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
});
|
|
72
|
-
await trackerFn('execute');
|
|
73
|
-
const lando = await (0, _devEnvironmentLando.bootstrapLando)({
|
|
74
|
-
logFile: (0, _devEnvironmentCli.getDevEnvLogFile)(slug)
|
|
75
|
-
});
|
|
76
|
-
const isUp = (await Promise.all([(0, _devEnvironmentLando.isContainerRunning)(lando, slug, 'php'), (0, _devEnvironmentLando.isContainerRunning)(lando, slug, 'database')])).every(Boolean);
|
|
77
|
-
if (!isUp && !opt.force) {
|
|
78
|
-
await trackerFn('env_not_running_error', {
|
|
79
|
-
errorMessage: 'Environment was not running'
|
|
56
|
+
(0, command_1.default)({
|
|
57
|
+
appContext: true,
|
|
58
|
+
appQuery,
|
|
59
|
+
envContext: true,
|
|
60
|
+
requiredArgs: 0,
|
|
61
|
+
module: 'dev-env-sync-sql',
|
|
62
|
+
usage,
|
|
63
|
+
})
|
|
64
|
+
.option('slug', 'A unique name for a local environment. Default is "vip-local".', undefined, dev_environment_cli_1.processSlug)
|
|
65
|
+
.option('table', 'The name of a table to include in the partial database sync. Accepts a string value and can be passed more than once with a different value, or add multiple values in a comma-separated list.')
|
|
66
|
+
.option('site-id', 'The ID of a network site to include in the partial database sync. Accepts an integer value (can be passed more than once with different values), or multiple integer values in a comma-separated list.', undefined, Number.parseInt)
|
|
67
|
+
.option('wpcli-command', 'Run a custom WP-CLI command that has logic to retrieve specific data for the partial database export.')
|
|
68
|
+
.option('config-file', 'A local configuration file that specifies the data to include in the partial database sync. Accepts a relative or absolute path to the file.', undefined)
|
|
69
|
+
.option('force', 'Skip validations.', undefined, dev_environment_cli_1.processBooleanOption)
|
|
70
|
+
.examples(examples)
|
|
71
|
+
.argv(process.argv, async (arg, opt) => {
|
|
72
|
+
const { app, env, configFile, table, siteId, wpcliCommand, ...optRest } = opt;
|
|
73
|
+
const liveBackupCopyCLIOptions = (0, live_backup_copy_1.parseLiveBackupCopyCLIOptions)(configFile, table, siteId, wpcliCommand);
|
|
74
|
+
const slug = await (0, dev_environment_cli_1.getEnvironmentName)(optRest);
|
|
75
|
+
const trackerFn = (0, tracker_1.makeCommandTracker)('dev_env_sync_sql', {
|
|
76
|
+
app: app.id,
|
|
77
|
+
env: env.uniqueLabel,
|
|
78
|
+
slug,
|
|
79
|
+
multisite: env.isMultisite,
|
|
80
80
|
});
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
81
|
+
await trackerFn('execute');
|
|
82
|
+
const lando = await (0, dev_environment_lando_1.bootstrapLando)({ logFile: (0, dev_environment_cli_1.getDevEnvLogFile)(slug) });
|
|
83
|
+
const isUp = (await Promise.all([
|
|
84
|
+
(0, dev_environment_lando_1.isContainerRunning)(lando, slug, 'php'),
|
|
85
|
+
(0, dev_environment_lando_1.isContainerRunning)(lando, slug, 'database'),
|
|
86
|
+
])).every(Boolean);
|
|
87
|
+
if (!isUp && !opt.force) {
|
|
88
|
+
await trackerFn('env_not_running_error', { errorMessage: 'Environment was not running' });
|
|
89
|
+
throw new user_error_1.default('Environment needs to be started first');
|
|
90
|
+
}
|
|
91
|
+
const cmd = new dev_env_sync_sql_1.DevEnvSyncSQLCommand(app, env, slug, lando, trackerFn, liveBackupCopyCLIOptions);
|
|
92
|
+
// TODO: There's a function called handleCLIException for dev-env that handles exceptions but DevEnvSyncSQLCommand has its own implementation.
|
|
93
|
+
// We should probably use handleCLIException instead?
|
|
94
|
+
const didCommandRun = await cmd.run();
|
|
95
|
+
if (!didCommandRun) {
|
|
96
|
+
console.log('Command canceled by user.');
|
|
97
|
+
}
|
|
98
|
+
await trackerFn('success');
|
|
99
|
+
});
|
|
@@ -1,14 +1,21 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const command_1 = __importDefault(require("../lib/cli/command"));
|
|
6
8
|
const usage = 'vip dev-env sync';
|
|
7
|
-
const examples = [
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
const examples = [
|
|
10
|
+
{
|
|
11
|
+
usage: `vip @example-app.develop dev-env sync sql --slug=example-site`,
|
|
12
|
+
description: 'Sync the entire database of the develop environment in the "example-app" application to a local environment named "example-site".',
|
|
13
|
+
},
|
|
14
|
+
];
|
|
15
|
+
(0, command_1.default)({
|
|
16
|
+
requiredArgs: 1,
|
|
17
|
+
usage,
|
|
18
|
+
})
|
|
19
|
+
.examples(examples)
|
|
20
|
+
.command('sql', 'Sync the database of a VIP Platform environment to a local environment.')
|
|
21
|
+
.argv(process.argv);
|
|
@@ -1,92 +1,101 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
const debug_1 = __importDefault(require("debug"));
|
|
9
|
+
const command_1 = __importDefault(require("../lib/cli/command"));
|
|
10
|
+
const dev_environment_1 = require("../lib/constants/dev-environment");
|
|
11
|
+
const dev_environment_cli_1 = require("../lib/dev-environment/dev-environment-cli");
|
|
12
|
+
const dev_environment_configuration_file_1 = require("../lib/dev-environment/dev-environment-configuration-file");
|
|
13
|
+
const dev_environment_core_1 = require("../lib/dev-environment/dev-environment-core");
|
|
14
|
+
const dev_environment_lando_1 = require("../lib/dev-environment/dev-environment-lando");
|
|
15
|
+
const tracker_1 = require("../lib/tracker");
|
|
16
|
+
const debug = (0, debug_1.default)('@automattic/vip:bin:dev-environment');
|
|
15
17
|
const exampleUsage = 'vip dev-env update';
|
|
16
18
|
const usage = 'vip dev-env update';
|
|
17
|
-
const examples = [
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
19
|
+
const examples = [
|
|
20
|
+
{
|
|
21
|
+
usage: `${exampleUsage} --slug=example-site`,
|
|
22
|
+
description: 'Update or confirm all settings for the local environment named "example-site" in the setup wizard.',
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
usage: `${exampleUsage} --php=8.2 --slug=example-site`,
|
|
26
|
+
description: 'Update the PHP version to 8.2 in the `update` command then enter the setup wizard to update or confirm all other settings.\n' +
|
|
27
|
+
' * Configuration options that are set in the `update` command will be skipped in the setup wizard.',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
usage: `${exampleUsage} --app-code=/Users/example/Desktop/example-app-code --slug=example-site`,
|
|
31
|
+
description: "Update application code to load from a path on the user's local machine for the local environment.",
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
const cmd = (0, command_1.default)({
|
|
35
|
+
usage,
|
|
36
|
+
}).option('slug', 'A unique name for a local environment. Default is "vip-local".', undefined, dev_environment_cli_1.processSlug);
|
|
37
|
+
(0, dev_environment_cli_1.addDevEnvConfigurationOptions)(cmd);
|
|
31
38
|
cmd.examples(examples);
|
|
32
39
|
cmd.argv(process.argv, async (arg, opt) => {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
40
|
+
const slug = await (0, dev_environment_cli_1.getEnvironmentName)(opt);
|
|
41
|
+
const lando = await (0, dev_environment_lando_1.bootstrapLando)({ logFile: (0, dev_environment_cli_1.getDevEnvLogFile)(slug) });
|
|
42
|
+
(0, dev_environment_cli_1.validateDependencies)(lando);
|
|
43
|
+
const trackingInfo = (0, dev_environment_cli_1.getEnvTrackingInfo)(slug);
|
|
44
|
+
await (0, tracker_1.trackEvent)('dev_env_update_command_execute', trackingInfo);
|
|
45
|
+
try {
|
|
46
|
+
const environmentAlreadyExists = await (0, dev_environment_core_1.doesEnvironmentExist)((0, dev_environment_core_1.getEnvironmentPath)(slug));
|
|
47
|
+
if (!environmentAlreadyExists) {
|
|
48
|
+
throw new Error(dev_environment_1.DEV_ENVIRONMENT_NOT_FOUND);
|
|
49
|
+
}
|
|
50
|
+
const currentInstanceData = (0, dev_environment_core_1.readEnvironmentData)(slug);
|
|
51
|
+
debug('Read instance data', currentInstanceData);
|
|
52
|
+
(0, dev_environment_cli_1.ensureValidPathsInOptions)(opt);
|
|
53
|
+
/** @type {InstanceOptions} */
|
|
54
|
+
const preselectedOptions = {
|
|
55
|
+
title: currentInstanceData.wpTitle,
|
|
56
|
+
multisite: currentInstanceData.multisite,
|
|
57
|
+
...opt,
|
|
58
|
+
};
|
|
59
|
+
const configurationFileOptions = await (0, dev_environment_configuration_file_1.getConfigurationFileOptions)();
|
|
60
|
+
const finalPreselectedOptions = (0, dev_environment_configuration_file_1.mergeConfigurationFileOptions)(preselectedOptions, configurationFileOptions);
|
|
61
|
+
/** @type {InstanceOptions} */
|
|
62
|
+
const defaultOptions = {
|
|
63
|
+
appCode: currentInstanceData.appCode.dir || currentInstanceData.appCode.tag || 'demo',
|
|
64
|
+
muPlugins: currentInstanceData.muPlugins.dir || currentInstanceData.muPlugins.tag || 'demo',
|
|
65
|
+
wordpress: currentInstanceData.wordpress.tag || 'trunk',
|
|
66
|
+
elasticsearch: currentInstanceData.elasticsearch,
|
|
67
|
+
php: currentInstanceData.php ||
|
|
68
|
+
dev_environment_1.DEV_ENVIRONMENT_PHP_VERSIONS[dev_environment_1.DEV_ENVIRONMENT_DEFAULT_PHP_VERSION].image,
|
|
69
|
+
mariadb: currentInstanceData.mariadb,
|
|
70
|
+
phpmyadmin: currentInstanceData.phpmyadmin,
|
|
71
|
+
xdebug: currentInstanceData.xdebug,
|
|
72
|
+
mailpit: currentInstanceData.mailpit,
|
|
73
|
+
photon: currentInstanceData.photon,
|
|
74
|
+
mediaRedirectDomain: currentInstanceData.mediaRedirectDomain,
|
|
75
|
+
multisite: false,
|
|
76
|
+
title: '',
|
|
77
|
+
cron: currentInstanceData.cron,
|
|
78
|
+
adminPassword: currentInstanceData.adminPassword,
|
|
79
|
+
};
|
|
80
|
+
const suppressPrompts = !process.stdin.isTTY;
|
|
81
|
+
const instanceData = await (0, dev_environment_cli_1.promptForArguments)(finalPreselectedOptions, defaultOptions, suppressPrompts, false);
|
|
82
|
+
instanceData.siteSlug = slug;
|
|
83
|
+
await (0, dev_environment_core_1.updateEnvironment)(lando, instanceData);
|
|
84
|
+
const message = '\n' +
|
|
85
|
+
chalk_1.default.green('✓') +
|
|
86
|
+
' environment updated. Please start environment again for changes to take effect: ' +
|
|
87
|
+
chalk_1.default.bold(`vip dev-env --slug ${slug} start`);
|
|
88
|
+
console.log(message);
|
|
89
|
+
await (0, tracker_1.trackEvent)('dev_env_update_command_success', trackingInfo);
|
|
44
90
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
};
|
|
55
|
-
const configurationFileOptions = await (0, _devEnvironmentConfigurationFile.getConfigurationFileOptions)();
|
|
56
|
-
const finalPreselectedOptions = (0, _devEnvironmentConfigurationFile.mergeConfigurationFileOptions)(preselectedOptions, configurationFileOptions);
|
|
57
|
-
|
|
58
|
-
/** @type {InstanceOptions} */
|
|
59
|
-
const defaultOptions = {
|
|
60
|
-
appCode: currentInstanceData.appCode.dir || currentInstanceData.appCode.tag || 'demo',
|
|
61
|
-
muPlugins: currentInstanceData.muPlugins.dir || currentInstanceData.muPlugins.tag || 'demo',
|
|
62
|
-
wordpress: currentInstanceData.wordpress.tag || 'trunk',
|
|
63
|
-
elasticsearch: currentInstanceData.elasticsearch,
|
|
64
|
-
php: currentInstanceData.php || _devEnvironment.DEV_ENVIRONMENT_PHP_VERSIONS[_devEnvironment.DEV_ENVIRONMENT_DEFAULT_PHP_VERSION].image,
|
|
65
|
-
mariadb: currentInstanceData.mariadb,
|
|
66
|
-
phpmyadmin: currentInstanceData.phpmyadmin,
|
|
67
|
-
xdebug: currentInstanceData.xdebug,
|
|
68
|
-
mailpit: currentInstanceData.mailpit,
|
|
69
|
-
photon: currentInstanceData.photon,
|
|
70
|
-
mediaRedirectDomain: currentInstanceData.mediaRedirectDomain,
|
|
71
|
-
multisite: false,
|
|
72
|
-
title: '',
|
|
73
|
-
cron: currentInstanceData.cron,
|
|
74
|
-
adminPassword: currentInstanceData.adminPassword
|
|
75
|
-
};
|
|
76
|
-
const suppressPrompts = !process.stdin.isTTY;
|
|
77
|
-
const instanceData = await (0, _devEnvironmentCli.promptForArguments)(finalPreselectedOptions, defaultOptions, suppressPrompts, false);
|
|
78
|
-
instanceData.siteSlug = slug;
|
|
79
|
-
await (0, _devEnvironmentCore.updateEnvironment)(lando, instanceData);
|
|
80
|
-
const message = '\n' + _chalk.default.green('✓') + ' environment updated. Please start environment again for changes to take effect: ' + _chalk.default.bold(`vip dev-env --slug ${slug} start`);
|
|
81
|
-
console.log(message);
|
|
82
|
-
await (0, _tracker.trackEvent)('dev_env_update_command_success', trackingInfo);
|
|
83
|
-
} catch (error) {
|
|
84
|
-
if ('ENOENT' === error.code) {
|
|
85
|
-
const message = 'Environment was created before update was supported.\n\nTo update environment please destroy it and create a new one.';
|
|
86
|
-
await (0, _devEnvironmentCli.handleCLIException)(new Error(message), 'dev_env_update_command_error', trackingInfo);
|
|
87
|
-
} else {
|
|
88
|
-
await (0, _devEnvironmentCli.handleCLIException)(error, 'dev_env_update_command_error', trackingInfo);
|
|
91
|
+
catch (error) {
|
|
92
|
+
if ('ENOENT' === error.code) {
|
|
93
|
+
const message = 'Environment was created before update was supported.\n\nTo update environment please destroy it and create a new one.';
|
|
94
|
+
await (0, dev_environment_cli_1.handleCLIException)(new Error(message), 'dev_env_update_command_error', trackingInfo);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
await (0, dev_environment_cli_1.handleCLIException)(error, 'dev_env_update_command_error', trackingInfo);
|
|
98
|
+
}
|
|
99
|
+
process.exitCode = 1;
|
|
89
100
|
}
|
|
90
|
-
|
|
91
|
-
}
|
|
92
|
-
});
|
|
101
|
+
});
|
package/dist/bin/vip-dev-env.js
CHANGED
|
@@ -1,12 +1,29 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const command_1 = __importDefault(require("../lib/cli/command"));
|
|
6
8
|
if (process.getuid?.() === 0) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
+
console.error('This script should not be run as root. Exiting.');
|
|
10
|
+
process.exit(1);
|
|
9
11
|
}
|
|
10
|
-
(0,
|
|
11
|
-
|
|
12
|
-
})
|
|
12
|
+
(0, command_1.default)({
|
|
13
|
+
requiredArgs: 0,
|
|
14
|
+
})
|
|
15
|
+
.command('create', 'Create a new local environment.')
|
|
16
|
+
.command('update', 'Update the settings of a local environment.')
|
|
17
|
+
.command('start', 'Start a local environment.')
|
|
18
|
+
.command('stop', 'Stop a local environment.')
|
|
19
|
+
.command('destroy', 'Remove a local environment.')
|
|
20
|
+
.command('info', 'Retrieve information about a local environment.')
|
|
21
|
+
.command('list', 'Retrieve information about all local environments.')
|
|
22
|
+
.command('exec', 'Run a WP-CLI command against a local environment.')
|
|
23
|
+
.command('import', 'Import media or database files to a local environment.')
|
|
24
|
+
.command('shell', 'Create a shell and run commands against a local environment.')
|
|
25
|
+
.command('logs', 'Retrieve logs for a local environment.')
|
|
26
|
+
.command('sync', 'Sync the database of a VIP Platform environment to a local environment.')
|
|
27
|
+
.command('purge', 'Remove all local environments.')
|
|
28
|
+
.command('envvar', 'Manage environment variables for a local environment.')
|
|
29
|
+
.argv(process.argv);
|