@geekmidas/cli 10.0.0-alpha.90 → 10.0.0-alpha.92
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{EndpointGenerator-CVc6Oi1Y.mjs → EndpointGenerator-Bor2tZCm.mjs} +14 -4
- package/dist/EndpointGenerator-Bor2tZCm.mjs.map +1 -0
- package/dist/{EndpointGenerator-CwLjBCFE.cjs → EndpointGenerator-De03t1hd.cjs} +14 -4
- package/dist/EndpointGenerator-De03t1hd.cjs.map +1 -0
- package/dist/{GoDaddyProvider-DSStJVAv.mjs → GoDaddyProvider-BqYGk9XT.mjs} +11 -10
- package/dist/GoDaddyProvider-BqYGk9XT.mjs.map +1 -0
- package/dist/{GoDaddyProvider-DqZ1qD_F.cjs → GoDaddyProvider-CJwg2r_9.cjs} +11 -10
- package/dist/GoDaddyProvider-CJwg2r_9.cjs.map +1 -0
- package/dist/{HostingerProvider-BI6J7oJr.mjs → HostingerProvider-1mqD6aG8.mjs} +2 -2
- package/dist/{HostingerProvider-BI6J7oJr.mjs.map → HostingerProvider-1mqD6aG8.mjs.map} +1 -1
- package/dist/{HostingerProvider-CyTpG_jy.cjs → HostingerProvider-C6t-PSNe.cjs} +2 -2
- package/dist/{HostingerProvider-CyTpG_jy.cjs.map → HostingerProvider-C6t-PSNe.cjs.map} +1 -1
- package/dist/{LegacyStateStore-DXmNA7hy.cjs → LegacyStateStore-CeEwayMB.cjs} +2 -2
- package/dist/{LegacyStateStore-DXmNA7hy.cjs.map → LegacyStateStore-CeEwayMB.cjs.map} +1 -1
- package/dist/{LegacyStateStore-ZkdmiUFZ.mjs → LegacyStateStore-DdJ1bCRV.mjs} +2 -2
- package/dist/{LegacyStateStore-ZkdmiUFZ.mjs.map → LegacyStateStore-DdJ1bCRV.mjs.map} +1 -1
- package/dist/{LocalStateStore-BBeTlRTH.cjs → LocalStateStore-BMfseje2.cjs} +2 -2
- package/dist/{LocalStateStore-BBeTlRTH.cjs.map → LocalStateStore-BMfseje2.cjs.map} +1 -1
- package/dist/{LocalStateStore-CU-O0SBp.mjs → LocalStateStore-Y8XHdoCR.mjs} +2 -2
- package/dist/{LocalStateStore-CU-O0SBp.mjs.map → LocalStateStore-Y8XHdoCR.mjs.map} +1 -1
- package/dist/{OpenApiTsGenerator-B--HV-sW.cjs → OpenApiTsGenerator-CS_RtWOz.cjs} +2 -2
- package/dist/{OpenApiTsGenerator-B--HV-sW.cjs.map → OpenApiTsGenerator-CS_RtWOz.cjs.map} +1 -1
- package/dist/{OpenApiTsGenerator-CkvsPdgg.mjs → OpenApiTsGenerator-DWAF-7Fu.mjs} +2 -2
- package/dist/{OpenApiTsGenerator-CkvsPdgg.mjs.map → OpenApiTsGenerator-DWAF-7Fu.mjs.map} +1 -1
- package/dist/{S3StateStore-bwxcI_wQ.mjs → S3StateStore-BfoY4MvD.mjs} +2 -2
- package/dist/{S3StateStore-bwxcI_wQ.mjs.map → S3StateStore-BfoY4MvD.mjs.map} +1 -1
- package/dist/{S3StateStore-Br8VMY22.cjs → S3StateStore-BmMt2HhW.cjs} +2 -2
- package/dist/{S3StateStore-Br8VMY22.cjs.map → S3StateStore-BmMt2HhW.cjs.map} +1 -1
- package/dist/{SSMStateStore-CsOS0W1y.mjs → SSMStateStore-Bdyw_0Jj.mjs} +2 -2
- package/dist/{SSMStateStore-CsOS0W1y.mjs.map → SSMStateStore-Bdyw_0Jj.mjs.map} +1 -1
- package/dist/{SSMStateStore-DoZE1Wi1.cjs → SSMStateStore-D9K62wM4.cjs} +2 -2
- package/dist/{SSMStateStore-DoZE1Wi1.cjs.map → SSMStateStore-D9K62wM4.cjs.map} +1 -1
- package/dist/{SubscriberGenerator-BPqQf8fB.mjs → SubscriberGenerator-CyN2VF5X.mjs} +6 -5
- package/dist/SubscriberGenerator-CyN2VF5X.mjs.map +1 -0
- package/dist/{SubscriberGenerator-BVn7cQ-2.cjs → SubscriberGenerator-Dvz7EzqK.cjs} +6 -5
- package/dist/SubscriberGenerator-Dvz7EzqK.cjs.map +1 -0
- package/dist/{add-DHk1roh_.mjs → add-2Opn2VVE.mjs} +250 -94
- package/dist/add-2Opn2VVE.mjs.map +1 -0
- package/dist/{add-CNMF0Q3m.cjs → add-oN0b18HN.cjs} +250 -94
- package/dist/add-oN0b18HN.cjs.map +1 -0
- package/dist/{aws-BTawF0F-.cjs → aws-BTReGjpY.cjs} +24 -6
- package/dist/aws-BTReGjpY.cjs.map +1 -0
- package/dist/{aws-B-6uEhgP.mjs → aws-Dz2bYxK1.mjs} +24 -6
- package/dist/aws-Dz2bYxK1.mjs.map +1 -0
- package/dist/awsStore-B5We7bMg.cjs +136 -0
- package/dist/awsStore-B5We7bMg.cjs.map +1 -0
- package/dist/awsStore-BWa1KNY-.mjs +119 -0
- package/dist/awsStore-BWa1KNY-.mjs.map +1 -0
- package/dist/{bundler-D6eBfVkl.mjs → bundler-C-AdesaG.mjs} +5 -5
- package/dist/{bundler-D6eBfVkl.mjs.map → bundler-C-AdesaG.mjs.map} +1 -1
- package/dist/{bundler-BQJiB7Ub.cjs → bundler-CXQDrhzN.cjs} +5 -5
- package/dist/{bundler-BQJiB7Ub.cjs.map → bundler-CXQDrhzN.cjs.map} +1 -1
- package/dist/{cli-BE9mqeX8.cjs → cli-BRZFYvdb.cjs} +5 -5
- package/dist/{cli-BE9mqeX8.cjs.map → cli-BRZFYvdb.cjs.map} +1 -1
- package/dist/{cli-DD-Yk-I5.mjs → cli-BjhaVObS.mjs} +5 -5
- package/dist/{cli-DD-Yk-I5.mjs.map → cli-BjhaVObS.mjs.map} +1 -1
- package/dist/{compose-Bhmf0n4o.mjs → compose-CTdVeeVk.mjs} +45 -34
- package/dist/compose-CTdVeeVk.mjs.map +1 -0
- package/dist/{compose-CvpU6ooi.cjs → compose-fnYmPk_c.cjs} +45 -34
- package/dist/compose-fnYmPk_c.cjs.map +1 -0
- package/dist/{config-pST7E0CS.d.cts → config-BJo8Wggp.d.mts} +8 -8
- package/dist/{config-CdEcTrjG.d.mts.map → config-BJo8Wggp.d.mts.map} +1 -1
- package/dist/{config-CdEcTrjG.d.mts → config-C9zx7KsX.d.cts} +8 -8
- package/dist/{config-pST7E0CS.d.cts.map → config-C9zx7KsX.d.cts.map} +1 -1
- package/dist/config.cjs +8 -7
- package/dist/config.cjs.map +1 -1
- package/dist/config.d.cts +3 -3
- package/dist/config.d.mts +3 -3
- package/dist/config.mjs +8 -7
- package/dist/config.mjs.map +1 -1
- package/dist/{credentialSchemas-BJqRJNK4.mjs → credentialSchemas-BJFvfkaz.mjs} +5 -4
- package/dist/credentialSchemas-BJFvfkaz.mjs.map +1 -0
- package/dist/{credentialSchemas-DCR4Wd1W.cjs → credentialSchemas-CAPKFkrG.cjs} +5 -4
- package/dist/credentialSchemas-CAPKFkrG.cjs.map +1 -0
- package/dist/{credentials-CnVqoXMb.mjs → credentials-C4KII3PD.mjs} +3 -2
- package/dist/{credentials-CnVqoXMb.mjs.map → credentials-C4KII3PD.mjs.map} +1 -1
- package/dist/{credentials-BKfIugu2.cjs → credentials-QBu7VgaQ.cjs} +3 -2
- package/dist/credentials-QBu7VgaQ.cjs.map +1 -0
- package/dist/{databases-CzszQV0N.mjs → databases-BeGP5eDh.mjs} +11 -10
- package/dist/databases-BeGP5eDh.mjs.map +1 -0
- package/dist/{databases-BY-pEImp.cjs → databases-DGALFDG3.cjs} +11 -10
- package/dist/databases-DGALFDG3.cjs.map +1 -0
- package/dist/{define-DR8xGYfL.mjs → define-6poNqm5O.mjs} +12 -3
- package/dist/define-6poNqm5O.mjs.map +1 -0
- package/dist/{define-DzRz8FgH.cjs → define-crmMcXFS.cjs} +12 -3
- package/dist/define-crmMcXFS.cjs.map +1 -0
- package/dist/deploy/public.cjs +17 -16
- package/dist/deploy/public.cjs.map +1 -1
- package/dist/deploy/public.d.cts +30 -30
- package/dist/deploy/public.d.cts.map +1 -1
- package/dist/deploy/public.d.mts +30 -30
- package/dist/deploy/public.d.mts.map +1 -1
- package/dist/deploy/public.mjs +17 -16
- package/dist/deploy/public.mjs.map +1 -1
- package/dist/{deploy-CuHasEA4.cjs → deploy-6ToUHJmM.cjs} +14 -13
- package/dist/deploy-6ToUHJmM.cjs.map +1 -0
- package/dist/{deploy-QNtx_eWR.mjs → deploy-yuJHlkY0.mjs} +14 -13
- package/dist/deploy-yuJHlkY0.mjs.map +1 -0
- package/dist/{discover-CU0paUyH.d.cts → discover-CRMhvHG9.d.cts} +2 -2
- package/dist/{discover-CU0paUyH.d.cts.map → discover-CRMhvHG9.d.cts.map} +1 -1
- package/dist/{discover-D1It5r_h.cjs → discover-DPgu-ScS.cjs} +4 -3
- package/dist/discover-DPgu-ScS.cjs.map +1 -0
- package/dist/{discover-DFiJxwfv.d.mts → discover-G76EQ4vY.d.mts} +2 -2
- package/dist/{discover-DFiJxwfv.d.mts.map → discover-G76EQ4vY.d.mts.map} +1 -1
- package/dist/{discover-BPelzeGW.mjs → discover-qjFapetL.mjs} +4 -3
- package/dist/discover-qjFapetL.mjs.map +1 -0
- package/dist/{dokploy-CYcMLh9-.mjs → dokploy-BvbJ_A4Q.mjs} +3 -3
- package/dist/{dokploy-CYcMLh9-.mjs.map → dokploy-BvbJ_A4Q.mjs.map} +1 -1
- package/dist/{dokploy-DIowwyIB.cjs → dokploy-Bvvfj2qe.cjs} +3 -3
- package/dist/{dokploy-DIowwyIB.cjs.map → dokploy-Bvvfj2qe.cjs.map} +1 -1
- package/dist/{drivers-DTZzxeIl.mjs → drivers-CTaWrA_L.mjs} +2 -2
- package/dist/{drivers-DTZzxeIl.mjs.map → drivers-CTaWrA_L.mjs.map} +1 -1
- package/dist/{drivers-LYSdQDmd.cjs → drivers-DDojgzz0.cjs} +2 -2
- package/dist/{drivers-LYSdQDmd.cjs.map → drivers-DDojgzz0.cjs.map} +1 -1
- package/dist/{encryption-BrEef7Jk.mjs → encryption-C9Jm9dfn.mjs} +7 -6
- package/dist/encryption-C9Jm9dfn.mjs.map +1 -0
- package/dist/{encryption-CjYdUb2s.cjs → encryption-CgW167LO.cjs} +7 -6
- package/dist/encryption-CgW167LO.cjs.map +1 -0
- package/dist/{engine-2h4k5ICq.mjs → engine-C8Ye9MUm.mjs} +36 -25
- package/dist/engine-C8Ye9MUm.mjs.map +1 -0
- package/dist/{engine-BhJ7ZP9K.cjs → engine-Dj7ZKO8H.cjs} +36 -25
- package/dist/engine-Dj7ZKO8H.cjs.map +1 -0
- package/dist/errors-D8Gwp5kU.mjs +23 -0
- package/dist/errors-D8Gwp5kU.mjs.map +1 -0
- package/dist/errors-DMC4Umsb.cjs +34 -0
- package/dist/errors-DMC4Umsb.cjs.map +1 -0
- package/dist/{github-BCDF6xVH.mjs → github-B1k42hIt.mjs} +31 -9
- package/dist/github-B1k42hIt.mjs.map +1 -0
- package/dist/{github-B5Bw4HIu.cjs → github-BD051KZZ.cjs} +31 -9
- package/dist/github-BD051KZZ.cjs.map +1 -0
- package/dist/{index-YFNxR5Ns.d.mts → index-B5uuwx-Y.d.cts} +6 -6
- package/dist/{index-D-F_hTDz.d.cts.map → index-B5uuwx-Y.d.cts.map} +1 -1
- package/dist/{index-D-F_hTDz.d.cts → index-D1pHwqkK.d.mts} +6 -6
- package/dist/{index-YFNxR5Ns.d.mts.map → index-D1pHwqkK.d.mts.map} +1 -1
- package/dist/index.cjs +159 -208
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +159 -208
- package/dist/index.mjs.map +1 -1
- package/dist/{local-BjxDfPvy.cjs → local-B61kUh0w.cjs} +3 -3
- package/dist/{local-BjxDfPvy.cjs.map → local-B61kUh0w.cjs.map} +1 -1
- package/dist/{local-IuoIF3CT.mjs → local-Otp74ak0.mjs} +3 -3
- package/dist/{local-IuoIF3CT.mjs.map → local-Otp74ak0.mjs.map} +1 -1
- package/dist/{migrate-DbtcuOr_.mjs → migrate-BSbZ7-9n.mjs} +8 -7
- package/dist/migrate-BSbZ7-9n.mjs.map +1 -0
- package/dist/{migrate-q2YYLJLE.cjs → migrate-D3VVsiHp.cjs} +8 -7
- package/dist/migrate-D3VVsiHp.cjs.map +1 -0
- package/dist/{migrate-DWZz9kah.mjs → migrate-IZsYyZ5F.mjs} +8 -7
- package/dist/migrate-IZsYyZ5F.mjs.map +1 -0
- package/dist/{migrate-CGaancHY.cjs → migrate-f6JDjyCp.cjs} +8 -7
- package/dist/migrate-f6JDjyCp.cjs.map +1 -0
- package/dist/openapi.cjs +3 -3
- package/dist/openapi.d.cts +1 -10
- package/dist/openapi.d.cts.map +1 -1
- package/dist/openapi.d.mts +1 -10
- package/dist/openapi.d.mts.map +1 -1
- package/dist/openapi.mjs +3 -3
- package/dist/{provider-C9_-45d5.cjs → provider-BqpjG9QM.cjs} +4 -3
- package/dist/provider-BqpjG9QM.cjs.map +1 -0
- package/dist/{provider-q4lsYzYG.mjs → provider-CEOKk8NS.mjs} +4 -3
- package/dist/provider-CEOKk8NS.mjs.map +1 -0
- package/dist/{ready-BpNbORRB.cjs → ready-D3PIjx3S.cjs} +9 -8
- package/dist/ready-D3PIjx3S.cjs.map +1 -0
- package/dist/{ready-b6vm0-W-.mjs → ready-naOSJpeJ.mjs} +9 -8
- package/dist/ready-naOSJpeJ.mjs.map +1 -0
- package/dist/reconcile/public.cjs +1 -1
- package/dist/reconcile/public.d.cts +2 -2
- package/dist/reconcile/public.d.mts +2 -2
- package/dist/reconcile/public.mjs +1 -1
- package/dist/{resolve-DNg0icnh.mjs → resolve-Be4bF1w4.mjs} +12 -11
- package/dist/resolve-Be4bF1w4.mjs.map +1 -0
- package/dist/{resolve-Cns0v6dN.cjs → resolve-DUp65SnJ.cjs} +12 -11
- package/dist/resolve-DUp65SnJ.cjs.map +1 -0
- package/dist/{rollback-CFrNLmxs.mjs → rollback-D1d-fW0r.mjs} +11 -10
- package/dist/rollback-D1d-fW0r.mjs.map +1 -0
- package/dist/{rollback-UIjS25F1.cjs → rollback-DDHtd0GJ.cjs} +11 -10
- package/dist/rollback-DDHtd0GJ.cjs.map +1 -0
- package/dist/{runtime-CN_kmqxo.d.cts → runtime-DDrHlYe5.d.cts} +11 -19
- package/dist/runtime-DDrHlYe5.d.cts.map +1 -0
- package/dist/{runtime-Cjvon3oj.d.mts → runtime-Es1V4e9M.d.mts} +11 -19
- package/dist/runtime-Es1V4e9M.d.mts.map +1 -0
- package/dist/sandbox/credentials-worker.cjs +3 -3
- package/dist/sandbox/credentials-worker.mjs +3 -3
- package/dist/sandbox/discover-worker.cjs +1 -1
- package/dist/sandbox/discover-worker.mjs +1 -1
- package/dist/sandbox/migrate-worker.cjs +3 -3
- package/dist/sandbox/migrate-worker.mjs +3 -3
- package/dist/{sandbox-M8UnLhXE.d.cts → sandbox-C3WsTa5m.d.mts} +4 -26
- package/dist/sandbox-C3WsTa5m.d.mts.map +1 -0
- package/dist/{sandbox-CL--ZDui.cjs → sandbox-CHv3OYXg.cjs} +4 -3
- package/dist/sandbox-CHv3OYXg.cjs.map +1 -0
- package/dist/{sandbox-Dm247NGx.mjs → sandbox-CbVB7uOD.mjs} +4 -3
- package/dist/sandbox-CbVB7uOD.mjs.map +1 -0
- package/dist/{sandbox-M8UnLhXE.d.mts → sandbox-MaxSeU92.d.cts} +4 -26
- package/dist/sandbox-MaxSeU92.d.cts.map +1 -0
- package/dist/{secretsManager-Chs9VV2r.mjs → secretsManager-C6wm-9uZ.mjs} +24 -3
- package/dist/secretsManager-C6wm-9uZ.mjs.map +1 -0
- package/dist/{secretsManager-DcMlHnRC.cjs → secretsManager-Cwwgs81g.cjs} +24 -3
- package/dist/secretsManager-Cwwgs81g.cjs.map +1 -0
- package/dist/{seeds-CkIPFGNO.cjs → seeds-BKoJYsE7.cjs} +58 -57
- package/dist/seeds-BKoJYsE7.cjs.map +1 -0
- package/dist/{seeds-odfgSCmu.mjs → seeds-CvGQJnPO.mjs} +58 -57
- package/dist/seeds-CvGQJnPO.mjs.map +1 -0
- package/dist/{sniffer-BTtX3NUM.mjs → sniffer-BTtGAtm3.mjs} +14 -8
- package/dist/sniffer-BTtGAtm3.mjs.map +1 -0
- package/dist/{sniffer-IAQEpsQb.cjs → sniffer-Dq5BS98f.cjs} +14 -8
- package/dist/{sniffer-IAQEpsQb.cjs.map → sniffer-Dq5BS98f.cjs.map} +1 -1
- package/dist/{sst-CJzvyrEz.mjs → sst-BaRXp2Dd.mjs} +18 -8
- package/dist/sst-BaRXp2Dd.mjs.map +1 -0
- package/dist/{sst-BgcOsaBi.cjs → sst-CnKY-CSh.cjs} +18 -8
- package/dist/sst-CnKY-CSh.cjs.map +1 -0
- package/dist/{stages-CUn6gvXL.cjs → stages-BI8JvPzI.cjs} +6 -5
- package/dist/stages-BI8JvPzI.cjs.map +1 -0
- package/dist/{stages-CnZRYmkI.mjs → stages-DY-fQKmo.mjs} +6 -5
- package/dist/stages-DY-fQKmo.mjs.map +1 -0
- package/dist/target/public.cjs +3 -3
- package/dist/target/public.d.cts +2 -2
- package/dist/target/public.d.mts +2 -2
- package/dist/target/public.mjs +3 -3
- package/dist/{terminal-DuapRxh6.cjs → terminal-8XngdSTo.cjs} +6 -5
- package/dist/terminal-8XngdSTo.cjs.map +1 -0
- package/dist/{terminal-D8TPK7o9.mjs → terminal-Dtd6BZX9.mjs} +6 -5
- package/dist/terminal-Dtd6BZX9.mjs.map +1 -0
- package/dist/{types-ZHuZ89hv.d.mts → types-B3Gqs175.d.mts} +19 -23
- package/dist/types-B3Gqs175.d.mts.map +1 -0
- package/dist/{types-NqX1Hz4P.d.cts → types-Bk9st2cd.d.cts} +19 -23
- package/dist/types-Bk9st2cd.d.cts.map +1 -0
- package/dist/vitest.cjs +1 -1
- package/dist/vitest.mjs +1 -1
- package/dist/workspace/index.cjs +1 -1
- package/dist/workspace/index.d.cts +2 -2
- package/dist/workspace/index.d.mts +2 -2
- package/dist/workspace/index.mjs +1 -1
- package/dist/{workspace-CJ0lKFq-.mjs → workspace-Bzw7Zs82.mjs} +34 -33
- package/dist/workspace-Bzw7Zs82.mjs.map +1 -0
- package/dist/{workspace-CwW3Gkru.cjs → workspace-CHOB2Xg3.cjs} +34 -33
- package/dist/workspace-CHOB2Xg3.cjs.map +1 -0
- package/package.json +15 -15
- package/dist/EndpointGenerator-CVc6Oi1Y.mjs.map +0 -1
- package/dist/EndpointGenerator-CwLjBCFE.cjs.map +0 -1
- package/dist/GoDaddyProvider-DSStJVAv.mjs.map +0 -1
- package/dist/GoDaddyProvider-DqZ1qD_F.cjs.map +0 -1
- package/dist/SubscriberGenerator-BPqQf8fB.mjs.map +0 -1
- package/dist/SubscriberGenerator-BVn7cQ-2.cjs.map +0 -1
- package/dist/add-CNMF0Q3m.cjs.map +0 -1
- package/dist/add-DHk1roh_.mjs.map +0 -1
- package/dist/aws-B-6uEhgP.mjs.map +0 -1
- package/dist/aws-BTawF0F-.cjs.map +0 -1
- package/dist/awsStore-7VmS_cZR.cjs +0 -54
- package/dist/awsStore-7VmS_cZR.cjs.map +0 -1
- package/dist/awsStore-B529csle.mjs +0 -43
- package/dist/awsStore-B529csle.mjs.map +0 -1
- package/dist/compose-Bhmf0n4o.mjs.map +0 -1
- package/dist/compose-CvpU6ooi.cjs.map +0 -1
- package/dist/credentialSchemas-BJqRJNK4.mjs.map +0 -1
- package/dist/credentialSchemas-DCR4Wd1W.cjs.map +0 -1
- package/dist/credentials-BKfIugu2.cjs.map +0 -1
- package/dist/databases-BY-pEImp.cjs.map +0 -1
- package/dist/databases-CzszQV0N.mjs.map +0 -1
- package/dist/define-DR8xGYfL.mjs.map +0 -1
- package/dist/define-DzRz8FgH.cjs.map +0 -1
- package/dist/deploy-CuHasEA4.cjs.map +0 -1
- package/dist/deploy-QNtx_eWR.mjs.map +0 -1
- package/dist/discover-BPelzeGW.mjs.map +0 -1
- package/dist/discover-D1It5r_h.cjs.map +0 -1
- package/dist/encryption-BrEef7Jk.mjs.map +0 -1
- package/dist/encryption-CjYdUb2s.cjs.map +0 -1
- package/dist/engine-2h4k5ICq.mjs.map +0 -1
- package/dist/engine-BhJ7ZP9K.cjs.map +0 -1
- package/dist/github-B5Bw4HIu.cjs.map +0 -1
- package/dist/github-BCDF6xVH.mjs.map +0 -1
- package/dist/migrate-CGaancHY.cjs.map +0 -1
- package/dist/migrate-DWZz9kah.mjs.map +0 -1
- package/dist/migrate-DbtcuOr_.mjs.map +0 -1
- package/dist/migrate-q2YYLJLE.cjs.map +0 -1
- package/dist/provider-C9_-45d5.cjs.map +0 -1
- package/dist/provider-q4lsYzYG.mjs.map +0 -1
- package/dist/ready-BpNbORRB.cjs.map +0 -1
- package/dist/ready-b6vm0-W-.mjs.map +0 -1
- package/dist/resolve-Cns0v6dN.cjs.map +0 -1
- package/dist/resolve-DNg0icnh.mjs.map +0 -1
- package/dist/rollback-CFrNLmxs.mjs.map +0 -1
- package/dist/rollback-UIjS25F1.cjs.map +0 -1
- package/dist/runtime-CN_kmqxo.d.cts.map +0 -1
- package/dist/runtime-Cjvon3oj.d.mts.map +0 -1
- package/dist/sandbox-CL--ZDui.cjs.map +0 -1
- package/dist/sandbox-Dm247NGx.mjs.map +0 -1
- package/dist/sandbox-M8UnLhXE.d.cts.map +0 -1
- package/dist/sandbox-M8UnLhXE.d.mts.map +0 -1
- package/dist/secretsManager-Chs9VV2r.mjs.map +0 -1
- package/dist/secretsManager-DcMlHnRC.cjs.map +0 -1
- package/dist/seeds-CkIPFGNO.cjs.map +0 -1
- package/dist/seeds-odfgSCmu.mjs.map +0 -1
- package/dist/sniffer-BTtX3NUM.mjs.map +0 -1
- package/dist/sst-BgcOsaBi.cjs.map +0 -1
- package/dist/sst-CJzvyrEz.mjs.map +0 -1
- package/dist/stages-CUn6gvXL.cjs.map +0 -1
- package/dist/stages-CnZRYmkI.mjs.map +0 -1
- package/dist/terminal-D8TPK7o9.mjs.map +0 -1
- package/dist/terminal-DuapRxh6.cjs.map +0 -1
- package/dist/types-NqX1Hz4P.d.cts.map +0 -1
- package/dist/types-ZHuZ89hv.d.mts.map +0 -1
- package/dist/workspace-CJ0lKFq-.mjs.map +0 -1
- package/dist/workspace-CwW3Gkru.cjs.map +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,26 +1,28 @@
|
|
|
1
1
|
#!/usr/bin/env -S npx tsx
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const require_rolldown_runtime = require("./rolldown-runtime-C0BPl7ul.cjs");
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const require_errors = require("./errors-DMC4Umsb.cjs");
|
|
5
|
+
const require_credentials = require("./credentials-QBu7VgaQ.cjs");
|
|
6
|
+
const require_discover = require("./discover-DPgu-ScS.cjs");
|
|
6
7
|
const require_derive = require("./derive-DAbo49sm.cjs");
|
|
7
|
-
const require_workspace = require("./workspace-
|
|
8
|
+
const require_workspace = require("./workspace-CHOB2Xg3.cjs");
|
|
8
9
|
const require_config = require("./config.cjs");
|
|
9
|
-
const require_seeds = require("./seeds-
|
|
10
|
-
const require_EndpointGenerator = require("./EndpointGenerator-
|
|
10
|
+
const require_seeds = require("./seeds-BKoJYsE7.cjs");
|
|
11
|
+
const require_EndpointGenerator = require("./EndpointGenerator-De03t1hd.cjs");
|
|
11
12
|
const require_openapi = require("./openapi.cjs");
|
|
12
|
-
const require_SubscriberGenerator = require("./SubscriberGenerator-
|
|
13
|
+
const require_SubscriberGenerator = require("./SubscriberGenerator-Dvz7EzqK.cjs");
|
|
13
14
|
const require_appPorts = require("./appPorts-Cu79hJF6.cjs");
|
|
14
|
-
const require_drivers = require("./drivers-
|
|
15
|
+
const require_drivers = require("./drivers-DDojgzz0.cjs");
|
|
15
16
|
const require_emit = require("./emit-Dmc1nvdS.cjs");
|
|
16
|
-
const require_local = require("./local-
|
|
17
|
-
const require_sniffer = require("./sniffer-
|
|
18
|
-
const require_deploy = require("./deploy-
|
|
19
|
-
const require_compose = require("./compose-
|
|
20
|
-
const require_credentialSchemas = require("./credentialSchemas-
|
|
21
|
-
const require_LocalStateStore = require("./LocalStateStore-
|
|
17
|
+
const require_local = require("./local-B61kUh0w.cjs");
|
|
18
|
+
const require_sniffer = require("./sniffer-Dq5BS98f.cjs");
|
|
19
|
+
const require_deploy = require("./deploy-6ToUHJmM.cjs");
|
|
20
|
+
const require_compose = require("./compose-fnYmPk_c.cjs");
|
|
21
|
+
const require_credentialSchemas = require("./credentialSchemas-CAPKFkrG.cjs");
|
|
22
|
+
const require_LocalStateStore = require("./LocalStateStore-BMfseje2.cjs");
|
|
22
23
|
const require_utils = require("./utils-D2Nk1Nv2.cjs");
|
|
23
|
-
|
|
24
|
+
require("./awsStore-B5We7bMg.cjs");
|
|
25
|
+
const require_ready = require("./ready-D3PIjx3S.cjs");
|
|
24
26
|
let node_path = require("node:path");
|
|
25
27
|
let commander = require("commander");
|
|
26
28
|
let node_process = require("node:process");
|
|
@@ -53,7 +55,7 @@ crypto = require_rolldown_runtime.__toESM(crypto, 1);
|
|
|
53
55
|
let _geekmidas_constructs_functions = require("@geekmidas/constructs/functions");
|
|
54
56
|
let _geekmidas_constructs_topic = require("@geekmidas/constructs/topic");
|
|
55
57
|
//#region package.json
|
|
56
|
-
var version = "10.0.0-alpha.
|
|
58
|
+
var version = "10.0.0-alpha.92";
|
|
57
59
|
//#endregion
|
|
58
60
|
//#region src/prompt.ts
|
|
59
61
|
/**
|
|
@@ -64,7 +66,7 @@ var version = "10.0.0-alpha.90";
|
|
|
64
66
|
* named error instead, and the command decides whether to ask.
|
|
65
67
|
*/
|
|
66
68
|
/** A prompt was needed with no terminal to ask at. */
|
|
67
|
-
var PromptNeedsTerminal = class extends
|
|
69
|
+
var PromptNeedsTerminal = class extends require_errors.GkmError {
|
|
68
70
|
question;
|
|
69
71
|
instead;
|
|
70
72
|
constructor(question, instead) {
|
|
@@ -136,7 +138,7 @@ const logger$8 = console;
|
|
|
136
138
|
* Validate Dokploy token by making a test API call
|
|
137
139
|
*/
|
|
138
140
|
async function validateDokployToken(endpoint, token) {
|
|
139
|
-
const { DokployApi } = await Promise.resolve().then(() => require("./sniffer-
|
|
141
|
+
const { DokployApi } = await Promise.resolve().then(() => require("./sniffer-Dq5BS98f.cjs")).then((n) => n.dokploy_api_exports);
|
|
140
142
|
return new DokployApi({
|
|
141
143
|
baseUrl: endpoint,
|
|
142
144
|
token
|
|
@@ -520,7 +522,7 @@ async function isTrusted(url) {
|
|
|
520
522
|
}
|
|
521
523
|
}
|
|
522
524
|
/** The edge has not run, so there is no authority to trust yet. */
|
|
523
|
-
var NoLocalAuthority = class extends
|
|
525
|
+
var NoLocalAuthority = class extends require_errors.GkmError {
|
|
524
526
|
path;
|
|
525
527
|
constructor(path) {
|
|
526
528
|
super(`No local certificate authority at ${path}. It is generated the first time the edge starts, so run "gkm setup" (or "gkm dev") once — and if this project declares no file server, nothing needs one.`);
|
|
@@ -529,7 +531,7 @@ var NoLocalAuthority = class extends Error {
|
|
|
529
531
|
}
|
|
530
532
|
};
|
|
531
533
|
/** A platform with no trust store this knows how to write to. */
|
|
532
|
-
var UnsupportedPlatform = class extends
|
|
534
|
+
var UnsupportedPlatform = class extends require_errors.GkmError {
|
|
533
535
|
platform;
|
|
534
536
|
certificate;
|
|
535
537
|
constructor(platform, certificate) {
|
|
@@ -614,7 +616,7 @@ const SIGNED_IN = [
|
|
|
614
616
|
"localstack"
|
|
615
617
|
];
|
|
616
618
|
/** Nothing has generated this workspace's local logins yet. */
|
|
617
|
-
var NoLocalCredentials = class extends
|
|
619
|
+
var NoLocalCredentials = class extends require_errors.GkmError {
|
|
618
620
|
workspace;
|
|
619
621
|
constructor(workspace) {
|
|
620
622
|
super(`'${workspace}' has no local logins on this machine yet: they are generated the first time gkm dev, gkm test or gkm setup starts its services. Run one of them, then this again.`);
|
|
@@ -664,7 +666,7 @@ const DISCOVERY_QUIET_ENV = "GKM_DISCOVERY_QUIET";
|
|
|
664
666
|
/** The route everything is served under. */
|
|
665
667
|
const BASE = "/__gkm";
|
|
666
668
|
/** `GKM_DISCOVERY_PORT` is set to something that is not a port. */
|
|
667
|
-
var InvalidDiscoveryPort = class extends
|
|
669
|
+
var InvalidDiscoveryPort = class extends require_errors.GkmError {
|
|
668
670
|
value;
|
|
669
671
|
constructor(value) {
|
|
670
672
|
super(`${DISCOVERY_PORT_ENV}=${value} is not a port. Set it to a number from 0 to 65535 (0 serves discovery on a free port of its own), or unset it to use dev.discoveryPort.`);
|
|
@@ -1754,7 +1756,7 @@ function closeFakes(served) {
|
|
|
1754
1756
|
//#region src/exec/index.ts
|
|
1755
1757
|
const logger$6 = console;
|
|
1756
1758
|
/** `gkm exec` was given nothing to run. */
|
|
1757
|
-
var NoCommandSpecified = class extends
|
|
1759
|
+
var NoCommandSpecified = class extends require_errors.GkmError {
|
|
1758
1760
|
constructor() {
|
|
1759
1761
|
super("No command specified. Usage: gkm exec -- <command>");
|
|
1760
1762
|
this.name = "NoCommandSpecified";
|
|
@@ -2330,9 +2332,9 @@ async function workspaceDevCommand(configured, options) {
|
|
|
2330
2332
|
for (const { id, port } of fakes) logger$5.log(`🎭 ${id} fake: http://localhost:${port}`);
|
|
2331
2333
|
logger$5.log(options.migrate || options.seed ? "🗄️ Migrating the databases" : "🗄️ Checking for pending migrations");
|
|
2332
2334
|
if (options.migrate || options.seed) {
|
|
2333
|
-
const { prepareDevDatabases } = await Promise.resolve().then(() => require("./migrate-
|
|
2335
|
+
const { prepareDevDatabases } = await Promise.resolve().then(() => require("./migrate-D3VVsiHp.cjs"));
|
|
2334
2336
|
await prepareDevDatabases(workspace, reconciled.env, { seed: !!options.seed });
|
|
2335
|
-
} else await Promise.resolve().then(() => require("./migrate-
|
|
2337
|
+
} else await Promise.resolve().then(() => require("./migrate-D3VVsiHp.cjs")).then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
|
|
2336
2338
|
logger$5.log(`⚠️ Could not check for pending migrations: ${error instanceof Error ? error.message : String(error)}`);
|
|
2337
2339
|
});
|
|
2338
2340
|
const appUrls = {};
|
|
@@ -2742,7 +2744,7 @@ function tsxCommand(appRoot, args) {
|
|
|
2742
2744
|
}
|
|
2743
2745
|
}
|
|
2744
2746
|
/** A port this app must serve on is held by something else. */
|
|
2745
|
-
var DevPortInUse = class extends
|
|
2747
|
+
var DevPortInUse = class extends require_errors.GkmError {
|
|
2746
2748
|
port;
|
|
2747
2749
|
holder;
|
|
2748
2750
|
constructor(port, holder) {
|
|
@@ -2759,7 +2761,7 @@ var DevPortInUse = class extends Error {
|
|
|
2759
2761
|
* Only these are refused: a port another project holds is moved off instead
|
|
2760
2762
|
* (see `assignAppPorts`), but moving off our own would start a second copy.
|
|
2761
2763
|
*/
|
|
2762
|
-
var WorkspacePortsInUse = class extends
|
|
2764
|
+
var WorkspacePortsInUse = class extends require_errors.GkmError {
|
|
2763
2765
|
held;
|
|
2764
2766
|
constructor(held) {
|
|
2765
2767
|
super(`This workspace's apps are already running:\n${held.map(({ app, port, holder }) => ` ${app}: ${port} — ${require_appPorts.describeHolder(holder)}`).join("\n")}\nA previous \`gkm dev\` left them behind. Stop them (kill the pids above) and start again. Nothing was started.`);
|
|
@@ -3216,7 +3218,7 @@ const SUPERSEDED_OUTPUT = [
|
|
|
3216
3218
|
function isMainProvider(value) {
|
|
3217
3219
|
return value === "aws" || value === "server";
|
|
3218
3220
|
}
|
|
3219
|
-
var UnknownBuildProvider = class extends
|
|
3221
|
+
var UnknownBuildProvider = class extends require_errors.GkmError {
|
|
3220
3222
|
provider;
|
|
3221
3223
|
constructor(provider) {
|
|
3222
3224
|
super(`'${provider}' is not a build target. Pass --provider aws or --provider server, or leave it out to build for where gkm.config.ts deploys.`);
|
|
@@ -3225,7 +3227,7 @@ var UnknownBuildProvider = class extends Error {
|
|
|
3225
3227
|
}
|
|
3226
3228
|
};
|
|
3227
3229
|
/** `--cache` named something that is not a cache backend. */
|
|
3228
|
-
var UnknownCacheBackend = class extends
|
|
3230
|
+
var UnknownCacheBackend = class extends require_errors.GkmError {
|
|
3229
3231
|
backend;
|
|
3230
3232
|
constructor(backend) {
|
|
3231
3233
|
super(`'${backend}' is not a cache backend. Pass --cache upstash, elasticache, db or redis, or leave it out to register the deploy target's.`);
|
|
@@ -3385,7 +3387,7 @@ async function buildApp(input) {
|
|
|
3385
3387
|
...production,
|
|
3386
3388
|
...telemetry ? { telemetry } : {}
|
|
3387
3389
|
});
|
|
3388
|
-
const { bundleServer } = await Promise.resolve().then(() => require("./bundler-
|
|
3390
|
+
const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CXQDrhzN.cjs"));
|
|
3389
3391
|
await bundleServer({
|
|
3390
3392
|
entryPoint,
|
|
3391
3393
|
outputDir: (0, node_path.join)(outputDir, "dist"),
|
|
@@ -3530,7 +3532,7 @@ async function buildWorkers(input) {
|
|
|
3530
3532
|
});
|
|
3531
3533
|
logger$4.log(`Generated worker ${worker.id}: ${crons.length} crons, ${queues.length} queues, ${subscribers.length} subscribers`);
|
|
3532
3534
|
if (!input.bundle) continue;
|
|
3533
|
-
const { bundleServer } = await Promise.resolve().then(() => require("./bundler-
|
|
3535
|
+
const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CXQDrhzN.cjs"));
|
|
3534
3536
|
const outfile = require_seeds.workerBundleName(worker.id);
|
|
3535
3537
|
await bundleServer({
|
|
3536
3538
|
entryPoint,
|
|
@@ -3616,7 +3618,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
|
|
|
3616
3618
|
let masterKey;
|
|
3617
3619
|
if (context.production?.bundle && !skipBundle) {
|
|
3618
3620
|
logger$4.log(`\n📦 Bundling production server...`);
|
|
3619
|
-
const { bundleServer } = await Promise.resolve().then(() => require("./bundler-
|
|
3621
|
+
const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CXQDrhzN.cjs"));
|
|
3620
3622
|
const allConstructs = [
|
|
3621
3623
|
...endpoints.map((e) => e.construct),
|
|
3622
3624
|
...functions.map((f) => f.construct),
|
|
@@ -3854,7 +3856,7 @@ function formatRoutes(routes) {
|
|
|
3854
3856
|
* `deploy()` as any other target, so there is one way a stack comes up.
|
|
3855
3857
|
*/
|
|
3856
3858
|
/** `--build` and `--pull` together ask for two different things. */
|
|
3857
|
-
var ComposeModeConflict = class extends
|
|
3859
|
+
var ComposeModeConflict = class extends require_errors.GkmError {
|
|
3858
3860
|
constructor() {
|
|
3859
3861
|
super("--build and --pull ask for opposite things: build images from this checkout, or pull a tag CI pushed. Pass one of them.");
|
|
3860
3862
|
this.name = "ComposeModeConflict";
|
|
@@ -3936,12 +3938,37 @@ async function composeCommand(options, deps = {}) {
|
|
|
3936
3938
|
deploy: result
|
|
3937
3939
|
};
|
|
3938
3940
|
}
|
|
3941
|
+
//#endregion
|
|
3942
|
+
//#region src/debug.ts
|
|
3943
|
+
let _debug = false;
|
|
3944
|
+
/**
|
|
3945
|
+
* Enable debug mode globally.
|
|
3946
|
+
* When enabled, verbose error details are shown everywhere.
|
|
3947
|
+
*/
|
|
3948
|
+
function enableDebug() {
|
|
3949
|
+
_debug = true;
|
|
3950
|
+
}
|
|
3951
|
+
/**
|
|
3952
|
+
* Check if debug mode is active.
|
|
3953
|
+
* Activated by `--debug` flag or `GKM_DEBUG=1` env var.
|
|
3954
|
+
*/
|
|
3955
|
+
function isDebug() {
|
|
3956
|
+
return _debug || process.env.GKM_DEBUG === "1";
|
|
3957
|
+
}
|
|
3939
3958
|
/**
|
|
3940
3959
|
* Format a fatal error for display.
|
|
3941
|
-
*
|
|
3960
|
+
*
|
|
3961
|
+
* An error gkm raised on purpose ({@link isGkmError}) is `Name: message` —
|
|
3962
|
+
* its message is the answer, and a stack would only point into gkm. Anything
|
|
3963
|
+
* else is unexpected, and prints its stack and every cause beneath it. Debug
|
|
3964
|
+
* mode prints the stack of both.
|
|
3942
3965
|
*/
|
|
3943
3966
|
function formatError(error) {
|
|
3944
3967
|
if (!(error instanceof Error)) return String(error);
|
|
3968
|
+
if (require_errors.isGkmError(error) && !isDebug()) {
|
|
3969
|
+
const cause = error.cause;
|
|
3970
|
+
return cause === void 0 ? `${error.name}: ${error.message}` : `${error.name}: ${error.message}\n\nCaused by: ${cause instanceof Error ? `${cause.name}: ${cause.message}` : String(cause)}`;
|
|
3971
|
+
}
|
|
3945
3972
|
let output = error.stack ?? error.message;
|
|
3946
3973
|
let cause = error.cause;
|
|
3947
3974
|
while (cause) if (cause instanceof Error) {
|
|
@@ -3953,6 +3980,14 @@ function formatError(error) {
|
|
|
3953
3980
|
}
|
|
3954
3981
|
return output;
|
|
3955
3982
|
}
|
|
3983
|
+
/**
|
|
3984
|
+
* End a command that failed: print the error ({@link formatError}) on stderr
|
|
3985
|
+
* and exit 1. What every command's action does with what it throws.
|
|
3986
|
+
*/
|
|
3987
|
+
function exitWithError(error) {
|
|
3988
|
+
console.error(formatError(error));
|
|
3989
|
+
process.exit(1);
|
|
3990
|
+
}
|
|
3956
3991
|
//#endregion
|
|
3957
3992
|
//#region src/deploy/init.ts
|
|
3958
3993
|
const logger$3 = console;
|
|
@@ -5318,25 +5353,25 @@ function loadPackageJson() {
|
|
|
5318
5353
|
* Run: pnpm --filter @geekmidas/cli sync-versions
|
|
5319
5354
|
*/
|
|
5320
5355
|
const GEEKMIDAS_VERSIONS = {
|
|
5321
|
-
"@geekmidas/audit": "~10.0.0-alpha.
|
|
5322
|
-
"@geekmidas/auth": "~10.0.0-alpha.
|
|
5323
|
-
"@geekmidas/cache": "~10.0.0-alpha.
|
|
5324
|
-
"@geekmidas/client": "~10.0.0-alpha.
|
|
5325
|
-
"@geekmidas/cloud": "~10.0.0-alpha.
|
|
5326
|
-
"@geekmidas/constructs": "~10.0.0-alpha.
|
|
5327
|
-
"@geekmidas/db": "~10.0.0-alpha.
|
|
5328
|
-
"@geekmidas/emailkit": "~10.0.0-alpha.
|
|
5329
|
-
"@geekmidas/envkit": "~10.0.0-alpha.
|
|
5330
|
-
"@geekmidas/errors": "~10.0.0-alpha.
|
|
5331
|
-
"@geekmidas/events": "~10.0.0-alpha.
|
|
5332
|
-
"@geekmidas/logger": "~10.0.0-alpha.
|
|
5333
|
-
"@geekmidas/manifest": "~10.0.0-alpha.
|
|
5334
|
-
"@geekmidas/rate-limit": "~10.0.0-alpha.
|
|
5335
|
-
"@geekmidas/schema": "~10.0.0-alpha.
|
|
5336
|
-
"@geekmidas/services": "~10.0.0-alpha.
|
|
5337
|
-
"@geekmidas/storage": "~10.0.0-alpha.
|
|
5338
|
-
"@geekmidas/telescope": "~10.0.0-alpha.
|
|
5339
|
-
"@geekmidas/testkit": "~10.0.0-alpha.
|
|
5356
|
+
"@geekmidas/audit": "~10.0.0-alpha.92",
|
|
5357
|
+
"@geekmidas/auth": "~10.0.0-alpha.92",
|
|
5358
|
+
"@geekmidas/cache": "~10.0.0-alpha.92",
|
|
5359
|
+
"@geekmidas/client": "~10.0.0-alpha.92",
|
|
5360
|
+
"@geekmidas/cloud": "~10.0.0-alpha.92",
|
|
5361
|
+
"@geekmidas/constructs": "~10.0.0-alpha.92",
|
|
5362
|
+
"@geekmidas/db": "~10.0.0-alpha.92",
|
|
5363
|
+
"@geekmidas/emailkit": "~10.0.0-alpha.92",
|
|
5364
|
+
"@geekmidas/envkit": "~10.0.0-alpha.92",
|
|
5365
|
+
"@geekmidas/errors": "~10.0.0-alpha.92",
|
|
5366
|
+
"@geekmidas/events": "~10.0.0-alpha.92",
|
|
5367
|
+
"@geekmidas/logger": "~10.0.0-alpha.92",
|
|
5368
|
+
"@geekmidas/manifest": "~10.0.0-alpha.92",
|
|
5369
|
+
"@geekmidas/rate-limit": "~10.0.0-alpha.92",
|
|
5370
|
+
"@geekmidas/schema": "~10.0.0-alpha.92",
|
|
5371
|
+
"@geekmidas/services": "~10.0.0-alpha.92",
|
|
5372
|
+
"@geekmidas/storage": "~10.0.0-alpha.92",
|
|
5373
|
+
"@geekmidas/telescope": "~10.0.0-alpha.92",
|
|
5374
|
+
"@geekmidas/testkit": "~10.0.0-alpha.92",
|
|
5340
5375
|
"@geekmidas/cli": `~${loadPackageJson().version}`
|
|
5341
5376
|
};
|
|
5342
5377
|
//#endregion
|
|
@@ -5737,7 +5772,7 @@ const COMMIT = /^[0-9a-f]{40}$/;
|
|
|
5737
5772
|
* The `uses:` value for the stages action, with a comment saying which CLI
|
|
5738
5773
|
* release the pinned commit is.
|
|
5739
5774
|
*/
|
|
5740
|
-
function stagesActionUses(commit = "
|
|
5775
|
+
function stagesActionUses(commit = "446c06603533dd304ee5655661784b7a4f07e2b7", version = cliVersion()) {
|
|
5741
5776
|
return commit && COMMIT.test(commit) ? `${STAGES_ACTION}@${commit} # @geekmidas/cli ${version}` : `${STAGES_ACTION}@main # pin to a commit SHA: see the action's README`;
|
|
5742
5777
|
}
|
|
5743
5778
|
//#endregion
|
|
@@ -7248,7 +7283,7 @@ ${inputs.join("\n")}
|
|
|
7248
7283
|
* An SST scaffold asked for without a region. `init` always resolves one —
|
|
7249
7284
|
* asked, `--region`, or eu-west-1 under `--yes` — so this is a caller's bug.
|
|
7250
7285
|
*/
|
|
7251
|
-
var SstNeedsRegion = class extends
|
|
7286
|
+
var SstNeedsRegion = class extends require_errors.GkmError {
|
|
7252
7287
|
constructor() {
|
|
7253
7288
|
super("An SST deploy needs a region: pass --region, e.g. eu-west-1.");
|
|
7254
7289
|
this.name = "SstNeedsRegion";
|
|
@@ -10688,7 +10723,7 @@ function resolveStages(options, answers) {
|
|
|
10688
10723
|
return stages;
|
|
10689
10724
|
}
|
|
10690
10725
|
/** `--deploy` naming a target init has no scaffold for. */
|
|
10691
|
-
var UnknownDeployTarget = class extends
|
|
10726
|
+
var UnknownDeployTarget = class extends require_errors.GkmError {
|
|
10692
10727
|
target;
|
|
10693
10728
|
known;
|
|
10694
10729
|
constructor(target, known) {
|
|
@@ -10707,7 +10742,7 @@ function defaultRegistry(name) {
|
|
|
10707
10742
|
return `ghcr.io/${(name ?? "my-org").toLowerCase()}`;
|
|
10708
10743
|
}
|
|
10709
10744
|
/** `--region` that is not shaped like one, e.g. `europe` for `eu-west-1`. */
|
|
10710
|
-
var NotAnAwsRegion = class extends
|
|
10745
|
+
var NotAnAwsRegion = class extends require_errors.GkmError {
|
|
10711
10746
|
region;
|
|
10712
10747
|
constructor(region) {
|
|
10713
10748
|
super(`"${region}" is not an AWS region. Use one like eu-west-1.`);
|
|
@@ -10837,7 +10872,7 @@ async function secretsSetCommand(key, value, options) {
|
|
|
10837
10872
|
logger$2.log(`\n✓ Secret "${key}" set for stage "${stage}" (${store.name})`);
|
|
10838
10873
|
}
|
|
10839
10874
|
/** `gkm secrets:unset` for a key the stage does not hold. */
|
|
10840
|
-
var SecretNotSet = class extends
|
|
10875
|
+
var SecretNotSet = class extends require_errors.GkmError {
|
|
10841
10876
|
key;
|
|
10842
10877
|
stage;
|
|
10843
10878
|
constructor(key, stage) {
|
|
@@ -10848,7 +10883,7 @@ var SecretNotSet = class extends Error {
|
|
|
10848
10883
|
}
|
|
10849
10884
|
};
|
|
10850
10885
|
/** `gkm secrets:unset` on a stage that has no secrets at all. */
|
|
10851
|
-
var StageSecretsNotFound = class extends
|
|
10886
|
+
var StageSecretsNotFound = class extends require_errors.GkmError {
|
|
10852
10887
|
stage;
|
|
10853
10888
|
constructor(stage) {
|
|
10854
10889
|
super(`The stage '${stage}' has no secrets, so there is nothing to remove.`);
|
|
@@ -11055,8 +11090,8 @@ async function composeStageHosts(options) {
|
|
|
11055
11090
|
...options.profile ? { profile: options.profile } : {},
|
|
11056
11091
|
...options.home ? { home: options.home } : {}
|
|
11057
11092
|
})).read(stage);
|
|
11058
|
-
const { deployedStackSecrets } = await Promise.resolve().then(() => require("./compose-
|
|
11059
|
-
const { composeStack } = await Promise.resolve().then(() => require("./compose-
|
|
11093
|
+
const { deployedStackSecrets } = await Promise.resolve().then(() => require("./compose-fnYmPk_c.cjs")).then((n) => n.secrets_exports);
|
|
11094
|
+
const { composeStack } = await Promise.resolve().then(() => require("./compose-fnYmPk_c.cjs")).then((n) => n.stack_exports);
|
|
11060
11095
|
const { secrets } = deployedStackSecrets(workspace, stage, stored, manifest);
|
|
11061
11096
|
const stack = composeStack({
|
|
11062
11097
|
workspace,
|
|
@@ -11150,7 +11185,6 @@ async function provisionStageDns(options) {
|
|
|
11150
11185
|
//#endregion
|
|
11151
11186
|
//#region src/setup/index.ts
|
|
11152
11187
|
var setup_exports = /* @__PURE__ */ require_rolldown_runtime.__exportAll({
|
|
11153
|
-
StageSecretsUnreadable: () => StageSecretsUnreadable,
|
|
11154
11188
|
createFreshWorkspaceSecrets: () => createFreshWorkspaceSecrets,
|
|
11155
11189
|
ensureStageSecrets: () => ensureStageSecrets,
|
|
11156
11190
|
reconcileSecrets: () => reconcileSecrets,
|
|
@@ -11182,7 +11216,7 @@ async function setupCommand(options = {}) {
|
|
|
11182
11216
|
logger$1.log(`📦 Workspace: ${workspace.name}`);
|
|
11183
11217
|
logger$1.log(`📱 Apps: ${Object.keys(workspace.apps).join(", ")}`);
|
|
11184
11218
|
logger$1.log(`🔑 Stage: ${stage}\n`);
|
|
11185
|
-
if (!local) assertStageServer(workspace, stage, await
|
|
11219
|
+
if (!local) assertStageServer(workspace, stage, await (await require_seeds.secretsStoreFor(workspace, stage, { ...options.profile ? { profile: options.profile } : {} })).read(stage));
|
|
11186
11220
|
if (!local && options.dryRun) {
|
|
11187
11221
|
await provisionDeployed(workspace, stage, options);
|
|
11188
11222
|
return;
|
|
@@ -11201,48 +11235,6 @@ async function setupCommand(options = {}) {
|
|
|
11201
11235
|
}
|
|
11202
11236
|
printSummary(workspace, stage);
|
|
11203
11237
|
}
|
|
11204
|
-
/** Where each AWS store keeps a stage's secrets, as a person reads it. */
|
|
11205
|
-
const AWS_STORES = {
|
|
11206
|
-
ssm: "SSM Parameter Store",
|
|
11207
|
-
"secrets-manager": "Secrets Manager"
|
|
11208
|
-
};
|
|
11209
|
-
/**
|
|
11210
|
-
* A deployed stage's secrets are kept in its AWS account, and no AWS
|
|
11211
|
-
* credentials were found to read them with.
|
|
11212
|
-
*
|
|
11213
|
-
* Raised before any provider runs: even a dry run reads the stage's secrets,
|
|
11214
|
-
* since its plan needs the server they name (`GKM_SERVER_IPV4`).
|
|
11215
|
-
*/
|
|
11216
|
-
var StageSecretsUnreadable = class extends Error {
|
|
11217
|
-
stage;
|
|
11218
|
-
store;
|
|
11219
|
-
profile;
|
|
11220
|
-
dryRun;
|
|
11221
|
-
constructor(stage, store, profile, dryRun, cause) {
|
|
11222
|
-
const where = AWS_STORES[store] ?? `the '${store}' store`;
|
|
11223
|
-
const command = `gkm setup --stage ${stage}${dryRun ? " --dry-run" : ""}`;
|
|
11224
|
-
super(`The '${stage}' stage's secrets are kept in ${where}, in the stage's AWS account, and ` + (profile ? `the AWS profile '${profile}' has no credentials to read them with. Sign in to it (aws sso login --profile ${profile}) or name another: ${command} --profile <profile>.` : `no AWS credentials were found to read them with. Name the account's profile: ${command} --profile <profile>, or AWS_PROFILE=<profile> ${command}.`) + (dryRun ? " A dry run still reads them: its plan needs the server the stage names (GKM_SERVER_IPV4)." : ""), { cause });
|
|
11225
|
-
this.stage = stage;
|
|
11226
|
-
this.store = store;
|
|
11227
|
-
this.profile = profile;
|
|
11228
|
-
this.dryRun = dryRun;
|
|
11229
|
-
this.name = "StageSecretsUnreadable";
|
|
11230
|
-
}
|
|
11231
|
-
};
|
|
11232
|
-
/**
|
|
11233
|
-
* The stage's secrets from its store, refused with
|
|
11234
|
-
* {@link StageSecretsUnreadable} when there are no AWS credentials to read
|
|
11235
|
-
* them — matched by the SDK's error name, its message being free to change.
|
|
11236
|
-
* Any other failure is the store's own, and passes through.
|
|
11237
|
-
*/
|
|
11238
|
-
async function readStageSecrets(store, stage, options) {
|
|
11239
|
-
try {
|
|
11240
|
-
return await store.read(stage);
|
|
11241
|
-
} catch (error) {
|
|
11242
|
-
if (error?.name === "CredentialsProviderError") throw new StageSecretsUnreadable(stage, store.name, options.profile, options.dryRun === true, error);
|
|
11243
|
-
throw error;
|
|
11244
|
-
}
|
|
11245
|
-
}
|
|
11246
11238
|
/**
|
|
11247
11239
|
* A deployed stage's providers: each one's `ensure()`, in the stage's own
|
|
11248
11240
|
* account, its keys written into the stage's secrets.
|
|
@@ -11485,7 +11477,7 @@ async function readReady(path) {
|
|
|
11485
11477
|
}
|
|
11486
11478
|
}
|
|
11487
11479
|
/** A name recorded for the test stage without the test stage's suffix. */
|
|
11488
|
-
var NotATestDatabase = class extends
|
|
11480
|
+
var NotATestDatabase = class extends require_errors.GkmError {
|
|
11489
11481
|
database;
|
|
11490
11482
|
constructor(database) {
|
|
11491
11483
|
super(`Refusing to drop '${database}': only the test stage's databases (named '…_${require_workspace.TEST_STAGE}') are dropped after a suite. Delete ${require_ready.TEST_READY_FILE} if it was edited by hand.`);
|
|
@@ -11622,8 +11614,8 @@ function testDatabases(reconciled) {
|
|
|
11622
11614
|
* starts without the reference data the app needs.
|
|
11623
11615
|
*/
|
|
11624
11616
|
async function migrateTestStage(workspace, env) {
|
|
11625
|
-
const { migrateAndSeed } = await Promise.resolve().then(() => require("./migrate-
|
|
11626
|
-
const { discover } = await Promise.resolve().then(() => require("./discover-
|
|
11617
|
+
const { migrateAndSeed } = await Promise.resolve().then(() => require("./migrate-D3VVsiHp.cjs"));
|
|
11618
|
+
const { discover } = await Promise.resolve().then(() => require("./discover-DPgu-ScS.cjs")).then((n) => n.discover_exports);
|
|
11627
11619
|
const sources = {};
|
|
11628
11620
|
const manifest = await discover({
|
|
11629
11621
|
patterns: require_seeds.constructGlobs(workspace),
|
|
@@ -11641,7 +11633,7 @@ async function migrateTestStage(workspace, env) {
|
|
|
11641
11633
|
for (const { target, seeded } of seeds) if (seeded.length > 0) console.log(` 🌱 ${target.seeds}: ran ${seeded.join(", ")}`);
|
|
11642
11634
|
}
|
|
11643
11635
|
/** `gkm test` outside a project that declares stages, with none named. */
|
|
11644
|
-
var NoStageToTest = class extends
|
|
11636
|
+
var NoStageToTest = class extends require_errors.GkmError {
|
|
11645
11637
|
constructor() {
|
|
11646
11638
|
super("No stage to test with: add `stages` to gkm.config.ts, or pass --stage.");
|
|
11647
11639
|
this.name = "NoStageToTest";
|
|
@@ -11909,7 +11901,7 @@ function install(pm, cwd) {
|
|
|
11909
11901
|
}
|
|
11910
11902
|
}
|
|
11911
11903
|
/** npm did not answer for a package, so there is no version to compare. */
|
|
11912
|
-
var RegistryUnavailable = class extends
|
|
11904
|
+
var RegistryUnavailable = class extends require_errors.GkmError {
|
|
11913
11905
|
packageName;
|
|
11914
11906
|
status;
|
|
11915
11907
|
constructor(packageName, status) {
|
|
@@ -11920,7 +11912,7 @@ var RegistryUnavailable = class extends Error {
|
|
|
11920
11912
|
}
|
|
11921
11913
|
};
|
|
11922
11914
|
/** A dist-tag npm does not have, e.g. `--tag beta` before any beta. */
|
|
11923
|
-
var NoReleaseOnTag = class extends
|
|
11915
|
+
var NoReleaseOnTag = class extends require_errors.GkmError {
|
|
11924
11916
|
tag;
|
|
11925
11917
|
tags;
|
|
11926
11918
|
constructor(tag, tags) {
|
|
@@ -11931,7 +11923,7 @@ var NoReleaseOnTag = class extends Error {
|
|
|
11931
11923
|
}
|
|
11932
11924
|
};
|
|
11933
11925
|
/** The line asked for is behind what is installed; upgrade never goes back. */
|
|
11934
|
-
var WouldDowngrade = class extends
|
|
11926
|
+
var WouldDowngrade = class extends require_errors.GkmError {
|
|
11935
11927
|
installed;
|
|
11936
11928
|
tag;
|
|
11937
11929
|
target;
|
|
@@ -11956,7 +11948,7 @@ var InstallFailed = class extends Error {
|
|
|
11956
11948
|
//#region src/index.ts
|
|
11957
11949
|
const program = new commander.Command();
|
|
11958
11950
|
program.name("gkm").description("GeekMidas backend framework CLI").version(version).option("--cwd <path>", "Change working directory").option("--debug", "Enable debug mode (verbose errors with stack traces)").hook("preAction", () => {
|
|
11959
|
-
if (program.opts().debug);
|
|
11951
|
+
if (program.opts().debug) enableDebug();
|
|
11960
11952
|
});
|
|
11961
11953
|
program.command("init").description("Scaffold a new project").argument("[name]", "Project name").option("--template <template>", "Project template (minimal, api, serverless, worker)").option("--skip-install", "Skip dependency installation", false).option("-y, --yes", "Skip prompts, use defaults", false).option("--monorepo", "Setup as monorepo with packages/models", false).option("--api-path <path>", "API app path in monorepo (default: apps/api)").option("--pm <manager>", "Package manager (pnpm, npm, yarn, bun)").option("--deploy <target>", "Where it deploys (dokploy, compose, sst, none)").option("--region <region>", "AWS region for an SST deploy (e.g. eu-west-1)").option("--registry <registry>", "Container registry for a compose deploy (e.g. ghcr.io/acme)").option("--stages <names>", "Deployed stages, comma-separated (e.g. staging,prod)").option("--protected-stage <name>", "Which deployed stage is production").option("--local-stage <name>", "What gkm dev runs as (e.g. dev)").action(async (name, options) => {
|
|
11962
11954
|
try {
|
|
@@ -11964,8 +11956,7 @@ program.command("init").description("Scaffold a new project").argument("[name]",
|
|
|
11964
11956
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
11965
11957
|
await initCommand(name, options);
|
|
11966
11958
|
} catch (error) {
|
|
11967
|
-
|
|
11968
|
-
process.exit(1);
|
|
11959
|
+
exitWithError(error);
|
|
11969
11960
|
}
|
|
11970
11961
|
});
|
|
11971
11962
|
program.command("trust").description("Trust the local edge's certificate authority, so a browser accepts https").option("--dry-run", "Print the commands instead of running them").action(async (options) => {
|
|
@@ -11974,8 +11965,7 @@ program.command("trust").description("Trust the local edge's certificate authori
|
|
|
11974
11965
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
11975
11966
|
await trustCommand(options);
|
|
11976
11967
|
} catch (error) {
|
|
11977
|
-
|
|
11978
|
-
process.exit(1);
|
|
11968
|
+
exitWithError(error);
|
|
11979
11969
|
}
|
|
11980
11970
|
});
|
|
11981
11971
|
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) => {
|
|
@@ -11984,8 +11974,7 @@ program.command("setup").description("Reconcile declared constructs — locally,
|
|
|
11984
11974
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
11985
11975
|
await setupCommand(options);
|
|
11986
11976
|
} catch (error) {
|
|
11987
|
-
|
|
11988
|
-
process.exit(1);
|
|
11977
|
+
exitWithError(error);
|
|
11989
11978
|
}
|
|
11990
11979
|
});
|
|
11991
11980
|
program.command("build").description("Build handlers and the manifest from declared constructs").option("--provider <provider>", "Build for aws or server (default: where gkm.config.ts deploys)").option("--enable-openapi", "Enable OpenAPI documentation generation for server builds").option("--production", "Build for production (no dev tools, bundled output)").option("--skip-bundle", "Skip bundling step in production build").option("--stage <stage>", "Inject encrypted secrets for deployment stage").option("--mark-optional", "Suffix optional env vars with ? in manifest envVars field (e.g. PORT?)").addOption(new commander.Option("--cache <backend>", "Register the drivers for this cache backend rather than the target default").hideHelp()).action(async (options) => {
|
|
@@ -12004,8 +11993,7 @@ program.command("build").description("Build handlers and the manifest from decla
|
|
|
12004
11993
|
markOptional: options.markOptional || false
|
|
12005
11994
|
});
|
|
12006
11995
|
} catch (error) {
|
|
12007
|
-
|
|
12008
|
-
process.exit(1);
|
|
11996
|
+
exitWithError(error);
|
|
12009
11997
|
}
|
|
12010
11998
|
});
|
|
12011
11999
|
program.command("dev").description("Reconcile constructs and start the dev server with automatic reload").option("-p, --port <port>", "Port to run the development server on").option("--entry <file>", "Entry file to run (bypasses gkm config)").option("--watch", "Watch for file changes (default: true with --entry)").option("--no-watch", "Disable file watching").option("--enable-openapi", "Enable OpenAPI documentation for development server", true).option("--migrate", "Apply pending migrations before the apps start").option("--seed", "Migrate, then run the seeds, before the apps start").option("--fake", "Call each external API’s fake (test/fakes/<id>.ts) instead of the provider").option("--no-subscribers", "Run no topic subscribers: nothing is subscribed, polled or pushed to").action(async (options) => {
|
|
@@ -12024,8 +12012,7 @@ program.command("dev").description("Reconcile constructs and start the dev serve
|
|
|
12024
12012
|
subscribers: options.subscribers
|
|
12025
12013
|
});
|
|
12026
12014
|
} catch (error) {
|
|
12027
|
-
|
|
12028
|
-
process.exit(1);
|
|
12015
|
+
exitWithError(error);
|
|
12029
12016
|
}
|
|
12030
12017
|
});
|
|
12031
12018
|
program.command("dev:credentials").description("Print each local service's address and login — Postgres, MinIO, Mailpit, Redis, … — without starting anything").option("--json", "Print them as JSON, for a script").action(async (options) => {
|
|
@@ -12035,8 +12022,7 @@ program.command("dev:credentials").description("Print each local service's addre
|
|
|
12035
12022
|
const { devCredentialsCommand } = await Promise.resolve().then(() => credentials_exports);
|
|
12036
12023
|
await devCredentialsCommand(options);
|
|
12037
12024
|
} catch (error) {
|
|
12038
|
-
|
|
12039
|
-
process.exit(1);
|
|
12025
|
+
exitWithError(error);
|
|
12040
12026
|
}
|
|
12041
12027
|
});
|
|
12042
12028
|
program.command("exec").description("Run a command with secrets injected into Credentials").argument("<command...>", "Command to run (use -- before command)").action(async (commandArgs) => {
|
|
@@ -12045,8 +12031,7 @@ program.command("exec").description("Run a command with secrets injected into Cr
|
|
|
12045
12031
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12046
12032
|
await execCommand(commandArgs);
|
|
12047
12033
|
} catch (error) {
|
|
12048
|
-
|
|
12049
|
-
process.exit(1);
|
|
12034
|
+
exitWithError(error);
|
|
12050
12035
|
}
|
|
12051
12036
|
});
|
|
12052
12037
|
program.command("test").description("Run tests with secrets loaded from environment").option("--stage <stage>", "Stage to load secrets from (default: stages.local)").option("--run", "Run tests once without watch mode").option("--watch", "Enable watch mode").option("--coverage", "Generate coverage report").option("--ui", "Open Vitest UI").option("--auto-setup", "Generate a fresh stage (secrets + key) from the workspace config when none exists (for CI; also via GKM_AUTO_SETUP)").option("--prepare", "Write the test manifest and #test harness, then stop — for a typecheck that runs before the suite").option("--setup", "Reconcile, migrate and seed the test stage and write the harness, then stop — what @geekmidas/cli/vitest runs").option("--teardown", "Drop the test stage's databases the last setup created, then stop — what @geekmidas/cli/vitest runs when the suite ends").argument("[pattern]", "Pattern to filter tests").action(async (pattern, options) => {
|
|
@@ -12058,50 +12043,46 @@ program.command("test").description("Run tests with secrets loaded from environm
|
|
|
12058
12043
|
pattern
|
|
12059
12044
|
});
|
|
12060
12045
|
} catch (error) {
|
|
12061
|
-
|
|
12062
|
-
process.exit(1);
|
|
12046
|
+
exitWithError(error);
|
|
12063
12047
|
}
|
|
12064
12048
|
});
|
|
12065
12049
|
program.command("migrate").description("Apply each database construct's migrations from db/<construct>/migrations/, as its owner").argument("[construct]", "Only this construct, by name").option("--stage <stage>", "The local stage (default) or test — a deploy migrates its own stage").action(async (construct, options) => {
|
|
12066
12050
|
try {
|
|
12067
12051
|
const globalOptions = program.opts();
|
|
12068
12052
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12069
|
-
const { migrateCommand } = await Promise.resolve().then(() => require("./migrate-
|
|
12053
|
+
const { migrateCommand } = await Promise.resolve().then(() => require("./migrate-D3VVsiHp.cjs"));
|
|
12070
12054
|
await migrateCommand({
|
|
12071
12055
|
...options,
|
|
12072
12056
|
...construct ? { construct } : {}
|
|
12073
12057
|
});
|
|
12074
12058
|
} catch (error) {
|
|
12075
|
-
|
|
12076
|
-
process.exit(1);
|
|
12059
|
+
exitWithError(error);
|
|
12077
12060
|
}
|
|
12078
12061
|
});
|
|
12079
12062
|
program.command("seed").description("Migrate, then run each database construct's seeds from db/<construct>/seeds/, as its owner").argument("[construct]", "Only this construct, by name").option("--stage <stage>", "The local stage (default) or test — a deploy seeds its own stage").action(async (construct, options) => {
|
|
12080
12063
|
try {
|
|
12081
12064
|
const globalOptions = program.opts();
|
|
12082
12065
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12083
|
-
const { seedCommand } = await Promise.resolve().then(() => require("./migrate-
|
|
12066
|
+
const { seedCommand } = await Promise.resolve().then(() => require("./migrate-D3VVsiHp.cjs"));
|
|
12084
12067
|
await seedCommand({
|
|
12085
12068
|
...options,
|
|
12086
12069
|
...construct ? { construct } : {}
|
|
12087
12070
|
});
|
|
12088
12071
|
} catch (error) {
|
|
12089
|
-
|
|
12090
|
-
process.exit(1);
|
|
12072
|
+
exitWithError(error);
|
|
12091
12073
|
}
|
|
12092
12074
|
});
|
|
12093
12075
|
program.command("migration").description("Write a construct's next migration: an empty one for a database, the schema change for an auth server").argument("<construct>", "The construct, by name").argument("[name]", "What the migration is called").action(async (construct, name) => {
|
|
12094
12076
|
try {
|
|
12095
12077
|
const globalOptions = program.opts();
|
|
12096
12078
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12097
|
-
const { migrationCommand } = await Promise.resolve().then(() => require("./migrate-
|
|
12079
|
+
const { migrationCommand } = await Promise.resolve().then(() => require("./migrate-D3VVsiHp.cjs"));
|
|
12098
12080
|
await migrationCommand({
|
|
12099
12081
|
construct,
|
|
12100
12082
|
...name ? { name } : {}
|
|
12101
12083
|
});
|
|
12102
12084
|
} catch (error) {
|
|
12103
|
-
|
|
12104
|
-
process.exit(1);
|
|
12085
|
+
exitWithError(error);
|
|
12105
12086
|
}
|
|
12106
12087
|
});
|
|
12107
12088
|
program.command("cron").description("Manage cron jobs").action(() => {
|
|
@@ -12129,8 +12110,7 @@ program.command("openapi").description("Generate OpenAPI specification from endp
|
|
|
12129
12110
|
...telemetry !== void 0 ? { telemetry } : {}
|
|
12130
12111
|
});
|
|
12131
12112
|
} catch (error) {
|
|
12132
|
-
|
|
12133
|
-
process.exit(1);
|
|
12113
|
+
exitWithError(error);
|
|
12134
12114
|
}
|
|
12135
12115
|
});
|
|
12136
12116
|
program.command("docker").description("Generate Docker deployment files").option("--build", "Build Docker image after generating files").option("--push", "Push image to registry after building").option("--tag <tag>", "Image tag", "latest").option("--registry <registry>", "Container registry URL").action(async (options) => {
|
|
@@ -12139,8 +12119,7 @@ program.command("docker").description("Generate Docker deployment files").option
|
|
|
12139
12119
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12140
12120
|
await require_seeds.dockerCommand(options);
|
|
12141
12121
|
} catch (error) {
|
|
12142
|
-
|
|
12143
|
-
process.exit(1);
|
|
12122
|
+
exitWithError(error);
|
|
12144
12123
|
}
|
|
12145
12124
|
});
|
|
12146
12125
|
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").option("--skip-dns-check", "Deployed stage: do not check that each public host resolves to GKM_SERVER_IPV4 in the stage secrets before starting (a CDN or proxy in front)").action(async (options) => {
|
|
@@ -12149,8 +12128,7 @@ program.command("compose").description("Run the workspace's APIs and sites for a
|
|
|
12149
12128
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12150
12129
|
await composeCommand(options);
|
|
12151
12130
|
} catch (error) {
|
|
12152
|
-
|
|
12153
|
-
process.exit(1);
|
|
12131
|
+
exitWithError(error);
|
|
12154
12132
|
}
|
|
12155
12133
|
});
|
|
12156
12134
|
program.command("prepack").description("Generate Docker files for production deployment").option("--build", "Build Docker image after generating files").option("--push", "Push image to registry after building").option("--tag <tag>", "Image tag", "latest").option("--registry <registry>", "Container registry URL").action(async (options) => {
|
|
@@ -12164,8 +12142,7 @@ program.command("prepack").description("Generate Docker files for production dep
|
|
|
12164
12142
|
registry: options.registry
|
|
12165
12143
|
});
|
|
12166
12144
|
} catch (error) {
|
|
12167
|
-
|
|
12168
|
-
process.exit(1);
|
|
12145
|
+
exitWithError(error);
|
|
12169
12146
|
}
|
|
12170
12147
|
});
|
|
12171
12148
|
program.command("secrets:init").description("Initialize secrets for a deployment stage").requiredOption("--stage <stage>", "Stage name (e.g., production, staging)").option("--force", "Overwrite existing secrets").action(async (options) => {
|
|
@@ -12174,8 +12151,7 @@ program.command("secrets:init").description("Initialize secrets for a deployment
|
|
|
12174
12151
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12175
12152
|
await secretsInitCommand(options);
|
|
12176
12153
|
} catch (error) {
|
|
12177
|
-
|
|
12178
|
-
process.exit(1);
|
|
12154
|
+
exitWithError(error);
|
|
12179
12155
|
}
|
|
12180
12156
|
});
|
|
12181
12157
|
program.command("secrets:set").description("Set a custom secret for a stage").argument("<key>", "Secret key (e.g., API_KEY)").argument("[value]", "Secret value (reads from stdin if omitted)").requiredOption("--stage <stage>", "Stage name").action(async (key, value, options) => {
|
|
@@ -12184,8 +12160,7 @@ program.command("secrets:set").description("Set a custom secret for a stage").ar
|
|
|
12184
12160
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12185
12161
|
await secretsSetCommand(key, value, options);
|
|
12186
12162
|
} catch (error) {
|
|
12187
|
-
|
|
12188
|
-
process.exit(1);
|
|
12163
|
+
exitWithError(error);
|
|
12189
12164
|
}
|
|
12190
12165
|
});
|
|
12191
12166
|
program.command("secrets:unset").description("Remove a custom secret from a stage").argument("<key>", "Secret key (e.g., API_KEY)").requiredOption("--stage <stage>", "Stage name").action(async (key, options) => {
|
|
@@ -12194,41 +12169,37 @@ program.command("secrets:unset").description("Remove a custom secret from a stag
|
|
|
12194
12169
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12195
12170
|
await secretsUnsetCommand(key, options);
|
|
12196
12171
|
} catch (error) {
|
|
12197
|
-
|
|
12198
|
-
process.exit(1);
|
|
12172
|
+
exitWithError(error);
|
|
12199
12173
|
}
|
|
12200
12174
|
});
|
|
12201
12175
|
program.command("secrets:add").description("Build the keys a stage must be given — buckets, mail, file servers, third parties' credentials — across every app").requiredOption("--stage <stage>", "Stage name").option("--missing", "Only the keys the stage has not set").option("--json", "Print the keys as JSON and ask nothing").action(async (options) => {
|
|
12202
12176
|
try {
|
|
12203
12177
|
const globalOptions = program.opts();
|
|
12204
12178
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12205
|
-
const { secretsAddCommand } = await Promise.resolve().then(() => require("./add-
|
|
12179
|
+
const { secretsAddCommand } = await Promise.resolve().then(() => require("./add-oN0b18HN.cjs"));
|
|
12206
12180
|
await secretsAddCommand(options);
|
|
12207
12181
|
} catch (error) {
|
|
12208
|
-
|
|
12209
|
-
process.exit(1);
|
|
12182
|
+
exitWithError(error);
|
|
12210
12183
|
}
|
|
12211
12184
|
});
|
|
12212
12185
|
program.command("encryption:rotate").description("Add a new current key to an Encryption construct's keyring on a server stage").argument("<construct>", "The Encryption construct (e.g. Pii)").requiredOption("--stage <stage>", "A deployed stage").action(async (construct, options) => {
|
|
12213
12186
|
try {
|
|
12214
12187
|
const globalOptions = program.opts();
|
|
12215
12188
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12216
|
-
const { encryptionRotateCommand } = await Promise.resolve().then(() => require("./encryption-
|
|
12189
|
+
const { encryptionRotateCommand } = await Promise.resolve().then(() => require("./encryption-CgW167LO.cjs"));
|
|
12217
12190
|
await encryptionRotateCommand(construct, options);
|
|
12218
12191
|
} catch (error) {
|
|
12219
|
-
|
|
12220
|
-
process.exit(1);
|
|
12192
|
+
exitWithError(error);
|
|
12221
12193
|
}
|
|
12222
12194
|
});
|
|
12223
12195
|
program.command("encryption:retire").description("Remove an old key from an Encryption construct's keyring, once nothing is under it").argument("<construct>", "The Encryption construct (e.g. Pii)").argument("<key>", "The key to retire (e.g. k1)").requiredOption("--stage <stage>", "A deployed stage").action(async (construct, key, options) => {
|
|
12224
12196
|
try {
|
|
12225
12197
|
const globalOptions = program.opts();
|
|
12226
12198
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12227
|
-
const { encryptionRetireCommand } = await Promise.resolve().then(() => require("./encryption-
|
|
12199
|
+
const { encryptionRetireCommand } = await Promise.resolve().then(() => require("./encryption-CgW167LO.cjs"));
|
|
12228
12200
|
await encryptionRetireCommand(construct, key, options);
|
|
12229
12201
|
} catch (error) {
|
|
12230
|
-
|
|
12231
|
-
process.exit(1);
|
|
12202
|
+
exitWithError(error);
|
|
12232
12203
|
}
|
|
12233
12204
|
});
|
|
12234
12205
|
program.command("secrets:show").description("Show secrets for a stage").requiredOption("--stage <stage>", "Stage name").option("--reveal", "Show actual secret values (not masked)").action(async (options) => {
|
|
@@ -12237,8 +12208,7 @@ program.command("secrets:show").description("Show secrets for a stage").required
|
|
|
12237
12208
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12238
12209
|
await secretsShowCommand(options);
|
|
12239
12210
|
} catch (error) {
|
|
12240
|
-
|
|
12241
|
-
process.exit(1);
|
|
12211
|
+
exitWithError(error);
|
|
12242
12212
|
}
|
|
12243
12213
|
});
|
|
12244
12214
|
program.command("secrets:rotate").description("Rotate service passwords").requiredOption("--stage <stage>", "Stage name").option("--service <service>", "Specific service to rotate (postgres, redis, minio, …)").action(async (options) => {
|
|
@@ -12247,8 +12217,7 @@ program.command("secrets:rotate").description("Rotate service passwords").requir
|
|
|
12247
12217
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12248
12218
|
await secretsRotateCommand(options);
|
|
12249
12219
|
} catch (error) {
|
|
12250
|
-
|
|
12251
|
-
process.exit(1);
|
|
12220
|
+
exitWithError(error);
|
|
12252
12221
|
}
|
|
12253
12222
|
});
|
|
12254
12223
|
program.command("secrets:import").description("Import secrets from a JSON file").argument("<file>", "JSON file path (e.g., secrets.json)").requiredOption("--stage <stage>", "Stage name").option("--no-merge", "Replace all custom secrets instead of merging").action(async (file, options) => {
|
|
@@ -12257,8 +12226,7 @@ program.command("secrets:import").description("Import secrets from a JSON file")
|
|
|
12257
12226
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12258
12227
|
await secretsImportCommand(file, options);
|
|
12259
12228
|
} catch (error) {
|
|
12260
|
-
|
|
12261
|
-
process.exit(1);
|
|
12229
|
+
exitWithError(error);
|
|
12262
12230
|
}
|
|
12263
12231
|
});
|
|
12264
12232
|
program.command("secrets:reconcile").description("Backfill missing custom secrets from workspace config").option("--stage <stage>", "Stage name (default: stages.local)").action(async (options) => {
|
|
@@ -12267,7 +12235,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
|
|
|
12267
12235
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12268
12236
|
const { loadWorkspaceConfig } = await Promise.resolve().then(() => require("./config.cjs"));
|
|
12269
12237
|
const { reconcileMissingSecrets } = await Promise.resolve().then(() => require("./reconcile-CuCQBa5-.cjs"));
|
|
12270
|
-
const { secretsStoreFor } = await Promise.resolve().then(() => require("./seeds-
|
|
12238
|
+
const { secretsStoreFor } = await Promise.resolve().then(() => require("./seeds-BKoJYsE7.cjs")).then((n) => n.store_exports);
|
|
12271
12239
|
const { workspace } = await loadWorkspaceConfig();
|
|
12272
12240
|
const stage = options.stage ?? workspace.stages.local;
|
|
12273
12241
|
const store = await secretsStoreFor(workspace, stage);
|
|
@@ -12276,7 +12244,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
|
|
|
12276
12244
|
console.error(`No secrets found for stage "${stage}". Run "gkm secrets:init --stage ${stage}" first.`);
|
|
12277
12245
|
process.exit(1);
|
|
12278
12246
|
}
|
|
12279
|
-
const { derivedContainers } = await Promise.resolve().then(() => require("./seeds-
|
|
12247
|
+
const { derivedContainers } = await Promise.resolve().then(() => require("./seeds-BKoJYsE7.cjs")).then((n) => n.workspace_exports);
|
|
12280
12248
|
const result = reconcileMissingSecrets(secrets, workspace, await derivedContainers(workspace, stage));
|
|
12281
12249
|
if (!result) {
|
|
12282
12250
|
console.log(`\n✓ Secrets for stage "${stage}" are up-to-date`);
|
|
@@ -12286,23 +12254,21 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
|
|
|
12286
12254
|
console.log(`\n✓ Reconciled ${result.addedKeys.length} missing secret(s) for stage "${stage}":`);
|
|
12287
12255
|
for (const key of result.addedKeys) console.log(` + ${key}`);
|
|
12288
12256
|
} catch (error) {
|
|
12289
|
-
|
|
12290
|
-
process.exit(1);
|
|
12257
|
+
exitWithError(error);
|
|
12291
12258
|
}
|
|
12292
12259
|
});
|
|
12293
12260
|
program.command("secrets:migrate").description("Copy a deployed stage's secrets from the configured store to another (file, ssm, secrets-manager)").requiredOption("--stage <stage>", "A deployed stage").requiredOption("--to <provider>", "file, ssm or secrets-manager").option("--region <region>", "The target's AWS region (default: the configured store's)").option("--profile <profile>", "AWS profile for the stage's account").option("--force", "Replace a stage the target already holds").action(async (options) => {
|
|
12294
12261
|
try {
|
|
12295
12262
|
const globalOptions = program.opts();
|
|
12296
12263
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12297
|
-
const { secretsMigrateCommand } = await Promise.resolve().then(() => require("./migrate-
|
|
12264
|
+
const { secretsMigrateCommand } = await Promise.resolve().then(() => require("./migrate-f6JDjyCp.cjs"));
|
|
12298
12265
|
await secretsMigrateCommand(options);
|
|
12299
12266
|
} catch (error) {
|
|
12300
|
-
|
|
12301
|
-
process.exit(1);
|
|
12267
|
+
exitWithError(error);
|
|
12302
12268
|
}
|
|
12303
12269
|
});
|
|
12304
12270
|
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").option("--skip-dns-check", "Compose: do not check that each public host resolves to GKM_SERVER_IPV4 in the stage secrets before starting (a CDN or proxy in front)").action(async (options) => {
|
|
12305
|
-
const { deployCli } = await Promise.resolve().then(() => require("./cli-
|
|
12271
|
+
const { deployCli } = await Promise.resolve().then(() => require("./cli-BRZFYvdb.cjs"));
|
|
12306
12272
|
const globalOptions = program.opts();
|
|
12307
12273
|
const code = await deployCli({
|
|
12308
12274
|
cwd: (0, node_path.resolve)(globalOptions.cwd ?? process.cwd()),
|
|
@@ -12320,8 +12286,8 @@ program.command("deploy").description("Deploy a stage through its target").optio
|
|
|
12320
12286
|
});
|
|
12321
12287
|
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) => {
|
|
12322
12288
|
try {
|
|
12323
|
-
const { rollbackStage } = await Promise.resolve().then(() => require("./rollback-
|
|
12324
|
-
const { terminalCredentials } = await Promise.resolve().then(() => require("./terminal-
|
|
12289
|
+
const { rollbackStage } = await Promise.resolve().then(() => require("./rollback-DDHtd0GJ.cjs")).then((n) => n.rollback_exports);
|
|
12290
|
+
const { terminalCredentials } = await Promise.resolve().then(() => require("./terminal-8XngdSTo.cjs"));
|
|
12325
12291
|
const globalOptions = program.opts();
|
|
12326
12292
|
await rollbackStage({
|
|
12327
12293
|
cwd: (0, node_path.resolve)(globalOptions.cwd ?? process.cwd()),
|
|
@@ -12332,8 +12298,7 @@ program.command("deploy:rollback").description("Put a stage's app back on its pr
|
|
|
12332
12298
|
log: (line) => console.log(line)
|
|
12333
12299
|
});
|
|
12334
12300
|
} catch (error) {
|
|
12335
|
-
|
|
12336
|
-
process.exit(1);
|
|
12301
|
+
exitWithError(error);
|
|
12337
12302
|
}
|
|
12338
12303
|
});
|
|
12339
12304
|
program.command("deploy:init").description("Initialize Dokploy deployment (create project and application)").option("--endpoint <url>", "Dokploy server URL (uses stored credentials if logged in)").requiredOption("--project <name>", "Project name (creates if not exists)").requiredOption("--app <name>", "Application name").option("--project-id <id>", "Use existing project ID instead of creating").option("--registry-id <id>", "Configure registry for the application").action(async (options) => {
|
|
@@ -12348,30 +12313,27 @@ program.command("deploy:init").description("Initialize Dokploy deployment (creat
|
|
|
12348
12313
|
registryId: options.registryId
|
|
12349
12314
|
});
|
|
12350
12315
|
} catch (error) {
|
|
12351
|
-
|
|
12352
|
-
process.exit(1);
|
|
12316
|
+
exitWithError(error);
|
|
12353
12317
|
}
|
|
12354
12318
|
});
|
|
12355
12319
|
program.command("deploy:github").description("Let GitHub Actions deploy a stage: OIDC role in the stage's AWS account, and the GitHub environment the deploy workflow uses").requiredOption("--stage <stage>", "A deployed stage from gkm.config.ts").option("--profile <profile>", "AWS profile for the stage's account").option("--repo <owner/name>", "GitHub repository (default: this one)").option("--policy-arn <arn>", "Policy for the deploy role (default: AdministratorAccess)").option("--dry-run", "Show the plan without changing AWS or GitHub").action(async (options) => {
|
|
12356
12320
|
try {
|
|
12357
12321
|
const globalOptions = program.opts();
|
|
12358
12322
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12359
|
-
const { deployGithubCommand } = await Promise.resolve().then(() => require("./github-
|
|
12323
|
+
const { deployGithubCommand } = await Promise.resolve().then(() => require("./github-BD051KZZ.cjs"));
|
|
12360
12324
|
await deployGithubCommand(options);
|
|
12361
12325
|
} catch (error) {
|
|
12362
|
-
|
|
12363
|
-
process.exit(1);
|
|
12326
|
+
exitWithError(error);
|
|
12364
12327
|
}
|
|
12365
12328
|
});
|
|
12366
12329
|
program.command("stages").description("The workspace's stages from gkm.config.ts: local, deployed and protected").option("--json", "Print them as JSON").option("--github-output", "Write the stages, and which this workflow run builds and deploys, to $GITHUB_OUTPUT").option("--event <name>", "The event to plan for (default: $GITHUB_EVENT_NAME)").option("--stage <stage>", "The stage a workflow_dispatch deploys").action(async (options) => {
|
|
12367
12330
|
try {
|
|
12368
12331
|
const globalOptions = program.opts();
|
|
12369
12332
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12370
|
-
const { stagesCommand } = await Promise.resolve().then(() => require("./stages-
|
|
12333
|
+
const { stagesCommand } = await Promise.resolve().then(() => require("./stages-BI8JvPzI.cjs"));
|
|
12371
12334
|
await stagesCommand(options);
|
|
12372
12335
|
} catch (error) {
|
|
12373
|
-
|
|
12374
|
-
process.exit(1);
|
|
12336
|
+
exitWithError(error);
|
|
12375
12337
|
}
|
|
12376
12338
|
});
|
|
12377
12339
|
program.command("deploy:list").description("List Dokploy resources (projects, registries)").option("--endpoint <url>", "Dokploy server URL (uses stored credentials if logged in)").option("--projects", "List projects").option("--registries", "List registries").action(async (options) => {
|
|
@@ -12397,8 +12359,7 @@ program.command("deploy:list").description("List Dokploy resources (projects, re
|
|
|
12397
12359
|
});
|
|
12398
12360
|
}
|
|
12399
12361
|
} catch (error) {
|
|
12400
|
-
|
|
12401
|
-
process.exit(1);
|
|
12362
|
+
exitWithError(error);
|
|
12402
12363
|
}
|
|
12403
12364
|
});
|
|
12404
12365
|
program.command("login").description("Authenticate with a deployment or DNS provider").option("--provider <provider>", "Provider to log in to (dokploy, hostinger, godaddy)", "dokploy").option("--service <provider>", "[DEPRECATED] Use --provider instead").option("--token <token>", "API token (will prompt if not provided)").option("--endpoint <url>", "Service endpoint URL").action(async (options) => {
|
|
@@ -12420,8 +12381,7 @@ program.command("login").description("Authenticate with a deployment or DNS prov
|
|
|
12420
12381
|
endpoint: options.endpoint
|
|
12421
12382
|
});
|
|
12422
12383
|
} catch (error) {
|
|
12423
|
-
|
|
12424
|
-
process.exit(1);
|
|
12384
|
+
exitWithError(error);
|
|
12425
12385
|
}
|
|
12426
12386
|
});
|
|
12427
12387
|
program.command("logout").description("Remove stored credentials").option("--provider <provider>", "Whose credentials to remove (dokploy, godaddy, all)", "dokploy").option("--service <provider>", "[DEPRECATED] Use --provider instead").action(async (options) => {
|
|
@@ -12430,8 +12390,7 @@ program.command("logout").description("Remove stored credentials").option("--pro
|
|
|
12430
12390
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12431
12391
|
await logoutCommand({ provider: options.service ?? options.provider });
|
|
12432
12392
|
} catch (error) {
|
|
12433
|
-
|
|
12434
|
-
process.exit(1);
|
|
12393
|
+
exitWithError(error);
|
|
12435
12394
|
}
|
|
12436
12395
|
});
|
|
12437
12396
|
program.command("whoami").description("Show current authentication status").action(async () => {
|
|
@@ -12440,8 +12399,7 @@ program.command("whoami").description("Show current authentication status").acti
|
|
|
12440
12399
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12441
12400
|
await whoamiCommand();
|
|
12442
12401
|
} catch (error) {
|
|
12443
|
-
|
|
12444
|
-
process.exit(1);
|
|
12402
|
+
exitWithError(error);
|
|
12445
12403
|
}
|
|
12446
12404
|
});
|
|
12447
12405
|
program.command("state:pull").description("Pull deployment state from remote to local").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").action(async (options) => {
|
|
@@ -12450,8 +12408,7 @@ program.command("state:pull").description("Pull deployment state from remote to
|
|
|
12450
12408
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12451
12409
|
await statePullCommand(options);
|
|
12452
12410
|
} catch (error) {
|
|
12453
|
-
|
|
12454
|
-
process.exit(1);
|
|
12411
|
+
exitWithError(error);
|
|
12455
12412
|
}
|
|
12456
12413
|
});
|
|
12457
12414
|
program.command("state:push").description("Push deployment state from local to remote").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").action(async (options) => {
|
|
@@ -12460,8 +12417,7 @@ program.command("state:push").description("Push deployment state from local to r
|
|
|
12460
12417
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12461
12418
|
await statePushCommand(options);
|
|
12462
12419
|
} catch (error) {
|
|
12463
|
-
|
|
12464
|
-
process.exit(1);
|
|
12420
|
+
exitWithError(error);
|
|
12465
12421
|
}
|
|
12466
12422
|
});
|
|
12467
12423
|
program.command("state:show").description("Show deployment state for a stage").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").option("--json", "Output as JSON").action(async (options) => {
|
|
@@ -12470,8 +12426,7 @@ program.command("state:show").description("Show deployment state for a stage").r
|
|
|
12470
12426
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12471
12427
|
await stateShowCommand(options);
|
|
12472
12428
|
} catch (error) {
|
|
12473
|
-
|
|
12474
|
-
process.exit(1);
|
|
12429
|
+
exitWithError(error);
|
|
12475
12430
|
}
|
|
12476
12431
|
});
|
|
12477
12432
|
program.command("state:unlock").description("Release a stage deploy lock left behind by a run that crashed").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").action(async (options) => {
|
|
@@ -12480,8 +12435,7 @@ program.command("state:unlock").description("Release a stage deploy lock left be
|
|
|
12480
12435
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12481
12436
|
await stateUnlockCommand(options);
|
|
12482
12437
|
} catch (error) {
|
|
12483
|
-
|
|
12484
|
-
process.exit(1);
|
|
12438
|
+
exitWithError(error);
|
|
12485
12439
|
}
|
|
12486
12440
|
});
|
|
12487
12441
|
program.command("state:diff").description("Compare local and remote deployment state").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").action(async (options) => {
|
|
@@ -12490,8 +12444,7 @@ program.command("state:diff").description("Compare local and remote deployment s
|
|
|
12490
12444
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12491
12445
|
await stateDiffCommand(options);
|
|
12492
12446
|
} catch (error) {
|
|
12493
|
-
|
|
12494
|
-
process.exit(1);
|
|
12447
|
+
exitWithError(error);
|
|
12495
12448
|
}
|
|
12496
12449
|
});
|
|
12497
12450
|
program.command("upgrade").description("Upgrade @geekmidas/cli (with --all, every @geekmidas package) along the release line the project is on").option("--dry-run", "Show what would be upgraded without making changes").option("--all", "Every @geekmidas package, and the third-party packages their peers require").option("--tag <tag>", "npm dist-tag to follow (default: the line you are on)").action(async (options) => {
|
|
@@ -12500,15 +12453,13 @@ program.command("upgrade").description("Upgrade @geekmidas/cli (with --all, ever
|
|
|
12500
12453
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12501
12454
|
await upgradeCommand(options);
|
|
12502
12455
|
} catch (error) {
|
|
12503
|
-
|
|
12504
|
-
process.exit(1);
|
|
12456
|
+
exitWithError(error);
|
|
12505
12457
|
}
|
|
12506
12458
|
});
|
|
12507
12459
|
try {
|
|
12508
12460
|
require_seeds.assertDevServicesFlag(process.argv.slice(2));
|
|
12509
12461
|
} catch (error) {
|
|
12510
|
-
|
|
12511
|
-
process.exit(1);
|
|
12462
|
+
exitWithError(error);
|
|
12512
12463
|
}
|
|
12513
12464
|
program.parse();
|
|
12514
12465
|
//#endregion
|