@geekmidas/cli 10.0.0-alpha.85 → 10.0.0-alpha.86

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 (175) hide show
  1. package/dist/{HostingerProvider-dxkwynSs.cjs → HostingerProvider-BCB1QJj1.cjs} +2 -2
  2. package/dist/{HostingerProvider-dxkwynSs.cjs.map → HostingerProvider-BCB1QJj1.cjs.map} +1 -1
  3. package/dist/{HostingerProvider-D85ayzTi.mjs → HostingerProvider-CVc3rLPB.mjs} +2 -2
  4. package/dist/{HostingerProvider-D85ayzTi.mjs.map → HostingerProvider-CVc3rLPB.mjs.map} +1 -1
  5. package/dist/{LegacyStateStore-CJ2o18nT.mjs → LegacyStateStore-B0R4LlX_.mjs} +2 -2
  6. package/dist/{LegacyStateStore-CJ2o18nT.mjs.map → LegacyStateStore-B0R4LlX_.mjs.map} +1 -1
  7. package/dist/{LegacyStateStore-xGxPwP-m.cjs → LegacyStateStore-CWG_HVC0.cjs} +7 -7
  8. package/dist/{LegacyStateStore-xGxPwP-m.cjs.map → LegacyStateStore-CWG_HVC0.cjs.map} +1 -1
  9. package/dist/{LocalStateStore-CkjFD-4b.cjs → LocalStateStore-CLwa2DpK.cjs} +8 -8
  10. package/dist/{LocalStateStore-CkjFD-4b.cjs.map → LocalStateStore-CLwa2DpK.cjs.map} +1 -1
  11. package/dist/{LocalStateStore-ByVjUIvS.mjs → LocalStateStore-Q4vXg2ua.mjs} +2 -2
  12. package/dist/{LocalStateStore-ByVjUIvS.mjs.map → LocalStateStore-Q4vXg2ua.mjs.map} +1 -1
  13. package/dist/{S3StateStore-iqMezbES.cjs → S3StateStore-Cea9_5gF.cjs} +5 -5
  14. package/dist/{S3StateStore-iqMezbES.cjs.map → S3StateStore-Cea9_5gF.cjs.map} +1 -1
  15. package/dist/{S3StateStore-kpFlGVLE.mjs → S3StateStore-CksKYKRa.mjs} +2 -2
  16. package/dist/{S3StateStore-kpFlGVLE.mjs.map → S3StateStore-CksKYKRa.mjs.map} +1 -1
  17. package/dist/{SSMStateStore-Bkz5ztfo.mjs → SSMStateStore-BszSCAS2.mjs} +2 -2
  18. package/dist/{SSMStateStore-Bkz5ztfo.mjs.map → SSMStateStore-BszSCAS2.mjs.map} +1 -1
  19. package/dist/{SSMStateStore-Z2OMVCtq.cjs → SSMStateStore-aBOTF018.cjs} +9 -9
  20. package/dist/{SSMStateStore-Z2OMVCtq.cjs.map → SSMStateStore-aBOTF018.cjs.map} +1 -1
  21. package/dist/{add-CM7RLj89.cjs → add-5MZAXybv.cjs} +8 -5
  22. package/dist/add-5MZAXybv.cjs.map +1 -0
  23. package/dist/{add-jpX7M8RB.mjs → add-D_jNqnfZ.mjs} +8 -5
  24. package/dist/add-D_jNqnfZ.mjs.map +1 -0
  25. package/dist/{bundler-lEBH8ENP.cjs → bundler-1REMhKps.cjs} +5 -5
  26. package/dist/{bundler-lEBH8ENP.cjs.map → bundler-1REMhKps.cjs.map} +1 -1
  27. package/dist/{bundler-CaAKsbcN.mjs → bundler-BMo-JP5s.mjs} +5 -5
  28. package/dist/{bundler-CaAKsbcN.mjs.map → bundler-BMo-JP5s.mjs.map} +1 -1
  29. package/dist/{cli-BV3jzbk0.mjs → cli-7edNFwGk.mjs} +5 -13
  30. package/dist/cli-7edNFwGk.mjs.map +1 -0
  31. package/dist/{cli-DQCBcNlN.cjs → cli-BL8ZHsLQ.cjs} +5 -13
  32. package/dist/cli-BL8ZHsLQ.cjs.map +1 -0
  33. package/dist/{compose-CQK6StuE.mjs → compose-DbJhRQlh.mjs} +24 -11
  34. package/dist/compose-DbJhRQlh.mjs.map +1 -0
  35. package/dist/{compose-CSR0yEJm.cjs → compose-xw86kVYi.cjs} +34 -21
  36. package/dist/compose-xw86kVYi.cjs.map +1 -0
  37. package/dist/{config-BzIfP8a-.d.cts → config-CpjsVxru.d.cts} +3 -3
  38. package/dist/{config-BzIfP8a-.d.cts.map → config-CpjsVxru.d.cts.map} +1 -1
  39. package/dist/{config-DhdzmndX.d.mts → config-DrCAyoH5.d.mts} +3 -3
  40. package/dist/{config-DhdzmndX.d.mts.map → config-DrCAyoH5.d.mts.map} +1 -1
  41. package/dist/config.cjs +1 -1
  42. package/dist/config.d.cts +3 -3
  43. package/dist/config.d.mts +3 -3
  44. package/dist/config.mjs +1 -1
  45. package/dist/{credentials-pAtB70k3.mjs → credentials-BgJ5mS_d.mjs} +91 -181
  46. package/dist/credentials-BgJ5mS_d.mjs.map +1 -0
  47. package/dist/{credentials-BVs7mrtw.cjs → credentials-tr26-KML.cjs} +122 -188
  48. package/dist/credentials-tr26-KML.cjs.map +1 -0
  49. package/dist/deploy/public.cjs +24 -20
  50. package/dist/deploy/public.cjs.map +1 -1
  51. package/dist/deploy/public.d.cts +95 -13
  52. package/dist/deploy/public.d.cts.map +1 -1
  53. package/dist/deploy/public.d.mts +95 -13
  54. package/dist/deploy/public.d.mts.map +1 -1
  55. package/dist/deploy/public.mjs +11 -10
  56. package/dist/deploy/public.mjs.map +1 -1
  57. package/dist/{deploy-BuU117CA.mjs → deploy-BTfmXd3g.mjs} +9 -9
  58. package/dist/deploy-BTfmXd3g.mjs.map +1 -0
  59. package/dist/{deploy-Bw2Mm3x3.cjs → deploy-CtbZj4zN.cjs} +13 -13
  60. package/dist/deploy-CtbZj4zN.cjs.map +1 -0
  61. package/dist/{dokploy-C81J1MVK.cjs → dokploy-TGk3oPwr.cjs} +2 -2
  62. package/dist/{dokploy-C81J1MVK.cjs.map → dokploy-TGk3oPwr.cjs.map} +1 -1
  63. package/dist/{dokploy-DWALWk7u.mjs → dokploy-r69yZaIt.mjs} +2 -2
  64. package/dist/{dokploy-DWALWk7u.mjs.map → dokploy-r69yZaIt.mjs.map} +1 -1
  65. package/dist/{encryption-DpAum8W7.mjs → encryption-C-8Tt5Hh.mjs} +3 -3
  66. package/dist/{encryption-DpAum8W7.mjs.map → encryption-C-8Tt5Hh.mjs.map} +1 -1
  67. package/dist/{encryption-B8h8Tna0.cjs → encryption-CDn7BH5O.cjs} +3 -3
  68. package/dist/{encryption-B8h8Tna0.cjs.map → encryption-CDn7BH5O.cjs.map} +1 -1
  69. package/dist/{engine-B01fjhLt.cjs → engine-Bt5k_UMq.cjs} +33 -23
  70. package/dist/engine-Bt5k_UMq.cjs.map +1 -0
  71. package/dist/{engine-BXCtEhSH.mjs → engine-jAINgiOB.mjs} +28 -18
  72. package/dist/engine-jAINgiOB.mjs.map +1 -0
  73. package/dist/{github-8B68qrLs.mjs → github-CZHAtwPT.mjs} +3 -3
  74. package/dist/{github-8B68qrLs.mjs.map → github-CZHAtwPT.mjs.map} +1 -1
  75. package/dist/{github-Cis9tYur.cjs → github-DFhuJQlp.cjs} +3 -3
  76. package/dist/{github-Cis9tYur.cjs.map → github-DFhuJQlp.cjs.map} +1 -1
  77. package/dist/{index-f77HdqN5.d.mts → index-MnUJuUlj.d.mts} +2 -2
  78. package/dist/{index-D1ODeM9s.d.cts.map → index-MnUJuUlj.d.mts.map} +1 -1
  79. package/dist/{index-D1ODeM9s.d.cts → index-elsLJTUv.d.cts} +2 -2
  80. package/dist/{index-f77HdqN5.d.mts.map → index-elsLJTUv.d.cts.map} +1 -1
  81. package/dist/index.cjs +105 -67
  82. package/dist/index.cjs.map +1 -1
  83. package/dist/index.mjs +99 -61
  84. package/dist/index.mjs.map +1 -1
  85. package/dist/local-Ciq-bTPr.mjs +224 -0
  86. package/dist/local-Ciq-bTPr.mjs.map +1 -0
  87. package/dist/local-Cq8qdgNX.cjs +241 -0
  88. package/dist/local-Cq8qdgNX.cjs.map +1 -0
  89. package/dist/{migrate-CPWn7A51.cjs → migrate-B16qgYTn.cjs} +3 -3
  90. package/dist/{migrate-CPWn7A51.cjs.map → migrate-B16qgYTn.cjs.map} +1 -1
  91. package/dist/{migrate-BBCp5blp.cjs → migrate-B1rVlwj1.cjs} +3 -3
  92. package/dist/{migrate-BBCp5blp.cjs.map → migrate-B1rVlwj1.cjs.map} +1 -1
  93. package/dist/{migrate-sDq7NApJ.mjs → migrate-Dn7nK6sh.mjs} +3 -3
  94. package/dist/{migrate-sDq7NApJ.mjs.map → migrate-Dn7nK6sh.mjs.map} +1 -1
  95. package/dist/{migrate-BeTWLSeC.mjs → migrate-ggkPVJRC.mjs} +3 -3
  96. package/dist/{migrate-BeTWLSeC.mjs.map → migrate-ggkPVJRC.mjs.map} +1 -1
  97. package/dist/openapi.cjs +1 -1
  98. package/dist/openapi.d.cts +1 -1
  99. package/dist/openapi.d.mts +1 -1
  100. package/dist/openapi.mjs +1 -1
  101. package/dist/reconcile/public.d.cts +1 -1
  102. package/dist/reconcile/public.d.mts +1 -1
  103. package/dist/{resolve-CXbwJ_iu.mjs → resolve-BSke45k6.mjs} +4 -4
  104. package/dist/{resolve-CXbwJ_iu.mjs.map → resolve-BSke45k6.mjs.map} +1 -1
  105. package/dist/{resolve-CztIqBOI.cjs → resolve-BXeXzpmU.cjs} +4 -4
  106. package/dist/{resolve-CztIqBOI.cjs.map → resolve-BXeXzpmU.cjs.map} +1 -1
  107. package/dist/{rollback-ByyFE5lV.mjs → rollback-CEE6dse4.mjs} +6 -6
  108. package/dist/{rollback-ByyFE5lV.mjs.map → rollback-CEE6dse4.mjs.map} +1 -1
  109. package/dist/{rollback-CyIJ4xGJ.cjs → rollback-DFMiBWf0.cjs} +8 -8
  110. package/dist/{rollback-CyIJ4xGJ.cjs.map → rollback-DFMiBWf0.cjs.map} +1 -1
  111. package/dist/{runtime-CNu2C2hB.d.mts → runtime-D48ZKk8_.d.cts} +2 -2
  112. package/dist/{runtime-CNu2C2hB.d.mts.map → runtime-D48ZKk8_.d.cts.map} +1 -1
  113. package/dist/{runtime-DMLgL26v.d.cts → runtime-HabiNBtJ.d.mts} +2 -2
  114. package/dist/{runtime-DMLgL26v.d.cts.map → runtime-HabiNBtJ.d.mts.map} +1 -1
  115. package/dist/{seeds-9C5CkDon.mjs → seeds-BYdrtZsC.mjs} +1525 -53
  116. package/dist/seeds-BYdrtZsC.mjs.map +1 -0
  117. package/dist/{seeds-B_Beuv0o.cjs → seeds-CsI0A_Ef.cjs} +1628 -65
  118. package/dist/seeds-CsI0A_Ef.cjs.map +1 -0
  119. package/dist/{sniffer-DgBkaLAu.mjs → sniffer-B0EU73bj.mjs} +5 -360
  120. package/dist/sniffer-B0EU73bj.mjs.map +1 -0
  121. package/dist/{sniffer-3fA0iExx.cjs → sniffer-DJYupBeK.cjs} +4 -413
  122. package/dist/sniffer-DJYupBeK.cjs.map +1 -0
  123. package/dist/{sst-DRi3H5TB.mjs → sst-D1Qj4sIs.mjs} +3 -3
  124. package/dist/{sst-DRi3H5TB.mjs.map → sst-D1Qj4sIs.mjs.map} +1 -1
  125. package/dist/{sst-hBrKouBy.cjs → sst-DAqUoZKG.cjs} +5 -5
  126. package/dist/{sst-hBrKouBy.cjs.map → sst-DAqUoZKG.cjs.map} +1 -1
  127. package/dist/{stages-CS1sjcRb.cjs → stages-Brn3vcdy.cjs} +2 -2
  128. package/dist/{stages-CS1sjcRb.cjs.map → stages-Brn3vcdy.cjs.map} +1 -1
  129. package/dist/{stages-CSXt7N2b.mjs → stages-DoHHz6pS.mjs} +2 -2
  130. package/dist/{stages-CSXt7N2b.mjs.map → stages-DoHHz6pS.mjs.map} +1 -1
  131. package/dist/target/public.cjs +1 -1
  132. package/dist/target/public.d.cts +2 -2
  133. package/dist/target/public.d.mts +2 -2
  134. package/dist/target/public.mjs +1 -1
  135. package/dist/{terminal-BdvrmkaC.mjs → terminal-BTbZlrFV.mjs} +2 -2
  136. package/dist/{terminal-BdvrmkaC.mjs.map → terminal-BTbZlrFV.mjs.map} +1 -1
  137. package/dist/{terminal-BL5E0xbR.cjs → terminal-COv23heb.cjs} +2 -2
  138. package/dist/{terminal-BL5E0xbR.cjs.map → terminal-COv23heb.cjs.map} +1 -1
  139. package/dist/{types-BZn-8ssD.d.mts → types-0oAyFOfR.d.cts} +48 -49
  140. package/dist/types-0oAyFOfR.d.cts.map +1 -0
  141. package/dist/{types-DiZj6hqp.d.cts → types-BZ01tZs-.d.mts} +47 -50
  142. package/dist/types-BZ01tZs-.d.mts.map +1 -0
  143. package/dist/workspace/index.cjs +1 -1
  144. package/dist/workspace/index.d.cts +2 -2
  145. package/dist/workspace/index.d.mts +2 -2
  146. package/dist/workspace/index.mjs +1 -1
  147. package/dist/{workspace-Bic_R3tz.cjs → workspace-CT0JM3Y8.cjs} +333 -1
  148. package/dist/workspace-CT0JM3Y8.cjs.map +1 -0
  149. package/dist/{workspace-Drz4jsvy.mjs → workspace-D2CYLMCW.mjs} +250 -2
  150. package/dist/workspace-D2CYLMCW.mjs.map +1 -0
  151. package/package.json +15 -15
  152. package/dist/add-CM7RLj89.cjs.map +0 -1
  153. package/dist/add-jpX7M8RB.mjs.map +0 -1
  154. package/dist/cli-BV3jzbk0.mjs.map +0 -1
  155. package/dist/cli-DQCBcNlN.cjs.map +0 -1
  156. package/dist/compose-CQK6StuE.mjs.map +0 -1
  157. package/dist/compose-CSR0yEJm.cjs.map +0 -1
  158. package/dist/credentials-BVs7mrtw.cjs.map +0 -1
  159. package/dist/credentials-pAtB70k3.mjs.map +0 -1
  160. package/dist/deploy-BuU117CA.mjs.map +0 -1
  161. package/dist/deploy-Bw2Mm3x3.cjs.map +0 -1
  162. package/dist/engine-B01fjhLt.cjs.map +0 -1
  163. package/dist/engine-BXCtEhSH.mjs.map +0 -1
  164. package/dist/run-BJLIerMM.mjs +0 -133
  165. package/dist/run-BJLIerMM.mjs.map +0 -1
  166. package/dist/run-fVZ-rLnc.cjs +0 -174
  167. package/dist/run-fVZ-rLnc.cjs.map +0 -1
  168. package/dist/seeds-9C5CkDon.mjs.map +0 -1
  169. package/dist/seeds-B_Beuv0o.cjs.map +0 -1
  170. package/dist/sniffer-3fA0iExx.cjs.map +0 -1
  171. package/dist/sniffer-DgBkaLAu.mjs.map +0 -1
  172. package/dist/types-BZn-8ssD.d.mts.map +0 -1
  173. package/dist/types-DiZj6hqp.d.cts.map +0 -1
  174. package/dist/workspace-Bic_R3tz.cjs.map +0 -1
  175. package/dist/workspace-Drz4jsvy.mjs.map +0 -1
package/dist/index.mjs CHANGED
@@ -1,23 +1,23 @@
1
1
  #!/usr/bin/env -S npx tsx
2
2
  import { n as __require, t as __exportAll } from "./rolldown-runtime-BhDjJH2R.mjs";
3
- import { r as DEFAULT_TIMEOUT_MS, t as CommandFailed } from "./run-BJLIerMM.mjs";
4
- import { c as getDokployCredentials, f as removeDokployCredentials, i as LocalSandbox, l as getDokployRegistryId, m as storeHostingerToken, p as storeDokployCredentials, s as getCredentialsPath, u as getDokployToken } from "./credentials-pAtB70k3.mjs";
3
+ import { d as getDokployRegistryId, f as getDokployToken, g as storeHostingerToken, h as storeDokployCredentials, i as CommandFailed, l as getCredentialsPath, m as removeDokployCredentials, o as DEFAULT_TIMEOUT_MS, u as getDokployCredentials } from "./credentials-BgJ5mS_d.mjs";
5
4
  import { l as withOwningTsconfigJsx, r as discover, u as ConstructGenerator } from "./discover-BPelzeGW.mjs";
6
5
  import { t as appKey } from "./derive-B4vDpzgP.mjs";
7
- import { I as stageSampleRate, M as deployedProblems, N as stageProblems, O as InvalidStages, c as getAppBuildOrder, k as TEST_STAGE, l as getAppGkmConfig, r as allConstructGlobs } from "./workspace-Drz4jsvy.mjs";
6
+ import { I as stageSampleRate, M as deployedProblems, N as stageProblems, O as InvalidStages, c as getAppBuildOrder, k as TEST_STAGE, l as getAppGkmConfig, r as allConstructGlobs } from "./workspace-D2CYLMCW.mjs";
8
7
  import { ConfigNotFound, NotABackendApp, NotInAnApp, loadAppConfig, loadConfig, loadWorkspaceConfig, loadWorkspaceSettings, parseModuleConfig } from "./config.mjs";
9
- import { $t as describeServices, An as maskPassword, B as WorkerGenerator, F as parseDevServices, Ft as cacheBackendFor, G as FAKE_ENV, H as workerEntryDir, Ht as TELEMETRY_CONTAINER, It as eventsBackendFor, J as derivedContainers, Jt as scopeTelemetryEnv, K as backendsOf$1, Kt as appTelemetry, Lt as providerOf, Mn as toEmbeddableSecrets, Nn as withCustomSecret, Nt as imageBuildCredentials, Pn as LOCAL_LOGS_EMAIL, Pt as isImageBuild, Sn as deployIdentity, U as QueueGenerator, V as workerBundleName, W as CronGenerator, Xt as telemetryOf, Y as reconcileWorkspace, Yt as surfaceClientTraced, _n as getKeyPath, an as createEntryWrapper, bt as pgClient, cn as loadEnvFiles, ct as LOCAL_CA_PATH, dn as prepareEntryCredentials, en as fakeKey, et as readLocalCredentials, gn as FileSecretsStore, gt as quoteIdentifier, in as createCredentialsPreload, ln as loadPortState, lt as forgetState, mt as postgresDatabaseNames, nn as portsOf, on as findAvailablePort, pn as secretsStoreFor, q as constructGlobs, rn as primaryPortKey, sn as isPortAvailable, un as loadSecretsForApp, x as dockerCommand, yn as projectKey, z as workerUnits, zt as CLUSTER_DATABASE } from "./seeds-9C5CkDon.mjs";
8
+ import { Cn as loadEnvFiles, Ct as LOCAL_CA_PATH, D as dockerCommand, En as prepareEntryCredentials, Ft as pgClient, Gn as maskPassword, Jn as withCustomSecret, Jt as imageBuildCredentials, K as assertDevServicesFlag, Ln as deployIdentity, Mn as getKeyPath, On as secretsStoreFor, Pn as projectKey, Qt as providerOf, S as provisionCommand, Sn as isPortAvailable, Tn as loadSecretsForApp, Xt as cacheBackendFor, Yn as LOCAL_LOGS_EMAIL, Yt as isImageBuild, Zt as eventsBackendFor, _n as portsOf, a as provisionStage, at as CronGenerator, bn as createEntryWrapper, ct as constructGlobs, dn as telemetryOf, en as CLUSTER_DATABASE, et as workerUnits, hn as fakeKey, ht as readLocalCredentials, it as QueueGenerator, jn as FileSecretsStore, jt as quoteIdentifier, kt as postgresDatabaseNames, ln as scopeTelemetryEnv, lt as derivedContainers, mn as describeServices, nt as workerBundleName, ot as FAKE_ENV, qn as toEmbeddableSecrets, rn as TELEMETRY_CONTAINER, rt as workerEntryDir, sn as appTelemetry, st as backendsOf$1, tt as WorkerGenerator, un as surfaceClientTraced, ut as reconcileWorkspace, vn as primaryPortKey, wn as loadPortState, wt as forgetState, xn as findAvailablePort, yn as createCredentialsPreload, z as createStateStore } from "./seeds-BYdrtZsC.mjs";
10
9
  import { c as startTelemetryCode, l as telemetryFor, n as runtimeFor, o as mountRequestSpansCode, r as parseTelemetryFlag, s as routeTelemetry, t as EndpointGenerator, u as writeTelemetryModule } from "./EndpointGenerator-CVc6Oi1Y.mjs";
11
10
  import { generateOpenApi, openapiCommand, resolveOpenApiConfig } from "./openapi.mjs";
12
11
  import { s as isCacheBackend, t as SubscriberGenerator } from "./SubscriberGenerator-BPqQf8fB.mjs";
13
12
  import { a as describeHolder, i as assignAppPorts, o as holderOf, r as appTag, s as withAppPorts, t as APP_TAG_ENV } from "./appPorts-C9z9Pzn9.mjs";
14
13
  import { n as driversFor, r as eventsBackendsIn, t as cacheBackendsIn } from "./drivers-DTZzxeIl.mjs";
15
14
  import { n as withCompute, r as withRoutes, t as manifestModule } from "./emit-C1e8qD08.mjs";
16
- import { g as createStateStore, n as sniffAppEnvironment, o as DokployApi, x as keyFingerprint } from "./sniffer-DgBkaLAu.mjs";
17
- import { t as deploy$1 } from "./deploy-BuU117CA.mjs";
18
- import { a as stackOverrideFile, c as parseDigests, d as removeEdgeRoutes, f as EDGE_PROJECT, i as ComposePushNeedsBuild, l as pinnedRef, o as composeProject, p as dockerCompose, r as ComposePinNeedsPull, s as stackDir, t as composeTarget, u as edgeDir } from "./compose-CQK6StuE.mjs";
15
+ import { t as LocalSandbox } from "./local-Ciq-bTPr.mjs";
16
+ import { f as keyFingerprint, n as sniffAppEnvironment, o as DokployApi } from "./sniffer-B0EU73bj.mjs";
17
+ import { t as deploy$1 } from "./deploy-BTfmXd3g.mjs";
18
+ import { a as stackOverrideFile, c as parseDigests, d as removeEdgeRoutes, f as EDGE_PROJECT, i as ComposePushNeedsBuild, l as pinnedRef, o as composeProject, p as dockerCompose, r as ComposePinNeedsPull, s as stackDir, t as composeTarget, u as edgeDir } from "./compose-DbJhRQlh.mjs";
19
19
  import { o as loadCredentialSchemas, t as CredentialsInvalid } from "./credentialSchemas-BJqRJNK4.mjs";
20
- import { t as LocalStateStore } from "./LocalStateStore-ByVjUIvS.mjs";
20
+ import { t as LocalStateStore } from "./LocalStateStore-Q4vXg2ua.mjs";
21
21
  import { a as getExecCommand, c as validateProjectName, i as findWorkspaceRoot, n as detectPackageManager$1, o as getInstallCommand, r as findWorkspacePackages, s as getRunCommand, t as checkDirectoryExists } from "./utils-D_fxUqvU.mjs";
22
22
  import { a as writeTestHarness, i as TEST_MANIFEST_ENV, n as TEST_READY_FILE, t as TEST_READY_ENV } from "./ready-b6vm0-W-.mjs";
23
23
  import { createRequire } from "node:module";
@@ -47,7 +47,7 @@ import crypto from "crypto";
47
47
  import { Function } from "@geekmidas/constructs/functions";
48
48
  import { Topic } from "@geekmidas/constructs/topic";
49
49
  //#region package.json
50
- var version = "10.0.0-alpha.85";
50
+ var version = "10.0.0-alpha.86";
51
51
  //#endregion
52
52
  //#region src/prompt.ts
53
53
  /**
@@ -130,7 +130,7 @@ const logger$8 = console;
130
130
  * Validate Dokploy token by making a test API call
131
131
  */
132
132
  async function validateDokployToken(endpoint, token) {
133
- const { DokployApi } = await import("./sniffer-DgBkaLAu.mjs").then((n) => n.c);
133
+ const { DokployApi } = await import("./sniffer-B0EU73bj.mjs").then((n) => n.c);
134
134
  return new DokployApi({
135
135
  baseUrl: endpoint,
136
136
  token
@@ -2233,9 +2233,9 @@ async function workspaceDevCommand(configured, options) {
2233
2233
  for (const { id, port } of fakes) logger$5.log(`🎭 ${id} fake: http://localhost:${port}`);
2234
2234
  logger$5.log(options.migrate || options.seed ? "🗄️ Migrating the databases" : "🗄️ Checking for pending migrations");
2235
2235
  if (options.migrate || options.seed) {
2236
- const { prepareDevDatabases } = await import("./migrate-BeTWLSeC.mjs");
2236
+ const { prepareDevDatabases } = await import("./migrate-ggkPVJRC.mjs");
2237
2237
  await prepareDevDatabases(workspace, reconciled.env, { seed: !!options.seed });
2238
- } else await import("./migrate-BeTWLSeC.mjs").then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
2238
+ } else await import("./migrate-ggkPVJRC.mjs").then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
2239
2239
  logger$5.log(`⚠️ Could not check for pending migrations: ${error instanceof Error ? error.message : String(error)}`);
2240
2240
  });
2241
2241
  const appUrls = {};
@@ -3287,7 +3287,7 @@ async function buildApp(input) {
3287
3287
  ...production,
3288
3288
  ...telemetry ? { telemetry } : {}
3289
3289
  });
3290
- const { bundleServer } = await import("./bundler-CaAKsbcN.mjs");
3290
+ const { bundleServer } = await import("./bundler-BMo-JP5s.mjs");
3291
3291
  await bundleServer({
3292
3292
  entryPoint,
3293
3293
  outputDir: join(outputDir, "dist"),
@@ -3432,7 +3432,7 @@ async function buildWorkers(input) {
3432
3432
  });
3433
3433
  logger$4.log(`Generated worker ${worker.id}: ${crons.length} crons, ${queues.length} queues, ${subscribers.length} subscribers`);
3434
3434
  if (!input.bundle) continue;
3435
- const { bundleServer } = await import("./bundler-CaAKsbcN.mjs");
3435
+ const { bundleServer } = await import("./bundler-BMo-JP5s.mjs");
3436
3436
  const outfile = workerBundleName(worker.id);
3437
3437
  await bundleServer({
3438
3438
  entryPoint,
@@ -3518,7 +3518,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
3518
3518
  let masterKey;
3519
3519
  if (context.production?.bundle && !skipBundle) {
3520
3520
  logger$4.log(`\n📦 Bundling production server...`);
3521
- const { bundleServer } = await import("./bundler-CaAKsbcN.mjs");
3521
+ const { bundleServer } = await import("./bundler-BMo-JP5s.mjs");
3522
3522
  const allConstructs = [
3523
3523
  ...endpoints.map((e) => e.construct),
3524
3524
  ...functions.map((f) => f.construct),
@@ -3772,7 +3772,6 @@ async function composeCommand(options, deps = {}) {
3772
3772
  if (options.push && !options.build) throw new ComposePushNeedsBuild();
3773
3773
  const pulls = !options.build && (options.pull || options.tag !== void 0);
3774
3774
  if (options.digestsFile && !options.push && !pulls) throw new ComposePinNeedsPull();
3775
- const allowDevServices = parseDevServices(options.allowDevServices);
3776
3775
  const cwd = resolve(options.cwd ?? process.cwd());
3777
3776
  const { workspace } = await loadWorkspaceConfig(cwd);
3778
3777
  const { stage } = options;
@@ -3812,7 +3811,7 @@ async function composeCommand(options, deps = {}) {
3812
3811
  ...tag ? { tag } : {},
3813
3812
  ...options.dryRun ? { dryRun: true } : {},
3814
3813
  ...options.push ? { buildOnly: true } : {},
3815
- ...allowDevServices.length > 0 ? { allowDevServices } : {},
3814
+ ...options.allowDevServices ? { allowDevServices: true } : {},
3816
3815
  logger: {
3817
3816
  info: (message) => console.log(message),
3818
3817
  warn: (message) => console.warn(message),
@@ -5220,25 +5219,25 @@ function loadPackageJson() {
5220
5219
  * Run: pnpm --filter @geekmidas/cli sync-versions
5221
5220
  */
5222
5221
  const GEEKMIDAS_VERSIONS = {
5223
- "@geekmidas/audit": "~10.0.0-alpha.85",
5224
- "@geekmidas/auth": "~10.0.0-alpha.85",
5225
- "@geekmidas/cache": "~10.0.0-alpha.85",
5226
- "@geekmidas/client": "~10.0.0-alpha.85",
5227
- "@geekmidas/cloud": "~10.0.0-alpha.85",
5228
- "@geekmidas/constructs": "~10.0.0-alpha.85",
5229
- "@geekmidas/db": "~10.0.0-alpha.85",
5230
- "@geekmidas/emailkit": "~10.0.0-alpha.85",
5231
- "@geekmidas/envkit": "~10.0.0-alpha.85",
5232
- "@geekmidas/errors": "~10.0.0-alpha.85",
5233
- "@geekmidas/events": "~10.0.0-alpha.85",
5234
- "@geekmidas/logger": "~10.0.0-alpha.85",
5235
- "@geekmidas/manifest": "~10.0.0-alpha.85",
5236
- "@geekmidas/rate-limit": "~10.0.0-alpha.85",
5237
- "@geekmidas/schema": "~10.0.0-alpha.85",
5238
- "@geekmidas/services": "~10.0.0-alpha.85",
5239
- "@geekmidas/storage": "~10.0.0-alpha.85",
5240
- "@geekmidas/telescope": "~10.0.0-alpha.85",
5241
- "@geekmidas/testkit": "~10.0.0-alpha.85",
5222
+ "@geekmidas/audit": "~10.0.0-alpha.86",
5223
+ "@geekmidas/auth": "~10.0.0-alpha.86",
5224
+ "@geekmidas/cache": "~10.0.0-alpha.86",
5225
+ "@geekmidas/client": "~10.0.0-alpha.86",
5226
+ "@geekmidas/cloud": "~10.0.0-alpha.86",
5227
+ "@geekmidas/constructs": "~10.0.0-alpha.86",
5228
+ "@geekmidas/db": "~10.0.0-alpha.86",
5229
+ "@geekmidas/emailkit": "~10.0.0-alpha.86",
5230
+ "@geekmidas/envkit": "~10.0.0-alpha.86",
5231
+ "@geekmidas/errors": "~10.0.0-alpha.86",
5232
+ "@geekmidas/events": "~10.0.0-alpha.86",
5233
+ "@geekmidas/logger": "~10.0.0-alpha.86",
5234
+ "@geekmidas/manifest": "~10.0.0-alpha.86",
5235
+ "@geekmidas/rate-limit": "~10.0.0-alpha.86",
5236
+ "@geekmidas/schema": "~10.0.0-alpha.86",
5237
+ "@geekmidas/services": "~10.0.0-alpha.86",
5238
+ "@geekmidas/storage": "~10.0.0-alpha.86",
5239
+ "@geekmidas/telescope": "~10.0.0-alpha.86",
5240
+ "@geekmidas/testkit": "~10.0.0-alpha.86",
5242
5241
  "@geekmidas/cli": `~${loadPackageJson().version}`
5243
5242
  };
5244
5243
  //#endregion
@@ -5639,7 +5638,7 @@ const COMMIT = /^[0-9a-f]{40}$/;
5639
5638
  * The `uses:` value for the stages action, with a comment saying which CLI
5640
5639
  * release the pinned commit is.
5641
5640
  */
5642
- function stagesActionUses(commit = "66f8094280d04ad763f978cdd0a55aeaa5b4180b", version = cliVersion()) {
5641
+ function stagesActionUses(commit = "4b431683030dbd72d145ef850ef5348106aac97f", version = cliVersion()) {
5643
5642
  return commit && COMMIT.test(commit) ? `${STAGES_ACTION}@${commit} # @geekmidas/cli ${version}` : `${STAGES_ACTION}@main # pin to a commit SHA: see the action's README`;
5644
5643
  }
5645
5644
  //#endregion
@@ -10929,12 +10928,14 @@ var setup_exports = /* @__PURE__ */ __exportAll({
10929
10928
  });
10930
10929
  const logger$1 = console;
10931
10930
  /**
10932
- * Setup development environment.
10931
+ * Converge a stage on what its constructs declare.
10933
10932
  *
10934
- * Orchestrates:
10935
- * 1. Load workspace config
10936
- * 2. Resolve secrets (local → the stage's store → generate fresh)
10937
- * 3. Start Docker services
10933
+ * The local stage: its secrets (local → the stage's store → generated) and
10934
+ * the containers on this machine. A deployed stage: its secrets, and then
10935
+ * every provider `deploy.<kind>.<stage>` names — the bucket, user and key an
10936
+ * `objects: { provider: 's3' }` stage is backed by — created or repaired in
10937
+ * the stage's own account. A deployed stage's infrastructure is not on this
10938
+ * machine, so no container is started for one.
10938
10939
  */
10939
10940
  async function setupCommand(options = {}) {
10940
10941
  logger$1.log("\n🔧 Setting up the local environment...\n");
@@ -10947,13 +10948,22 @@ async function setupCommand(options = {}) {
10947
10948
  }
10948
10949
  const stage = options.stage ?? loadedConfig.workspace.stages.local;
10949
10950
  const { workspace } = loadedConfig;
10951
+ const local = stage === workspace.stages.local;
10950
10952
  logger$1.log(`📦 Workspace: ${workspace.name}`);
10951
10953
  logger$1.log(`📱 Apps: ${Object.keys(workspace.apps).join(", ")}`);
10952
10954
  logger$1.log(`🔑 Stage: ${stage}\n`);
10955
+ if (!local && options.dryRun) {
10956
+ await provisionDeployed(workspace, stage, options);
10957
+ return;
10958
+ }
10953
10959
  if (!await resolveSecrets(stage, workspace, options)) {
10954
10960
  logger$1.error("❌ Failed to resolve secrets. Exiting.");
10955
10961
  process.exit(1);
10956
10962
  }
10963
+ if (!local) {
10964
+ await provisionDeployed(workspace, stage, options);
10965
+ return;
10966
+ }
10957
10967
  if (!options.skipDocker) {
10958
10968
  logger$1.log("");
10959
10969
  await reconcileLocal(workspace, stage, options);
@@ -10961,6 +10971,28 @@ async function setupCommand(options = {}) {
10961
10971
  printSummary(workspace, stage);
10962
10972
  }
10963
10973
  /**
10974
+ * A deployed stage's providers: each one's `ensure()`, in the stage's own
10975
+ * account, its keys written into the stage's secrets.
10976
+ */
10977
+ async function provisionDeployed(workspace, stage, options) {
10978
+ logger$1.log(options.dryRun ? `\n☁️ Providers for '${stage}' (dry run — nothing is created or written)` : `\n☁️ Providers for '${stage}'`);
10979
+ const configured = (await provisionStage({
10980
+ workspace,
10981
+ stage,
10982
+ ...options.dryRun ? { dryRun: true } : {},
10983
+ ...options.profile ? { profile: options.profile } : {},
10984
+ ...options.rotateKeys ? { rotateKeys: true } : {},
10985
+ ...options.retireOldKeys ? { retireOldKeys: true } : {},
10986
+ log: (line) => logger$1.log(line)
10987
+ })).filter((r) => r.mode === "provider");
10988
+ if (configured.length === 0) {
10989
+ logger$1.log(` None configured: '${stage}' takes every key from its secrets (gkm secrets:add --stage ${stage}). Name one in gkm.config.ts — deploy: { objects: { ${stage}: { provider: 's3' } } } — to have ${provisionCommand(stage)} create it.`);
10990
+ return;
10991
+ }
10992
+ const changes = configured.reduce((n, r) => n + r.actions.length, 0);
10993
+ logger$1.log(options.dryRun ? `\n${changes === 0 ? "✅ Nothing to change" : `📋 ${changes} change${changes === 1 ? "" : "s"} planned`}` : `\n✅ '${stage}' provisioned${changes === 0 ? " — already up to date" : ` (${changes} change${changes === 1 ? "" : "s"})`}`);
10994
+ }
10995
+ /**
10964
10996
  * Converge this machine on what the manifest declares.
10965
10997
  *
10966
10998
  * Says what it did in one line and stays silent when it did nothing, because
@@ -11311,7 +11343,7 @@ function testDatabases(reconciled) {
11311
11343
  * starts without the reference data the app needs.
11312
11344
  */
11313
11345
  async function migrateTestStage(workspace, env) {
11314
- const { migrateAndSeed } = await import("./migrate-BeTWLSeC.mjs");
11346
+ const { migrateAndSeed } = await import("./migrate-ggkPVJRC.mjs");
11315
11347
  const { discover } = await import("./discover-BPelzeGW.mjs").then((n) => n.i);
11316
11348
  const sources = {};
11317
11349
  const manifest = await discover({
@@ -11667,7 +11699,7 @@ program.command("trust").description("Trust the local edge's certificate authori
11667
11699
  process.exit(1);
11668
11700
  }
11669
11701
  });
11670
- program.command("setup").description("Reconcile declared constructs — containers, databases, buckets, secrets").option("--stage <stage>", "Stage name (default: stages.local)").option("--force", "Regenerate secrets even if they exist").option("--skip-docker", "Skip starting Docker services").option("-y, --yes", "Skip prompts").action(async (options) => {
11702
+ program.command("setup").description("Reconcile declared constructs — locally, containers and secrets; on a deployed stage, its providers (deploy.objects)").option("--stage <stage>", "Stage name (default: stages.local)").option("--force", "Regenerate secrets even if they exist").option("--skip-docker", "Skip starting Docker services").option("-y, --yes", "Skip prompts").option("--dry-run", "A deployed stage: print what its providers would create or change, and write nothing").option("--profile <profile>", "AWS profile for the stage's account").option("--rotate-keys", "A deployed stage: issue each provisioned key a successor (the old one is deleted after the next deploy)").option("--retire-old-keys", "A deployed stage: delete a rotated-out key now instead of after the next deploy").action(async (options) => {
11671
11703
  try {
11672
11704
  const globalOptions = program.opts();
11673
11705
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
@@ -11755,7 +11787,7 @@ program.command("migrate").description("Apply each database construct's migratio
11755
11787
  try {
11756
11788
  const globalOptions = program.opts();
11757
11789
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11758
- const { migrateCommand } = await import("./migrate-BeTWLSeC.mjs");
11790
+ const { migrateCommand } = await import("./migrate-ggkPVJRC.mjs");
11759
11791
  await migrateCommand({
11760
11792
  ...options,
11761
11793
  ...construct ? { construct } : {}
@@ -11769,7 +11801,7 @@ program.command("seed").description("Migrate, then run each database construct's
11769
11801
  try {
11770
11802
  const globalOptions = program.opts();
11771
11803
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11772
- const { seedCommand } = await import("./migrate-BeTWLSeC.mjs");
11804
+ const { seedCommand } = await import("./migrate-ggkPVJRC.mjs");
11773
11805
  await seedCommand({
11774
11806
  ...options,
11775
11807
  ...construct ? { construct } : {}
@@ -11783,7 +11815,7 @@ program.command("migration").description("Write a construct's next migration: an
11783
11815
  try {
11784
11816
  const globalOptions = program.opts();
11785
11817
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11786
- const { migrationCommand } = await import("./migrate-BeTWLSeC.mjs");
11818
+ const { migrationCommand } = await import("./migrate-ggkPVJRC.mjs");
11787
11819
  await migrationCommand({
11788
11820
  construct,
11789
11821
  ...name ? { name } : {}
@@ -11832,7 +11864,7 @@ program.command("docker").description("Generate Docker deployment files").option
11832
11864
  process.exit(1);
11833
11865
  }
11834
11866
  });
11835
- program.command("compose").description("Run the workspace's APIs and sites for a stage as one Docker Compose stack behind Caddy").requiredOption("--stage <stage>", "Stage to run — always named, so a stack is never a deployed stage by accident").option("--tag <tag>", "Run the images CI pushed at this tag (sites: <tag>-<stage>); nothing is built").option("--build", "Build images from this checkout, tagged with the commit").option("--pull", "Pull images (at --tag, or latest) rather than build them").option("--push", "With --build: push every image to deploy.registry and start nothing (for CI)").option("--digests-file <path>", "With --push: write each image as <ref>@sha256:… (JSON). With --tag: run the images at those digests").option("--dry-run", "Write the files and print the plan; start nothing").option("--down", "Stop the stage's stack (its volumes are kept)").option("--allow-dev-services <list>", "Deployed stage: run MinIO and/or Mailpit (minio,mailpit) for mail and buckets the stage's secrets don't configure. Not production-grade").action(async (options) => {
11867
+ program.command("compose").description("Run the workspace's APIs and sites for a stage as one Docker Compose stack behind Caddy").requiredOption("--stage <stage>", "Stage to run — always named, so a stack is never a deployed stage by accident").option("--tag <tag>", "Run the images CI pushed at this tag (sites: <tag>-<stage>); nothing is built").option("--build", "Build images from this checkout, tagged with the commit").option("--pull", "Pull images (at --tag, or latest) rather than build them").option("--push", "With --build: push every image to deploy.registry and start nothing (for CI)").option("--digests-file <path>", "With --push: write each image as <ref>@sha256:… (JSON). With --tag: run the images at those digests").option("--dry-run", "Write the files and print the plan; start nothing").option("--down", "Stop the stage's stack (its volumes are kept)").option("--allow-dev-services", "Deployed stage: run the dev service (MinIO, Mailpit) for every bucket and mail the stage doesn't account for. Not production-grade").action(async (options) => {
11836
11868
  try {
11837
11869
  const globalOptions = program.opts();
11838
11870
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
@@ -11891,7 +11923,7 @@ program.command("secrets:add").description("Build the keys a stage must be given
11891
11923
  try {
11892
11924
  const globalOptions = program.opts();
11893
11925
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11894
- const { secretsAddCommand } = await import("./add-jpX7M8RB.mjs");
11926
+ const { secretsAddCommand } = await import("./add-D_jNqnfZ.mjs");
11895
11927
  await secretsAddCommand(options);
11896
11928
  } catch (error) {
11897
11929
  console.error(formatError(error));
@@ -11902,7 +11934,7 @@ program.command("encryption:rotate").description("Add a new current key to an En
11902
11934
  try {
11903
11935
  const globalOptions = program.opts();
11904
11936
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11905
- const { encryptionRotateCommand } = await import("./encryption-DpAum8W7.mjs");
11937
+ const { encryptionRotateCommand } = await import("./encryption-C-8Tt5Hh.mjs");
11906
11938
  await encryptionRotateCommand(construct, options);
11907
11939
  } catch (error) {
11908
11940
  console.error(formatError(error));
@@ -11913,7 +11945,7 @@ program.command("encryption:retire").description("Remove an old key from an Encr
11913
11945
  try {
11914
11946
  const globalOptions = program.opts();
11915
11947
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11916
- const { encryptionRetireCommand } = await import("./encryption-DpAum8W7.mjs");
11948
+ const { encryptionRetireCommand } = await import("./encryption-C-8Tt5Hh.mjs");
11917
11949
  await encryptionRetireCommand(construct, key, options);
11918
11950
  } catch (error) {
11919
11951
  console.error(formatError(error));
@@ -11956,7 +11988,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
11956
11988
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11957
11989
  const { loadWorkspaceConfig } = await import("./config.mjs");
11958
11990
  const { reconcileMissingSecrets } = await import("./reconcile--I7V4Klj.mjs");
11959
- const { secretsStoreFor } = await import("./seeds-9C5CkDon.mjs").then((n) => n.hn);
11991
+ const { secretsStoreFor } = await import("./seeds-BYdrtZsC.mjs").then((n) => n.An);
11960
11992
  const { workspace } = await loadWorkspaceConfig();
11961
11993
  const stage = options.stage ?? workspace.stages.local;
11962
11994
  const store = await secretsStoreFor(workspace, stage);
@@ -11965,7 +11997,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
11965
11997
  console.error(`No secrets found for stage "${stage}". Run "gkm secrets:init --stage ${stage}" first.`);
11966
11998
  process.exit(1);
11967
11999
  }
11968
- const { derivedContainers } = await import("./seeds-9C5CkDon.mjs").then((n) => n.X);
12000
+ const { derivedContainers } = await import("./seeds-BYdrtZsC.mjs").then((n) => n.dt);
11969
12001
  const result = reconcileMissingSecrets(secrets, workspace, await derivedContainers(workspace, stage));
11970
12002
  if (!result) {
11971
12003
  console.log(`\n✓ Secrets for stage "${stage}" are up-to-date`);
@@ -11983,15 +12015,15 @@ program.command("secrets:migrate").description("Copy a deployed stage's secrets
11983
12015
  try {
11984
12016
  const globalOptions = program.opts();
11985
12017
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11986
- const { secretsMigrateCommand } = await import("./migrate-sDq7NApJ.mjs");
12018
+ const { secretsMigrateCommand } = await import("./migrate-Dn7nK6sh.mjs");
11987
12019
  await secretsMigrateCommand(options);
11988
12020
  } catch (error) {
11989
12021
  console.error(formatError(error));
11990
12022
  process.exit(1);
11991
12023
  }
11992
12024
  });
11993
- program.command("deploy").description("Deploy a stage through its target").option("--target <name>", "Deploy target: dokploy, compose, sst, or one named in deploy.targets (default: deploy.default)").option("--provider <provider>", "[DEPRECATED] Use --target instead").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").option("--tag <tag>", "Image tag (default: stage-timestamp; compose: the commit). Compose pulls a given tag").option("--skip-push", "Skip pushing image to registry").option("--skip-build", "Skip build step (use existing build)").option("--json", "Write events as JSON lines instead of progress; never prompts").option("--dry-run", "Show what would be created or reused; change, build and push nothing").option("--atomic", "If the release fails, roll back every app it released, not only the failed ones").option("--allow-dev-services <list>", "Server targets: run MinIO and/or Mailpit (minio,mailpit) for mail and buckets the stage's secrets don't configure. Not production-grade").action(async (options) => {
11994
- const { deployCli } = await import("./cli-BV3jzbk0.mjs");
12025
+ program.command("deploy").description("Deploy a stage through its target").option("--target <name>", "Deploy target: dokploy, compose, sst, or one named in deploy.targets (default: deploy.default)").option("--provider <provider>", "[DEPRECATED] Use --target instead").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").option("--tag <tag>", "Image tag (default: stage-timestamp; compose: the commit). Compose pulls a given tag").option("--skip-push", "Skip pushing image to registry").option("--skip-build", "Skip build step (use existing build)").option("--json", "Write events as JSON lines instead of progress; never prompts").option("--dry-run", "Show what would be created or reused; change, build and push nothing").option("--atomic", "If the release fails, roll back every app it released, not only the failed ones").option("--allow-dev-services", "Server targets: run the dev service (MinIO, Mailpit) for every bucket and mail the stage doesn't account for. Not production-grade").action(async (options) => {
12026
+ const { deployCli } = await import("./cli-7edNFwGk.mjs");
11995
12027
  const globalOptions = program.opts();
11996
12028
  const code = await deployCli({
11997
12029
  cwd: resolve(globalOptions.cwd ?? process.cwd()),
@@ -12002,14 +12034,14 @@ program.command("deploy").description("Deploy a stage through its target").optio
12002
12034
  ...options.json ? { json: true } : {},
12003
12035
  ...options.dryRun ? { dryRun: true } : {},
12004
12036
  ...options.atomic ? { atomic: true } : {},
12005
- ...options.allowDevServices ? { allowDevServices: options.allowDevServices } : {}
12037
+ ...options.allowDevServices ? { allowDevServices: true } : {}
12006
12038
  });
12007
12039
  if (code !== 0) process.exit(code);
12008
12040
  });
12009
12041
  program.command("deploy:rollback").description("Put a stage's app back on its previous release (Dokploy): one app with --app, every app with --atomic").requiredOption("--stage <stage>", "A deployed stage").option("--app <app>", "The app to roll back").option("--atomic", "Roll back every app that has an earlier release").action(async (options) => {
12010
12042
  try {
12011
- const { rollbackStage } = await import("./rollback-ByyFE5lV.mjs").then((n) => n.a);
12012
- const { terminalCredentials } = await import("./terminal-BdvrmkaC.mjs");
12043
+ const { rollbackStage } = await import("./rollback-CEE6dse4.mjs").then((n) => n.a);
12044
+ const { terminalCredentials } = await import("./terminal-BTbZlrFV.mjs");
12013
12045
  const globalOptions = program.opts();
12014
12046
  await rollbackStage({
12015
12047
  cwd: resolve(globalOptions.cwd ?? process.cwd()),
@@ -12044,7 +12076,7 @@ program.command("deploy:github").description("Let GitHub Actions deploy a stage:
12044
12076
  try {
12045
12077
  const globalOptions = program.opts();
12046
12078
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12047
- const { deployGithubCommand } = await import("./github-8B68qrLs.mjs");
12079
+ const { deployGithubCommand } = await import("./github-CZHAtwPT.mjs");
12048
12080
  await deployGithubCommand(options);
12049
12081
  } catch (error) {
12050
12082
  console.error(formatError(error));
@@ -12055,7 +12087,7 @@ program.command("stages").description("The workspace's stages from gkm.config.ts
12055
12087
  try {
12056
12088
  const globalOptions = program.opts();
12057
12089
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12058
- const { stagesCommand } = await import("./stages-CSXt7N2b.mjs");
12090
+ const { stagesCommand } = await import("./stages-DoHHz6pS.mjs");
12059
12091
  await stagesCommand(options);
12060
12092
  } catch (error) {
12061
12093
  console.error(formatError(error));
@@ -12188,6 +12220,12 @@ program.command("upgrade").description("Upgrade @geekmidas/cli (with --all, ever
12188
12220
  process.exit(1);
12189
12221
  }
12190
12222
  });
12223
+ try {
12224
+ assertDevServicesFlag(process.argv.slice(2));
12225
+ } catch (error) {
12226
+ console.error(formatError(error));
12227
+ process.exit(1);
12228
+ }
12191
12229
  program.parse();
12192
12230
  //#endregion
12193
12231
  export { validateDokployToken as a, formatError as i, slug as n, canPrompt as o, stamp as r, prompt as s, generateFullstackCustomSecrets as t };