@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.
Files changed (311) hide show
  1. package/assets/dev-env.lando.template.yml.ejs +1 -1
  2. package/dist/bin/vip-app-deploy-token-generate.js +110 -78
  3. package/dist/bin/vip-app-deploy-token.js +24 -16
  4. package/dist/bin/vip-app-deploy-validate.js +45 -41
  5. package/dist/bin/vip-app-deploy.js +222 -215
  6. package/dist/bin/vip-app-list.js +59 -43
  7. package/dist/bin/vip-app.js +97 -66
  8. package/dist/bin/vip-backup-db.js +36 -29
  9. package/dist/bin/vip-backup.js +16 -9
  10. package/dist/bin/vip-cache-purge-url.js +93 -55
  11. package/dist/bin/vip-cache.js +23 -14
  12. package/dist/bin/vip-config-envvar-delete.js +74 -73
  13. package/dist/bin/vip-config-envvar-get-all.js +68 -68
  14. package/dist/bin/vip-config-envvar-get.js +46 -46
  15. package/dist/bin/vip-config-envvar-list.js +54 -57
  16. package/dist/bin/vip-config-envvar-set.js +102 -96
  17. package/dist/bin/vip-config-envvar.js +38 -24
  18. package/dist/bin/vip-config-software-get.js +88 -75
  19. package/dist/bin/vip-config-software-update.js +116 -120
  20. package/dist/bin/vip-config-software.js +31 -21
  21. package/dist/bin/vip-config.js +25 -17
  22. package/dist/bin/vip-db-phpmyadmin.js +40 -39
  23. package/dist/bin/vip-db.js +13 -12
  24. package/dist/bin/vip-defensive-mode-configure.js +197 -197
  25. package/dist/bin/vip-defensive-mode-disable.js +43 -35
  26. package/dist/bin/vip-defensive-mode-enable.js +47 -38
  27. package/dist/bin/vip-defensive-mode.js +28 -17
  28. package/dist/bin/vip-dev-env-create.js +147 -104
  29. package/dist/bin/vip-dev-env-destroy.js +48 -39
  30. package/dist/bin/vip-dev-env-envvar-delete.js +60 -49
  31. package/dist/bin/vip-dev-env-envvar-get-all.js +52 -45
  32. package/dist/bin/vip-dev-env-envvar-get.js +48 -37
  33. package/dist/bin/vip-dev-env-envvar-list.js +48 -41
  34. package/dist/bin/vip-dev-env-envvar-set.js +83 -70
  35. package/dist/bin/vip-dev-env-envvar.js +38 -23
  36. package/dist/bin/vip-dev-env-exec.js +81 -74
  37. package/dist/bin/vip-dev-env-import-media.js +34 -26
  38. package/dist/bin/vip-dev-env-import-sql.js +65 -51
  39. package/dist/bin/vip-dev-env-import.js +23 -14
  40. package/dist/bin/vip-dev-env-info.js +59 -50
  41. package/dist/bin/vip-dev-env-list.js +34 -31
  42. package/dist/bin/vip-dev-env-logs.js +59 -49
  43. package/dist/bin/vip-dev-env-purge.js +71 -63
  44. package/dist/bin/vip-dev-env-shell.js +82 -71
  45. package/dist/bin/vip-dev-env-start.js +77 -65
  46. package/dist/bin/vip-dev-env-stop.js +80 -74
  47. package/dist/bin/vip-dev-env-sync-sql.js +80 -72
  48. package/dist/bin/vip-dev-env-sync.js +18 -11
  49. package/dist/bin/vip-dev-env-update.js +93 -84
  50. package/dist/bin/vip-dev-env.js +25 -8
  51. package/dist/bin/vip-edge-workers-build.js +82 -54
  52. package/dist/bin/vip-edge-workers-delete.js +84 -52
  53. package/dist/bin/vip-edge-workers-deploy.js +186 -126
  54. package/dist/bin/vip-edge-workers-disable.js +75 -44
  55. package/dist/bin/vip-edge-workers-enable.js +86 -54
  56. package/dist/bin/vip-edge-workers-get.js +108 -88
  57. package/dist/bin/vip-edge-workers-init.js +83 -53
  58. package/dist/bin/vip-edge-workers-list.js +89 -54
  59. package/dist/bin/vip-edge-workers-new.js +98 -69
  60. package/dist/bin/vip-edge-workers-validate.js +123 -82
  61. package/dist/bin/vip-edge-workers.js +19 -6
  62. package/dist/bin/vip-export-sql.js +75 -69
  63. package/dist/bin/vip-export.js +12 -7
  64. package/dist/bin/vip-import-media-abort.js +99 -73
  65. package/dist/bin/vip-import-media-status.js +83 -51
  66. package/dist/bin/vip-import-media.js +165 -166
  67. package/dist/bin/vip-import-sql-status.js +75 -45
  68. package/dist/bin/vip-import-sql.js +536 -596
  69. package/dist/bin/vip-import-validate-files.js +122 -141
  70. package/dist/bin/vip-import-validate-sql.js +52 -16
  71. package/dist/bin/vip-import.js +16 -7
  72. package/dist/bin/vip-logout.js +17 -13
  73. package/dist/bin/vip-logs.js +209 -183
  74. package/dist/bin/vip-search-replace.js +85 -53
  75. package/dist/bin/vip-slowlogs.js +168 -147
  76. package/dist/bin/vip-sync.js +163 -133
  77. package/dist/bin/vip-whoami.js +71 -35
  78. package/dist/bin/vip-wp.js +506 -549
  79. package/dist/bin/vip.js +161 -116
  80. package/dist/commands/backup-db.js +183 -149
  81. package/dist/commands/dev-env-import-sql.js +162 -117
  82. package/dist/commands/dev-env-sync-sql.js +372 -330
  83. package/dist/commands/export-sql.js +441 -425
  84. package/dist/commands/phpmyadmin.js +232 -212
  85. package/dist/commands/wp-ssh.js +218 -187
  86. package/dist/lib/analytics/clients/tracks.js +84 -91
  87. package/dist/lib/analytics/index.js +27 -27
  88. package/dist/lib/api/app.js +37 -36
  89. package/dist/lib/api/cache-purge.js +17 -20
  90. package/dist/lib/api/constants.js +5 -6
  91. package/dist/lib/api/edge-workers.js +84 -135
  92. package/dist/lib/api/error-debug.js +10 -13
  93. package/dist/lib/api/feature-flags.js +16 -17
  94. package/dist/lib/api/http.js +47 -48
  95. package/dist/lib/api/user.js +17 -18
  96. package/dist/lib/api.js +107 -116
  97. package/dist/lib/app-logs/app-logs.js +24 -25
  98. package/dist/lib/app-slowlogs/app-slowlogs.js +23 -24
  99. package/dist/lib/app-slowlogs/types.js +2 -1
  100. package/dist/lib/app.js +6 -8
  101. package/dist/lib/backup-storage-availability/backup-storage-availability.js +119 -119
  102. package/dist/lib/backup-storage-availability/docker-machine-not-found-error.js +5 -6
  103. package/dist/lib/cli/apiConfig.js +71 -41
  104. package/dist/lib/cli/command.js +1120 -873
  105. package/dist/lib/cli/config.js +29 -29
  106. package/dist/lib/cli/envAlias.js +35 -50
  107. package/dist/lib/cli/exit.js +19 -19
  108. package/dist/lib/cli/format.js +172 -172
  109. package/dist/lib/cli/progress.js +193 -236
  110. package/dist/lib/cli/prompt.js +14 -15
  111. package/dist/lib/cli/runtime-mode.js +5 -6
  112. package/dist/lib/client-file-uploader.js +489 -641
  113. package/dist/lib/config/software.js +206 -212
  114. package/dist/lib/constants/dev-environment.js +40 -37
  115. package/dist/lib/constants/file-size.js +6 -7
  116. package/dist/lib/constants/vipgo.js +24 -12
  117. package/dist/lib/custom-deploy/custom-deploy.js +138 -120
  118. package/dist/lib/database.js +88 -85
  119. package/dist/lib/defensive-mode/api.js +41 -46
  120. package/dist/lib/defensive-mode/cli-helpers.js +40 -40
  121. package/dist/lib/dev-environment/dev-environment-cli.js +776 -735
  122. package/dist/lib/dev-environment/dev-environment-configuration-file.js +224 -191
  123. package/dist/lib/dev-environment/dev-environment-core.js +697 -732
  124. package/dist/lib/dev-environment/dev-environment-database.js +57 -41
  125. package/dist/lib/dev-environment/dev-environment-lando.js +734 -666
  126. package/dist/lib/dev-environment/docker-utils.js +96 -90
  127. package/dist/lib/dev-environment/env-vars.js +61 -59
  128. package/dist/lib/dev-environment/lando-loader.js +6 -7
  129. package/dist/lib/dev-environment/types.js +2 -1
  130. package/dist/lib/edge-workers/confirmation.js +42 -36
  131. package/dist/lib/edge-workers/deployment.js +150 -159
  132. package/dist/lib/edge-workers/index.js +68 -85
  133. package/dist/lib/edge-workers/location.js +26 -26
  134. package/dist/lib/edge-workers/output.js +14 -15
  135. package/dist/lib/edge-workers/project.js +123 -132
  136. package/dist/lib/edge-workers/toolchains/assemblyscript/constants.js +6 -8
  137. package/dist/lib/edge-workers/toolchains/assemblyscript/index.js +100 -101
  138. package/dist/lib/edge-workers/toolchains/assemblyscript/templates.js +31 -33
  139. package/dist/lib/edge-workers/toolchains/index.js +15 -15
  140. package/dist/lib/edge-workers/types.js +10 -38
  141. package/dist/lib/edge-workers/validation.js +161 -150
  142. package/dist/lib/env.js +16 -17
  143. package/dist/lib/envvar/api-delete.js +16 -18
  144. package/dist/lib/envvar/api-get-all.js +15 -19
  145. package/dist/lib/envvar/api-get.js +8 -9
  146. package/dist/lib/envvar/api-list.js +16 -21
  147. package/dist/lib/envvar/api-set.js +20 -19
  148. package/dist/lib/envvar/api.js +34 -29
  149. package/dist/lib/envvar/input.js +29 -34
  150. package/dist/lib/envvar/logging.js +9 -11
  151. package/dist/lib/envvar/read-file.js +6 -7
  152. package/dist/lib/http/download-file.js +76 -44
  153. package/dist/lib/http/proxy-agent.js +37 -40
  154. package/dist/lib/http/proxy-dispatcher.js +69 -71
  155. package/dist/lib/keychain/insecure.js +40 -36
  156. package/dist/lib/keychain/keychain.js +2 -1
  157. package/dist/lib/keychain/secure.js +16 -15
  158. package/dist/lib/keychain.js +22 -22
  159. package/dist/lib/live-backup-copy.js +117 -115
  160. package/dist/lib/logout.js +17 -19
  161. package/dist/lib/media-import/config.js +15 -14
  162. package/dist/lib/media-import/media-file-import.js +9 -13
  163. package/dist/lib/media-import/progress.js +53 -65
  164. package/dist/lib/media-import/status.js +241 -256
  165. package/dist/lib/media-import/utils.js +15 -15
  166. package/dist/lib/node-version-check.js +16 -16
  167. package/dist/lib/promise.js +16 -17
  168. package/dist/lib/read-file.js +48 -16
  169. package/dist/lib/rechallenge/client.js +37 -43
  170. package/dist/lib/rechallenge/errors.js +38 -37
  171. package/dist/lib/rechallenge/flow.js +148 -123
  172. package/dist/lib/rechallenge/index.js +23 -24
  173. package/dist/lib/rechallenge/link.js +153 -151
  174. package/dist/lib/rechallenge/open-browser.js +14 -17
  175. package/dist/lib/rechallenge/token-cache.js +83 -86
  176. package/dist/lib/rechallenge/types.js +5 -14
  177. package/dist/lib/retry.js +93 -129
  178. package/dist/lib/search-and-replace.js +164 -148
  179. package/dist/lib/site-import/db-file-import.js +12 -16
  180. package/dist/lib/site-import/status.js +291 -291
  181. package/dist/lib/token.js +86 -87
  182. package/dist/lib/tracker.js +51 -62
  183. package/dist/lib/types/graphql/rate-limit-exceeded-error.js +2 -1
  184. package/dist/lib/types.js +2 -1
  185. package/dist/lib/user-error.js +6 -8
  186. package/dist/lib/utils.js +81 -87
  187. package/dist/lib/validations/custom-deploy.js +218 -186
  188. package/dist/lib/validations/is-multi-site-sql-dump.js +6 -6
  189. package/dist/lib/validations/is-multi-site.js +83 -50
  190. package/dist/lib/validations/is-multisite-domain-mapped.js +92 -62
  191. package/dist/lib/validations/line-by-line.js +78 -46
  192. package/dist/lib/validations/site-type.js +59 -63
  193. package/dist/lib/validations/sql-insert-parser.js +415 -0
  194. package/dist/lib/validations/sql.js +551 -431
  195. package/dist/lib/validations/utils.js +27 -29
  196. package/dist/lib/vip-import-validate-files.js +481 -490
  197. package/dist/lib/wp/helpers.js +41 -45
  198. package/dist/lib/wp/readline.js +21 -57
  199. package/dist/lib/xdg-data.js +11 -12
  200. package/helpers/mark-cli-executable.js +9 -0
  201. package/node_modules/@apollo/client/CHANGELOG.md +10 -0
  202. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs +5 -0
  203. package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs.map +1 -1
  204. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs +2 -1
  205. package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  206. package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs +14 -2
  207. package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs.map +1 -1
  208. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs +16 -0
  209. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs.map +1 -1
  210. package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.d.cts +2 -0
  211. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs +3 -2
  212. package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  213. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs +9 -1
  214. package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs.map +1 -1
  215. package/node_modules/@apollo/client/__cjs/core/QueryInfo.d.cts +1 -1
  216. package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs +10 -3
  217. package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs.map +1 -1
  218. package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.cjs.map +1 -1
  219. package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.d.cts +42 -43
  220. package/node_modules/@apollo/client/__cjs/version.cjs +1 -1
  221. package/node_modules/@apollo/client/cache/inmemory/helpers.js +5 -0
  222. package/node_modules/@apollo/client/cache/inmemory/helpers.js.map +1 -1
  223. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js +2 -1
  224. package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js.map +1 -1
  225. package/node_modules/@apollo/client/cache/inmemory/key-extractor.js +14 -2
  226. package/node_modules/@apollo/client/cache/inmemory/key-extractor.js.map +1 -1
  227. package/node_modules/@apollo/client/cache/inmemory/policies.d.ts +2 -0
  228. package/node_modules/@apollo/client/cache/inmemory/policies.js +17 -1
  229. package/node_modules/@apollo/client/cache/inmemory/policies.js.map +1 -1
  230. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js +3 -2
  231. package/node_modules/@apollo/client/cache/inmemory/writeToStore.js.map +1 -1
  232. package/node_modules/@apollo/client/core/QueryInfo.d.ts +1 -1
  233. package/node_modules/@apollo/client/core/QueryInfo.js +10 -2
  234. package/node_modules/@apollo/client/core/QueryInfo.js.map +1 -1
  235. package/node_modules/@apollo/client/core/QueryManager.js +10 -3
  236. package/node_modules/@apollo/client/core/QueryManager.js.map +1 -1
  237. package/node_modules/@apollo/client/package.json +1 -1
  238. package/node_modules/@apollo/client/react/hooks/useFragment.d.ts +42 -43
  239. package/node_modules/@apollo/client/react/hooks/useFragment.js.map +1 -1
  240. package/node_modules/@apollo/client/react/hooks-compiled/useFragment.d.ts +42 -43
  241. package/node_modules/@apollo/client/react/hooks-compiled/useFragment.js.map +1 -1
  242. package/node_modules/@apollo/client/version.js +1 -1
  243. package/node_modules/@automattic/vip-search-replace/README.md +6 -1
  244. package/node_modules/@automattic/vip-search-replace/lib/index.js +46 -14
  245. package/node_modules/@automattic/vip-search-replace/package.json +1 -1
  246. package/node_modules/@types/node/README.md +1 -1
  247. package/node_modules/@types/node/package.json +2 -2
  248. package/node_modules/@types/node/zlib.d.ts +752 -0
  249. package/node_modules/check-disk-space/README.md +92 -32
  250. package/node_modules/check-disk-space/dist/check-disk-space.d.mts +58 -0
  251. package/node_modules/check-disk-space/dist/check-disk-space.mjs +170 -190
  252. package/node_modules/check-disk-space/package.json +43 -71
  253. package/node_modules/cpu-features/build/Makefile +2 -2
  254. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/filesystem.o.d +1 -1
  255. 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
  256. 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
  257. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_windows.o.d +1 -1
  258. 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
  259. 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
  260. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_ppc_linux.o.d +1 -1
  261. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_freebsd.o.d +1 -1
  262. 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
  263. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_macos.o.d +1 -1
  264. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_windows.o.d +1 -1
  265. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/stack_line_reader.o.d +1 -1
  266. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/string_view.o.d +1 -1
  267. package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpufeatures/src/binding.o.d +157 -145
  268. package/node_modules/cpu-features/build/Release/cpufeatures.node +0 -0
  269. package/node_modules/cpu-features/build/Release/obj.target/cpufeatures/src/binding.o +0 -0
  270. package/node_modules/cpu-features/build/Release/obj.target/cpufeatures.node +0 -0
  271. package/node_modules/cpu-features/build/config.gypi +100 -31
  272. package/node_modules/cpu-features/build/cpufeatures.target.mk +14 -14
  273. package/node_modules/cpu-features/build/deps/cpu_features/cpu_features.target.mk +14 -14
  274. package/node_modules/ssh2/lib/protocol/crypto/build/Makefile +2 -2
  275. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d.raw +136 -0
  276. package/node_modules/ssh2/lib/protocol/crypto/build/sshcrypto.target.mk +14 -14
  277. package/node_modules/undici/docs/docs/api/Interceptors.md +15 -2
  278. package/node_modules/undici/lib/dispatcher/client-h2.js +78 -3
  279. package/node_modules/undici/lib/dispatcher/pool-base.js +20 -3
  280. package/node_modules/undici/package.json +3 -3
  281. package/node_modules/undici/types/api.d.ts +1 -1
  282. package/node_modules/undici/types/utility.d.ts +4 -4
  283. package/package.json +44 -13
  284. package/dist/lib/analytics/clients/client.js +0 -1
  285. package/dist/lib/analytics/clients/pendo.js +0 -78
  286. package/helpers/check-version.js +0 -16
  287. package/node_modules/check-disk-space/dist/check-disk-space.cjs +0 -210
  288. package/node_modules/check-disk-space/dist/check-disk-space.d.ts +0 -53
  289. package/node_modules/fetch-retry/.eslintignore +0 -1
  290. package/node_modules/fetch-retry/.eslintrc.yml +0 -20
  291. package/node_modules/fetch-retry/.github/workflows/node.js.yml +0 -32
  292. package/node_modules/fetch-retry/.husky/pre-commit +0 -6
  293. package/node_modules/fetch-retry/.nycrc.json +0 -24
  294. package/node_modules/fetch-retry/.travis.yml +0 -3
  295. package/node_modules/fetch-retry/LICENSE +0 -21
  296. package/node_modules/fetch-retry/README.md +0 -128
  297. package/node_modules/fetch-retry/dist/fetch-retry.umd.js +0 -151
  298. package/node_modules/fetch-retry/index.d.ts +0 -29
  299. package/node_modules/fetch-retry/index.js +0 -143
  300. package/node_modules/fetch-retry/package.json +0 -41
  301. package/node_modules/fetch-retry/rollup.config.js +0 -12
  302. package/node_modules/fetch-retry/test/.eslintrc.yml +0 -7
  303. package/node_modules/fetch-retry/test/integration/index.js +0 -212
  304. package/node_modules/fetch-retry/test/integration/mock-api/index.js +0 -42
  305. package/node_modules/fetch-retry/test/unit/index.js +0 -1169
  306. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d +0 -265
  307. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto.node.d +0 -1
  308. package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/sshcrypto.node.d +0 -1
  309. package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto/src/binding.o +0 -0
  310. package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto.node +0 -0
  311. package/node_modules/ssh2/lib/protocol/crypto/build/Release/sshcrypto.node +0 -0
@@ -1,62 +1,90 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
-
4
- exports.__esModule = true;
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
5
40
  exports.edgeWorkersBuildCommand = edgeWorkersBuildCommand;
6
- var _nodePath = _interopRequireDefault(require("node:path"));
7
- var _command = _interopRequireDefault(require("../lib/cli/command"));
8
- var exit = _interopRequireWildcard(require("../lib/cli/exit"));
9
- var _edgeWorkers = require("../lib/edge-workers");
10
- var _output = require("../lib/edge-workers/output");
11
- var _project = require("../lib/edge-workers/project");
12
- var _tracker = require("../lib/tracker");
13
- var _userError = _interopRequireDefault(require("../lib/user-error"));
14
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
41
+ const node_path_1 = __importDefault(require("node:path"));
42
+ const command_1 = __importDefault(require("../lib/cli/command"));
43
+ const exit = __importStar(require("../lib/cli/exit"));
44
+ const edge_workers_1 = require("../lib/edge-workers");
45
+ const output_1 = require("../lib/edge-workers/output");
46
+ const project_1 = require("../lib/edge-workers/project");
47
+ const tracker_1 = require("../lib/tracker");
48
+ const user_error_1 = __importDefault(require("../lib/user-error"));
16
49
  const usage = 'vip edge-workers build';
17
- const examples = [{
18
- usage: 'vip edge-workers build',
19
- description: 'Compile every worker in the project to WebAssembly.'
20
- }, {
21
- usage: 'vip edge-workers build my-worker',
22
- description: 'Compile a single worker.'
23
- }];
50
+ const examples = [
51
+ {
52
+ usage: 'vip edge-workers build',
53
+ description: 'Compile every worker in the project to WebAssembly.',
54
+ },
55
+ {
56
+ usage: 'vip edge-workers build my-worker',
57
+ description: 'Compile a single worker.',
58
+ },
59
+ ];
24
60
  async function edgeWorkersBuildCommand(args = [], opt = {}) {
25
- const name = args[0];
26
- await (0, _tracker.trackEvent)('edge_workers_build_command_execute', {
27
- name,
28
- all: Boolean(opt.all)
29
- });
30
- try {
31
- if (name && opt.all) {
32
- throw new _userError.default('Supply either a worker name or --all, not both.');
33
- }
34
- const projectDir = (0, _project.resolveProjectDir)({
35
- path: opt.path
36
- });
37
- const workers = name ? [(0, _project.findWorker)(projectDir, name)] : (0, _project.discoverWorkers)(projectDir);
38
- if (!workers.length) {
39
- throw new _userError.default('No workers found in this project. Create one with `vip edge-workers new`.');
61
+ const name = args[0];
62
+ await (0, tracker_1.trackEvent)('edge_workers_build_command_execute', { name, all: Boolean(opt.all) });
63
+ try {
64
+ if (name && opt.all) {
65
+ throw new user_error_1.default('Supply either a worker name or --all, not both.');
66
+ }
67
+ const projectDir = (0, project_1.resolveProjectDir)({ path: opt.path });
68
+ const workers = name ? [(0, project_1.findWorker)(projectDir, name)] : (0, project_1.discoverWorkers)(projectDir);
69
+ if (!workers.length) {
70
+ throw new user_error_1.default('No workers found in this project. Create one with `vip edge-workers new`.');
71
+ }
72
+ for (const worker of workers) {
73
+ const { wasmPath, sizeBytes } = (0, edge_workers_1.buildWorker)(projectDir, worker);
74
+ console.log(`✓ Built "${(0, output_1.escapeTerminalText)(worker.manifest.name)}" → ${(0, output_1.escapeTerminalText)(node_path_1.default.relative(projectDir, wasmPath))} (${sizeBytes} bytes)`);
75
+ }
76
+ await (0, tracker_1.trackEvent)('edge_workers_build_command_success', { count: workers.length });
40
77
  }
41
- for (const worker of workers) {
42
- const {
43
- wasmPath,
44
- sizeBytes
45
- } = (0, _edgeWorkers.buildWorker)(projectDir, worker);
46
- console.log(`✓ Built "${(0, _output.escapeTerminalText)(worker.manifest.name)}" → ${(0, _output.escapeTerminalText)(_nodePath.default.relative(projectDir, wasmPath))} (${sizeBytes} bytes)`);
78
+ catch (err) {
79
+ await (0, tracker_1.trackEvent)('edge_workers_build_command_error', { name, error: 'build_failed' });
80
+ exit.withError((0, output_1.escapeTerminalText)(err.message));
47
81
  }
48
- await (0, _tracker.trackEvent)('edge_workers_build_command_success', {
49
- count: workers.length
50
- });
51
- } catch (err) {
52
- await (0, _tracker.trackEvent)('edge_workers_build_command_error', {
53
- name,
54
- error: 'build_failed'
55
- });
56
- exit.withError((0, _output.escapeTerminalText)(err.message));
57
- }
58
82
  }
59
- (0, _command.default)({
60
- requiredArgs: 0,
61
- usage
62
- }).option('path', 'Path to the edge-workers project. Defaults to auto-discovery.').option('all', 'Compile every worker in the project.', false).examples(examples).argv(process.argv, edgeWorkersBuildCommand);
83
+ (0, command_1.default)({
84
+ requiredArgs: 0,
85
+ usage,
86
+ })
87
+ .option('path', 'Path to the edge-workers project. Defaults to auto-discovery.')
88
+ .option('all', 'Compile every worker in the project.', false)
89
+ .examples(examples)
90
+ .argv(process.argv, edgeWorkersBuildCommand);
@@ -1,59 +1,91 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
-
4
- exports.__esModule = true;
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
5
40
  exports.edgeWorkersDeleteCommand = edgeWorkersDeleteCommand;
6
- var _edgeWorkers = require("../lib/api/edge-workers");
7
- var _command = _interopRequireDefault(require("../lib/cli/command"));
8
- var exit = _interopRequireWildcard(require("../lib/cli/exit"));
9
- var _confirmation = require("../lib/edge-workers/confirmation");
10
- var _output = require("../lib/edge-workers/output");
11
- var _input = require("../lib/envvar/input");
12
- var _tracker = require("../lib/tracker");
13
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
41
+ const edge_workers_1 = require("../lib/api/edge-workers");
42
+ const command_1 = __importDefault(require("../lib/cli/command"));
43
+ const exit = __importStar(require("../lib/cli/exit"));
44
+ const confirmation_1 = require("../lib/edge-workers/confirmation");
45
+ const output_1 = require("../lib/edge-workers/output");
46
+ const input_1 = require("../lib/envvar/input");
47
+ const tracker_1 = require("../lib/tracker");
15
48
  const usage = 'vip edge-workers delete';
16
- const examples = [{
17
- usage: 'vip @example-app.production edge-workers delete my-worker',
18
- description: 'Permanently delete the deployed worker named "my-worker".'
19
- }];
49
+ const examples = [
50
+ {
51
+ usage: 'vip @example-app.production edge-workers delete my-worker',
52
+ description: 'Permanently delete the deployed worker named "my-worker".',
53
+ },
54
+ ];
20
55
  async function edgeWorkersDeleteCommand(args = [], opt = {}) {
21
- const {
22
- app,
23
- env
24
- } = opt;
25
- const name = args[0];
26
- await (0, _tracker.trackEventWithEnv)(app.id, env.id, 'edge_workers_delete_command_execute', {
27
- name
28
- });
29
- try {
30
- const worker = await (0, _edgeWorkers.findEdgeWorkerByName)(app.id, env.id, name);
31
- if (!worker) {
32
- throw new Error(`No edge worker named "${name}" is deployed to this environment.`);
56
+ const { app, env } = opt;
57
+ const name = args[0];
58
+ await (0, tracker_1.trackEventWithEnv)(app.id, env.id, 'edge_workers_delete_command_execute', { name });
59
+ try {
60
+ const worker = await (0, edge_workers_1.findEdgeWorkerByName)(app.id, env.id, name);
61
+ if (!worker) {
62
+ throw new Error(`No edge worker named "${name}" is deployed to this environment.`);
63
+ }
64
+ await (0, confirmation_1.confirmEdgeWorkerDeletion)({
65
+ appName: app.name,
66
+ envType: env.type,
67
+ workerName: worker.name,
68
+ force: Boolean(opt.force),
69
+ }, input_1.confirm);
70
+ await (0, edge_workers_1.deleteEdgeWorker)(env.id, worker.id);
71
+ await (0, tracker_1.trackEventWithEnv)(app.id, env.id, 'edge_workers_delete_command_success', { name });
72
+ console.log(`✓ Deleted edge worker "${(0, output_1.escapeTerminalText)(name)}".`);
73
+ }
74
+ catch (err) {
75
+ await (0, tracker_1.trackEventWithEnv)(app.id, env.id, 'edge_workers_delete_command_error', {
76
+ name,
77
+ error: 'delete_failed',
78
+ });
79
+ exit.withError(`Failed to delete edge worker: ${(0, output_1.escapeTerminalText)(err.message)}`);
33
80
  }
34
- await (0, _confirmation.confirmEdgeWorkerDeletion)({
35
- appName: app.name,
36
- envType: env.type,
37
- workerName: worker.name,
38
- force: Boolean(opt.force)
39
- }, _input.confirm);
40
- await (0, _edgeWorkers.deleteEdgeWorker)(env.id, worker.id);
41
- await (0, _tracker.trackEventWithEnv)(app.id, env.id, 'edge_workers_delete_command_success', {
42
- name
43
- });
44
- console.log(`✓ Deleted edge worker "${(0, _output.escapeTerminalText)(name)}".`);
45
- } catch (err) {
46
- await (0, _tracker.trackEventWithEnv)(app.id, env.id, 'edge_workers_delete_command_error', {
47
- name,
48
- error: 'delete_failed'
49
- });
50
- exit.withError(`Failed to delete edge worker: ${(0, _output.escapeTerminalText)(err.message)}`);
51
- }
52
81
  }
53
- (0, _command.default)({
54
- appContext: true,
55
- appQuery: _edgeWorkers.appQuery,
56
- envContext: true,
57
- requiredArgs: 1,
58
- usage
59
- }).option('force', 'Skip confirmation.', false).examples(examples).argv(process.argv, edgeWorkersDeleteCommand);
82
+ (0, command_1.default)({
83
+ appContext: true,
84
+ appQuery: edge_workers_1.appQuery,
85
+ envContext: true,
86
+ requiredArgs: 1,
87
+ usage,
88
+ })
89
+ .option('force', 'Skip confirmation.', false)
90
+ .examples(examples)
91
+ .argv(process.argv, edgeWorkersDeleteCommand);
@@ -1,144 +1,204 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
-
4
- exports.__esModule = true;
3
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
+ if (k2 === undefined) k2 = k;
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = { enumerable: true, get: function() { return m[k]; } };
8
+ }
9
+ Object.defineProperty(o, k2, desc);
10
+ }) : (function(o, m, k, k2) {
11
+ if (k2 === undefined) k2 = k;
12
+ o[k2] = m[k];
13
+ }));
14
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
16
+ }) : function(o, v) {
17
+ o["default"] = v;
18
+ });
19
+ var __importStar = (this && this.__importStar) || (function () {
20
+ var ownKeys = function(o) {
21
+ ownKeys = Object.getOwnPropertyNames || function (o) {
22
+ var ar = [];
23
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
24
+ return ar;
25
+ };
26
+ return ownKeys(o);
27
+ };
28
+ return function (mod) {
29
+ if (mod && mod.__esModule) return mod;
30
+ var result = {};
31
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
32
+ __setModuleDefault(result, mod);
33
+ return result;
34
+ };
35
+ })();
36
+ var __importDefault = (this && this.__importDefault) || function (mod) {
37
+ return (mod && mod.__esModule) ? mod : { "default": mod };
38
+ };
39
+ Object.defineProperty(exports, "__esModule", { value: true });
5
40
  exports.edgeWorkersDeployCommand = edgeWorkersDeployCommand;
6
- var _edgeWorkers = require("../lib/api/edge-workers");
7
- var _command = _interopRequireDefault(require("../lib/cli/command"));
8
- var exit = _interopRequireWildcard(require("../lib/cli/exit"));
9
- var _format = require("../lib/cli/format");
10
- var _confirmation = require("../lib/edge-workers/confirmation");
11
- var _deployment = require("../lib/edge-workers/deployment");
12
- var _output = require("../lib/edge-workers/output");
13
- var _project = require("../lib/edge-workers/project");
14
- var _input = require("../lib/envvar/input");
15
- var _tracker = require("../lib/tracker");
16
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
17
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
41
+ const edge_workers_1 = require("../lib/api/edge-workers");
42
+ const command_1 = __importDefault(require("../lib/cli/command"));
43
+ const exit = __importStar(require("../lib/cli/exit"));
44
+ const format_1 = require("../lib/cli/format");
45
+ const confirmation_1 = require("../lib/edge-workers/confirmation");
46
+ const deployment_1 = require("../lib/edge-workers/deployment");
47
+ const output_1 = require("../lib/edge-workers/output");
48
+ const project_1 = require("../lib/edge-workers/project");
49
+ const input_1 = require("../lib/envvar/input");
50
+ const tracker_1 = require("../lib/tracker");
18
51
  const usage = 'vip edge-workers deploy';
19
- const examples = [{
20
- usage: 'vip @example-app.develop edge-workers deploy my-worker',
21
- description: 'Compile and deploy a single worker to the develop environment.'
22
- }, {
23
- usage: 'vip @example-app.develop edge-workers deploy --all',
24
- description: 'Compile and deploy every worker in the project.'
25
- }, {
26
- usage: 'vip @example-app.develop edge-workers deploy my-worker --skip-build',
27
- description: 'Deploy a previously compiled artifact without recompiling.'
28
- }];
52
+ const examples = [
53
+ {
54
+ usage: 'vip @example-app.develop edge-workers deploy my-worker',
55
+ description: 'Compile and deploy a single worker to the develop environment.',
56
+ },
57
+ {
58
+ usage: 'vip @example-app.develop edge-workers deploy --all',
59
+ description: 'Compile and deploy every worker in the project.',
60
+ },
61
+ {
62
+ usage: 'vip @example-app.develop edge-workers deploy my-worker --skip-build',
63
+ description: 'Deploy a previously compiled artifact without recompiling.',
64
+ },
65
+ ];
29
66
  function errorMessage(error) {
30
- return (0, _output.escapeTerminalText)(error instanceof Error ? error.message : String(error));
67
+ return (0, output_1.escapeTerminalText)(error instanceof Error ? error.message : String(error));
31
68
  }
32
69
  function partialFailureMessage(error) {
33
- if (error.stage === 'enable') {
34
- const failedName = (0, _output.escapeTerminalText)(error.failedName);
35
- let activeAfterUpload = 'unknown';
36
- if (error.activeAfterUpload === true) {
37
- activeAfterUpload = 'active';
38
- } else if (error.activeAfterUpload === false) {
39
- activeAfterUpload = 'inactive';
70
+ if (error.stage === 'enable') {
71
+ const failedName = (0, output_1.escapeTerminalText)(error.failedName);
72
+ let activeAfterUpload = 'unknown';
73
+ if (error.activeAfterUpload === true) {
74
+ activeAfterUpload = 'active';
75
+ }
76
+ else if (error.activeAfterUpload === false) {
77
+ activeAfterUpload = 'inactive';
78
+ }
79
+ return (`Deployment uploaded "${failedName}" and its last confirmed state was ${activeAfterUpload}, ` +
80
+ 'but the enable request failed. Final active state is unknown; verify with ' +
81
+ `\`vip edge-workers get ${failedName}\` or \`vip edge-workers list\`. ` +
82
+ `Completed: ${error.appliedNames.map(output_1.escapeTerminalText).join(', ') || 'none'}. ` +
83
+ `Not attempted: ${error.unappliedNames.map(output_1.escapeTerminalText).join(', ') || 'none'}. Cause: ${errorMessage(error.cause)}`);
40
84
  }
41
- return `Deployment uploaded "${failedName}" and its last confirmed state was ${activeAfterUpload}, ` + 'but the enable request failed. Final active state is unknown; verify with ' + `\`vip edge-workers get ${failedName}\` or \`vip edge-workers list\`. ` + `Completed: ${error.appliedNames.map(_output.escapeTerminalText).join(', ') || 'none'}. ` + `Not attempted: ${error.unappliedNames.map(_output.escapeTerminalText).join(', ') || 'none'}. Cause: ${errorMessage(error.cause)}`;
42
- }
43
- return `Deployment stopped at "${(0, _output.escapeTerminalText)(error.failedName)}". ` + `Applied: ${error.appliedNames.map(_output.escapeTerminalText).join(', ') || 'none'}. ` + `Not applied: ${error.unappliedNames.map(_output.escapeTerminalText).join(', ') || 'none'}. ` + `Cause: ${errorMessage(error.cause)}`;
85
+ return (`Deployment stopped at "${(0, output_1.escapeTerminalText)(error.failedName)}". ` +
86
+ `Applied: ${error.appliedNames.map(output_1.escapeTerminalText).join(', ') || 'none'}. ` +
87
+ `Not applied: ${error.unappliedNames.map(output_1.escapeTerminalText).join(', ') || 'none'}. ` +
88
+ `Cause: ${errorMessage(error.cause)}`);
44
89
  }
45
90
  function appliedResultMessage(item, deployed) {
46
- const name = (0, _output.escapeTerminalText)(item.worker.manifest.name);
47
- let result;
48
- if (item.action === 'create') {
49
- result = deployed.active ? `created "${name}" and enabled it` : `created "${name}"; inactive`;
50
- } else if (deployed.active) {
51
- result = item.existing?.active ? `updated "${name}"; remains active` : `updated "${name}" and enabled it`;
52
- } else {
53
- result = `updated "${name}"; remains inactive`;
54
- }
55
- const phasesNote = `, phases: ${deployed.phases.map(_output.escapeTerminalText).join(', ') || 'none'}`;
56
- return `✓ ${result} (${item.artifact.sizeBytes} bytes${phasesNote})`;
91
+ const name = (0, output_1.escapeTerminalText)(item.worker.manifest.name);
92
+ let result;
93
+ if (item.action === 'create') {
94
+ result = deployed.active
95
+ ? `created "${name}" and enabled it`
96
+ : `created "${name}"; inactive`;
97
+ }
98
+ else if (deployed.active) {
99
+ result = item.existing?.active
100
+ ? `updated "${name}"; remains active`
101
+ : `updated "${name}" and enabled it`;
102
+ }
103
+ else {
104
+ result = `updated "${name}"; remains inactive`;
105
+ }
106
+ const phasesNote = `, phases: ${deployed.phases.map(output_1.escapeTerminalText).join(', ') || 'none'}`;
107
+ return `✓ ${result} (${item.artifact.sizeBytes} bytes${phasesNote})`;
57
108
  }
58
109
  function inactiveCreateGuidance(workerNames) {
59
- const names = workerNames.map(name => `"${(0, _output.escapeTerminalText)(name)}"`).join(', ');
60
- if (workerNames.length === 1) {
61
- return `Review created inactive edge worker ${names}, then run \`vip edge-workers enable <name>\` when ready.`;
62
- }
63
- return `Review created inactive edge workers ${names}, then run \`vip edge-workers enable <name>\` for each one when ready.`;
110
+ const names = workerNames.map(name => `"${(0, output_1.escapeTerminalText)(name)}"`).join(', ');
111
+ if (workerNames.length === 1) {
112
+ return `Review created inactive edge worker ${names}, then run \`vip edge-workers enable <name>\` when ready.`;
113
+ }
114
+ return `Review created inactive edge workers ${names}, then run \`vip edge-workers enable <name>\` for each one when ready.`;
64
115
  }
65
116
  async function edgeWorkersDeployCommand(args = [], opt = {}) {
66
- const {
67
- app,
68
- env
69
- } = opt;
70
- const name = args[0];
71
- const enableAfterDeploy = Boolean(opt.enable);
72
- await (0, _tracker.trackEventWithEnv)(app.id, env.id, 'edge_workers_deploy_command_execute', {
73
- name,
74
- all: Boolean(opt.all)
75
- });
76
- try {
77
- if (name && opt.all) {
78
- throw new Error('Supply either a worker name or --all, not both.');
79
- }
80
- const projectDir = (0, _project.resolveProjectDir)({
81
- path: opt.path
117
+ const { app, env } = opt;
118
+ const name = args[0];
119
+ const enableAfterDeploy = Boolean(opt.enable);
120
+ await (0, tracker_1.trackEventWithEnv)(app.id, env.id, 'edge_workers_deploy_command_execute', {
121
+ name,
122
+ all: Boolean(opt.all),
82
123
  });
83
- let workers;
84
- if (opt.all) {
85
- workers = (0, _project.discoverWorkers)(projectDir);
86
- if (!workers.length) {
87
- throw new Error('No workers found in this project.');
88
- }
89
- } else if (name) {
90
- workers = [(0, _project.findWorker)(projectDir, name)];
91
- } else {
92
- throw new Error('Please supply a worker name to deploy, or pass `--all`.');
124
+ try {
125
+ if (name && opt.all) {
126
+ throw new Error('Supply either a worker name or --all, not both.');
127
+ }
128
+ const projectDir = (0, project_1.resolveProjectDir)({ path: opt.path });
129
+ let workers;
130
+ if (opt.all) {
131
+ workers = (0, project_1.discoverWorkers)(projectDir);
132
+ if (!workers.length) {
133
+ throw new Error('No workers found in this project.');
134
+ }
135
+ }
136
+ else if (name) {
137
+ workers = [(0, project_1.findWorker)(projectDir, name)];
138
+ }
139
+ else {
140
+ throw new Error('Please supply a worker name to deploy, or pass `--all`.');
141
+ }
142
+ const plan = await (0, deployment_1.prepareEdgeWorkerDeploymentPlan)({
143
+ appId: app.id,
144
+ envId: env.id,
145
+ projectDir,
146
+ workers,
147
+ skipBuild: Boolean(opt.skipBuild),
148
+ skipValidate: Boolean(opt.skipValidate),
149
+ skipSource: Boolean(opt.skipSource),
150
+ enableAfterDeploy,
151
+ });
152
+ console.log((0, format_1.formatData)((0, deployment_1.deploymentPlanRows)(plan), 'table'));
153
+ await (0, confirmation_1.confirmProductionEdgeWorkerMutation)({
154
+ action: 'deploy',
155
+ appName: app.name,
156
+ envType: env.type,
157
+ workerNames: plan.map(item => item.worker.manifest.name),
158
+ enableAfterDeploy,
159
+ skipConfirmation: Boolean(opt.skipConfirmation),
160
+ nonInteractive: !(0, confirmation_1.isInteractiveEdgeWorkers)(opt),
161
+ }, input_1.confirm);
162
+ const finalResults = [];
163
+ const createdInactiveNames = [];
164
+ await (0, deployment_1.applyEdgeWorkerDeploymentPlan)(env.id, plan, (item, deployed) => {
165
+ finalResults.push(deployed);
166
+ if (!enableAfterDeploy && item.action === 'create' && !deployed.active) {
167
+ createdInactiveNames.push(item.worker.manifest.name);
168
+ }
169
+ console.log(appliedResultMessage(item, deployed));
170
+ });
171
+ if (createdInactiveNames.length) {
172
+ console.log(inactiveCreateGuidance(createdInactiveNames));
173
+ }
174
+ await (0, tracker_1.trackEventWithEnv)(app.id, env.id, 'edge_workers_deploy_command_success', {
175
+ count: plan.length,
176
+ enable: enableAfterDeploy,
177
+ activeCount: finalResults.filter(worker => worker.active).length,
178
+ });
93
179
  }
94
- const plan = await (0, _deployment.prepareEdgeWorkerDeploymentPlan)({
95
- appId: app.id,
96
- envId: env.id,
97
- projectDir,
98
- workers,
99
- skipBuild: Boolean(opt.skipBuild),
100
- skipValidate: Boolean(opt.skipValidate),
101
- skipSource: Boolean(opt.skipSource),
102
- enableAfterDeploy
103
- });
104
- console.log((0, _format.formatData)((0, _deployment.deploymentPlanRows)(plan), 'table'));
105
- await (0, _confirmation.confirmProductionEdgeWorkerMutation)({
106
- action: 'deploy',
107
- appName: app.name,
108
- envType: env.type,
109
- workerNames: plan.map(item => item.worker.manifest.name),
110
- enableAfterDeploy,
111
- skipConfirmation: Boolean(opt.skipConfirmation),
112
- nonInteractive: !(0, _confirmation.isInteractiveEdgeWorkers)(opt)
113
- }, _input.confirm);
114
- const finalResults = [];
115
- const createdInactiveNames = [];
116
- await (0, _deployment.applyEdgeWorkerDeploymentPlan)(env.id, plan, (item, deployed) => {
117
- finalResults.push(deployed);
118
- if (!enableAfterDeploy && item.action === 'create' && !deployed.active) {
119
- createdInactiveNames.push(item.worker.manifest.name);
120
- }
121
- console.log(appliedResultMessage(item, deployed));
122
- });
123
- if (createdInactiveNames.length) {
124
- console.log(inactiveCreateGuidance(createdInactiveNames));
180
+ catch (err) {
181
+ await (0, tracker_1.trackEventWithEnv)(app.id, env.id, 'edge_workers_deploy_command_error', {
182
+ name,
183
+ error: 'deploy_failed',
184
+ });
185
+ exit.withError(err instanceof deployment_1.DeploymentApplyError
186
+ ? partialFailureMessage(err)
187
+ : `Failed to deploy edge worker: ${errorMessage(err)}`);
125
188
  }
126
- await (0, _tracker.trackEventWithEnv)(app.id, env.id, 'edge_workers_deploy_command_success', {
127
- count: plan.length,
128
- enable: enableAfterDeploy,
129
- activeCount: finalResults.filter(worker => worker.active).length
130
- });
131
- } catch (err) {
132
- await (0, _tracker.trackEventWithEnv)(app.id, env.id, 'edge_workers_deploy_command_error', {
133
- name,
134
- error: 'deploy_failed'
135
- });
136
- exit.withError(err instanceof _deployment.DeploymentApplyError ? partialFailureMessage(err) : `Failed to deploy edge worker: ${errorMessage(err)}`);
137
- }
138
189
  }
139
- (0, _command.default)({
140
- appContext: true,
141
- appQuery: _edgeWorkers.appQuery,
142
- envContext: true,
143
- usage
144
- }).option('path', 'Path to the edge-workers project. Defaults to auto-discovery.').option('all', 'Deploy every worker in the project.', false).option('skip-build', 'Deploy a previously compiled artifact without recompiling.', false).option('skip-validate', 'Skip server-side dry-run validation before uploading.', false).option('skip-source', 'Do not store source on create; preserve stored source on update.', false).option('enable', 'Enable each deployed worker after a successful upload.', false).option('skip-confirmation', 'Skip the production deployment confirmation.', false).examples(examples).argv(process.argv, edgeWorkersDeployCommand);
190
+ (0, command_1.default)({
191
+ appContext: true,
192
+ appQuery: edge_workers_1.appQuery,
193
+ envContext: true,
194
+ usage,
195
+ })
196
+ .option('path', 'Path to the edge-workers project. Defaults to auto-discovery.')
197
+ .option('all', 'Deploy every worker in the project.', false)
198
+ .option('skip-build', 'Deploy a previously compiled artifact without recompiling.', false)
199
+ .option('skip-validate', 'Skip server-side dry-run validation before uploading.', false)
200
+ .option('skip-source', 'Do not store source on create; preserve stored source on update.', false)
201
+ .option('enable', 'Enable each deployed worker after a successful upload.', false)
202
+ .option('skip-confirmation', 'Skip the production deployment confirmation.', false)
203
+ .examples(examples)
204
+ .argv(process.argv, edgeWorkersDeployCommand);