@geekmidas/cli 2.0.2 → 10.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -120
- package/dist/{CachedStateProvider-BdX7klRc.cjs → CachedStateProvider-BLo7zv7S.cjs} +1 -1
- package/dist/CachedStateProvider-BxoAm-B2.mjs +3 -0
- package/dist/{CachedStateProvider-klLWZXWF.cjs → CachedStateProvider-CqPdW7CB.cjs} +1 -1
- package/dist/{CachedStateProvider-klLWZXWF.cjs.map → CachedStateProvider-CqPdW7CB.cjs.map} +1 -1
- package/dist/{CachedStateProvider-CzyFct42.mjs → CachedStateProvider-DTniehMP.mjs} +1 -1
- package/dist/{CachedStateProvider-CzyFct42.mjs.map → CachedStateProvider-DTniehMP.mjs.map} +1 -1
- package/dist/{HostingerProvider-B2ZYz7Yc.mjs → HostingerProvider-Cft7lEYr.mjs} +4 -3
- package/dist/HostingerProvider-Cft7lEYr.mjs.map +1 -0
- package/dist/{HostingerProvider-CrHfsgz9.cjs → HostingerProvider-h3EbEp-Z.cjs} +4 -3
- package/dist/HostingerProvider-h3EbEp-Z.cjs.map +1 -0
- package/dist/{LocalStateProvider-CP49rjzt.mjs → LocalStateProvider-Bn6tS-oL.mjs} +1 -1
- package/dist/{LocalStateProvider-CP49rjzt.mjs.map → LocalStateProvider-Bn6tS-oL.mjs.map} +1 -1
- package/dist/{LocalStateProvider-CalzNfNA.cjs → LocalStateProvider-Db9SEjyH.cjs} +1 -1
- package/dist/{LocalStateProvider-CalzNfNA.cjs.map → LocalStateProvider-Db9SEjyH.cjs.map} +1 -1
- package/dist/{Route53Provider-tlgBzrRQ.mjs → Route53Provider-RdpUDJQk.mjs} +1 -1
- package/dist/{Route53Provider-tlgBzrRQ.mjs.map → Route53Provider-RdpUDJQk.mjs.map} +1 -1
- package/dist/{Route53Provider-DwgXiLxt.cjs → Route53Provider-di2fMM5N.cjs} +1 -1
- package/dist/{Route53Provider-DwgXiLxt.cjs.map → Route53Provider-di2fMM5N.cjs.map} +1 -1
- package/dist/{SSMStateProvider-BlrTiV5m.mjs → SSMStateProvider-BRt2py-A.mjs} +1 -1
- package/dist/{SSMStateProvider-BlrTiV5m.mjs.map → SSMStateProvider-BRt2py-A.mjs.map} +1 -1
- package/dist/{SSMStateProvider-Bt6r8CTL.cjs → SSMStateProvider-DyX8s9HI.cjs} +1 -1
- package/dist/{SSMStateProvider-Bt6r8CTL.cjs.map → SSMStateProvider-DyX8s9HI.cjs.map} +1 -1
- package/dist/{backup-provisioner-Xunq-p_8.mjs → backup-provisioner-Bgj5Vi_L.mjs} +2 -2
- package/dist/{backup-provisioner-Xunq-p_8.mjs.map → backup-provisioner-Bgj5Vi_L.mjs.map} +1 -1
- package/dist/{backup-provisioner-B3HBN-2k.cjs → backup-provisioner-BrsHwYG0.cjs} +2 -2
- package/dist/{backup-provisioner-B3HBN-2k.cjs.map → backup-provisioner-BrsHwYG0.cjs.map} +1 -1
- package/dist/{bundler-Dufq3uvI.cjs → bundler-BY1OmV1e.cjs} +44 -14
- package/dist/bundler-BY1OmV1e.cjs.map +1 -0
- package/dist/{bundler-DkA4qzUD.mjs → bundler-Be8Zg4Wd.mjs} +45 -15
- package/dist/bundler-Be8Zg4Wd.mjs.map +1 -0
- package/dist/config-D8o6I_7Z.mjs +469 -0
- package/dist/config-D8o6I_7Z.mjs.map +1 -0
- package/dist/config-DbPE1KXF.cjs +535 -0
- package/dist/config-DbPE1KXF.cjs.map +1 -0
- package/dist/config.cjs +3 -2
- package/dist/config.d.cts +2 -2
- package/dist/config.d.cts.map +1 -1
- package/dist/config.d.mts +2 -2
- package/dist/config.d.mts.map +1 -1
- package/dist/config.mjs +3 -2
- package/dist/{credentials-s1kLcIzK.mjs → credentials-B5zRHdAl.mjs} +21 -6
- package/dist/credentials-B5zRHdAl.mjs.map +1 -0
- package/dist/{credentials-C8DWtnMY.cjs → credentials-BapzjyV5.cjs} +26 -5
- package/dist/credentials-BapzjyV5.cjs.map +1 -0
- package/dist/credentials-Dh0Q6HzY.mjs +2548 -0
- package/dist/credentials-Dh0Q6HzY.mjs.map +1 -0
- package/dist/credentials-K961ThG3.cjs +2680 -0
- package/dist/credentials-K961ThG3.cjs.map +1 -0
- package/dist/deploy/sniffer-routes-worker.cjs +6 -2
- package/dist/deploy/sniffer-routes-worker.cjs.map +1 -1
- package/dist/deploy/sniffer-routes-worker.mjs +6 -2
- package/dist/deploy/sniffer-routes-worker.mjs.map +1 -1
- package/dist/discover-CAlFgYec.mjs +229 -0
- package/dist/discover-CAlFgYec.mjs.map +1 -0
- package/dist/discover-DTmFeloL.cjs +271 -0
- package/dist/discover-DTmFeloL.cjs.map +1 -0
- package/dist/dokploy-api-BS2xnJLZ.mjs +3 -0
- package/dist/{dokploy-api-CqOIKHme.cjs → dokploy-api-BsVH0y_s.cjs} +141 -32
- package/dist/dokploy-api-BsVH0y_s.cjs.map +1 -0
- package/dist/dokploy-api-BuxDRo3l.cjs +3 -0
- package/dist/{dokploy-api-sfZFlWuE.mjs → dokploy-api-aTFPz7_4.mjs} +141 -32
- package/dist/dokploy-api-aTFPz7_4.mjs.map +1 -0
- package/dist/emit-CbcRolsa.cjs +236 -0
- package/dist/emit-CbcRolsa.cjs.map +1 -0
- package/dist/emit-CiZS_5Ub.mjs +206 -0
- package/dist/emit-CiZS_5Ub.mjs.map +1 -0
- package/dist/{encryption-MfXAiFTm.cjs → encryption-C6jaU0hE.cjs} +1 -1
- package/dist/{encryption-MfXAiFTm.cjs.map → encryption-C6jaU0hE.cjs.map} +1 -1
- package/dist/{encryption-BVS7Vmzs.cjs → encryption-CHzzeR8a.cjs} +1 -1
- package/dist/encryption-CQUncu7v.mjs +3 -0
- package/dist/{encryption-CO5Q4Bhf.mjs → encryption-D-abyhZx.mjs} +1 -1
- package/dist/{encryption-CO5Q4Bhf.mjs.map → encryption-D-abyhZx.mjs.map} +1 -1
- package/dist/fullstack-secrets-C-GGohke.cjs +111 -0
- package/dist/fullstack-secrets-C-GGohke.cjs.map +1 -0
- package/dist/fullstack-secrets-D1o9-G5l.mjs +87 -0
- package/dist/fullstack-secrets-D1o9-G5l.mjs.map +1 -0
- package/dist/{fullstack-secrets-BYzi6Hwl.cjs → generator-CNzBw7g5.cjs} +1 -114
- package/dist/generator-CNzBw7g5.cjs.map +1 -0
- package/dist/{fullstack-secrets-l8s3II_H.mjs → generator-VE2JrFlY.mjs} +2 -85
- package/dist/generator-VE2JrFlY.mjs.map +1 -0
- package/dist/index-BThUzEIp.d.mts +175 -0
- package/dist/index-BThUzEIp.d.mts.map +1 -0
- package/dist/index-CHB4tSzX.d.cts +175 -0
- package/dist/index-CHB4tSzX.d.cts.map +1 -0
- package/dist/index.cjs +2329 -1584
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +2306 -1561
- package/dist/index.mjs.map +1 -1
- package/dist/{openapi-Cfwi0fqF.mjs → openapi-CgpMWMmM.mjs} +174 -95
- package/dist/openapi-CgpMWMmM.mjs.map +1 -0
- package/dist/{openapi-BzNOC7_i.cjs → openapi-CljONd_M.cjs} +175 -108
- package/dist/openapi-CljONd_M.cjs.map +1 -0
- package/dist/{openapi-react-query-C4iIvpPf.mjs → openapi-react-query-Byltvm_7.mjs} +2 -2
- package/dist/openapi-react-query-Byltvm_7.mjs.map +1 -0
- package/dist/{openapi-react-query-CYWik72n.cjs → openapi-react-query-CmJ1xDbn.cjs} +2 -2
- package/dist/openapi-react-query-CmJ1xDbn.cjs.map +1 -0
- package/dist/openapi-react-query.cjs +1 -1
- package/dist/openapi-react-query.mjs +1 -1
- package/dist/openapi.cjs +4 -3
- package/dist/openapi.d.cts +1 -1
- package/dist/openapi.d.mts +1 -1
- package/dist/openapi.mjs +4 -3
- package/dist/reconcile/public.cjs +9 -0
- package/dist/reconcile/public.d.cts +125 -0
- package/dist/reconcile/public.d.cts.map +1 -0
- package/dist/reconcile/public.d.mts +125 -0
- package/dist/reconcile/public.d.mts.map +1 -0
- package/dist/reconcile/public.mjs +4 -0
- package/dist/{reconcile-B2FoJE0a.mjs → reconcile-CFs8C_1a.mjs} +5 -4
- package/dist/reconcile-CFs8C_1a.mjs.map +1 -0
- package/dist/{reconcile-BzqKJ2Rt.cjs → reconcile-D0pimNiy.cjs} +5 -4
- package/dist/reconcile-D0pimNiy.cjs.map +1 -0
- package/dist/setup-CJiQM2pX.cjs +473 -0
- package/dist/setup-CJiQM2pX.cjs.map +1 -0
- package/dist/setup-DMtU3p41.cjs +11 -0
- package/dist/setup-DOsYueeQ.mjs +443 -0
- package/dist/setup-DOsYueeQ.mjs.map +1 -0
- package/dist/setup-DSutDAlt.mjs +11 -0
- package/dist/{storage-B1wvztiJ.cjs → storage-BJmzYxt8.cjs} +1 -1
- package/dist/{storage-B1wvztiJ.cjs.map → storage-BJmzYxt8.cjs.map} +1 -1
- package/dist/{storage-DOEtT2Hr.cjs → storage-BM9hGpgv.cjs} +1 -1
- package/dist/{storage-dbb9RyBl.mjs → storage-Bi24WfoW.mjs} +1 -1
- package/dist/{storage-dbb9RyBl.mjs.map → storage-Bi24WfoW.mjs.map} +1 -1
- package/dist/{storage-Cs4WBsc4.mjs → storage-CYlGwWTj.mjs} +1 -1
- package/dist/{sync-CSooqRQ8.mjs → sync-CmEuNZsB.mjs} +2 -2
- package/dist/{sync-CSooqRQ8.mjs.map → sync-CmEuNZsB.mjs.map} +1 -1
- package/dist/sync-D306yOWu.cjs +4 -0
- package/dist/{sync-o_CtEbvR.cjs → sync-SizaChmC.cjs} +2 -2
- package/dist/{sync-o_CtEbvR.cjs.map → sync-SizaChmC.cjs.map} +1 -1
- package/dist/{sync-B5UHXwRM.mjs → sync-hOqAWHR6.mjs} +1 -1
- package/dist/{index-Bw548Bta.d.mts → types-C-arnQ1r.d.mts} +590 -143
- package/dist/types-C-arnQ1r.d.mts.map +1 -0
- package/dist/{index-DTpkeFb8.d.cts → types-abJQuk7m.d.cts} +590 -143
- package/dist/types-abJQuk7m.d.cts.map +1 -0
- package/dist/workspace/index.cjs +5 -1
- package/dist/workspace/index.d.cts +3 -3
- package/dist/workspace/index.d.mts +3 -3
- package/dist/workspace/index.mjs +2 -2
- package/dist/{workspace-D-37Ylqo.mjs → workspace-7FqprxuJ.mjs} +117 -30
- package/dist/workspace-7FqprxuJ.mjs.map +1 -0
- package/dist/workspace-8acupeaI.cjs +9 -0
- package/dist/{workspace-CQTT7HJQ.cjs → workspace-XvqO9jIv.cjs} +139 -28
- package/dist/workspace-XvqO9jIv.cjs.map +1 -0
- package/dist/workspace-yP5AHnrn.mjs +8 -0
- package/package.json +26 -9
- package/CHANGELOG.md +0 -623
- package/FUNCTION_CRON_SUPPORT.md +0 -266
- package/dist/CachedStateProvider-GcGziXh1.mjs +0 -3
- package/dist/HostingerProvider-B2ZYz7Yc.mjs.map +0 -1
- package/dist/HostingerProvider-CrHfsgz9.cjs.map +0 -1
- package/dist/bundler-DkA4qzUD.mjs.map +0 -1
- package/dist/bundler-Dufq3uvI.cjs.map +0 -1
- package/dist/config-Bbu1JKvf.mjs +0 -211
- package/dist/config-Bbu1JKvf.mjs.map +0 -1
- package/dist/config-DujV8DbR.cjs +0 -253
- package/dist/config-DujV8DbR.cjs.map +0 -1
- package/dist/credentials-C8DWtnMY.cjs.map +0 -1
- package/dist/credentials-s1kLcIzK.mjs.map +0 -1
- package/dist/dokploy-api-BPYkG-ZZ.cjs +0 -3
- package/dist/dokploy-api-BiSzWM4v.mjs +0 -3
- package/dist/dokploy-api-CqOIKHme.cjs.map +0 -1
- package/dist/dokploy-api-sfZFlWuE.mjs.map +0 -1
- package/dist/encryption-Bd_m4q3g.mjs +0 -3
- package/dist/fullstack-secrets-BYzi6Hwl.cjs.map +0 -1
- package/dist/fullstack-secrets-l8s3II_H.mjs.map +0 -1
- package/dist/index-Bw548Bta.d.mts.map +0 -1
- package/dist/index-DTpkeFb8.d.cts.map +0 -1
- package/dist/openapi-BzNOC7_i.cjs.map +0 -1
- package/dist/openapi-Cfwi0fqF.mjs.map +0 -1
- package/dist/openapi-react-query-C4iIvpPf.mjs.map +0 -1
- package/dist/openapi-react-query-CYWik72n.cjs.map +0 -1
- package/dist/reconcile-B2FoJE0a.mjs.map +0 -1
- package/dist/reconcile-BzqKJ2Rt.cjs.map +0 -1
- package/dist/setup-DDXUXzzl.mjs +0 -765
- package/dist/setup-DDXUXzzl.mjs.map +0 -1
- package/dist/setup-DLwhfyt-.cjs +0 -8
- package/dist/setup-Dh-B7YTX.mjs +0 -8
- package/dist/setup-WZ-xqAQO.cjs +0 -849
- package/dist/setup-WZ-xqAQO.cjs.map +0 -1
- package/dist/sync-BLA94rgC.cjs +0 -4
- package/dist/types-B3GQUg3k.d.mts +0 -280
- package/dist/types-B3GQUg3k.d.mts.map +0 -1
- package/dist/types-BWQDiooe.d.cts +0 -280
- package/dist/types-BWQDiooe.d.cts.map +0 -1
- package/dist/workspace-CQTT7HJQ.cjs.map +0 -1
- package/dist/workspace-D-37Ylqo.mjs.map +0 -1
- package/docs/OPENAPI_TYPESCRIPT_DESIGN.md +0 -408
- package/docs/dev-server-resilience-design.md +0 -189
- package/docs/manifest-refactor-design.md +0 -287
- package/examples/cron-example.ts +0 -45
- package/examples/env.ts +0 -33
- package/examples/function-example.ts +0 -40
- package/examples/gkm.config.json +0 -22
- package/examples/gkm.config.ts +0 -14
- package/examples/gkm.minimal.config.json +0 -7
- package/examples/gkm.production.config.json +0 -27
- package/examples/logger.ts +0 -10
- package/scripts/sync-versions.ts +0 -108
- package/src/__tests__/EndpointGenerator.hooks.spec.ts +0 -204
- package/src/__tests__/config.spec.ts +0 -422
- package/src/__tests__/loadEnvFiles.spec.ts +0 -131
- package/src/__tests__/normalizeHooksConfig.spec.ts +0 -63
- package/src/__tests__/openapi-react-query.spec.ts +0 -506
- package/src/__tests__/openapi.spec.ts +0 -625
- package/src/__tests__/test-helpers.ts +0 -181
- package/src/auth/__tests__/credentials.spec.ts +0 -331
- package/src/auth/__tests__/index.spec.ts +0 -237
- package/src/auth/credentials.ts +0 -286
- package/src/auth/index.ts +0 -233
- package/src/build/__tests__/bundler.spec.ts +0 -446
- package/src/build/__tests__/endpoint-analyzer.spec.ts +0 -623
- package/src/build/__tests__/handler-templates.spec.ts +0 -1287
- package/src/build/__tests__/index-new.spec.ts +0 -550
- package/src/build/__tests__/manifests.spec.ts +0 -583
- package/src/build/__tests__/partitions.spec.ts +0 -110
- package/src/build/__tests__/workspace-build.spec.ts +0 -215
- package/src/build/bundler.ts +0 -256
- package/src/build/endpoint-analyzer.ts +0 -236
- package/src/build/handler-templates.ts +0 -1253
- package/src/build/index.ts +0 -616
- package/src/build/manifests.ts +0 -285
- package/src/build/partitions.ts +0 -58
- package/src/build/providerResolver.ts +0 -184
- package/src/build/types.ts +0 -104
- package/src/config.ts +0 -330
- package/src/credentials/__tests__/fullDockerPorts.spec.ts +0 -144
- package/src/credentials/__tests__/helpers.ts +0 -112
- package/src/credentials/__tests__/prepareEntryCredentials.spec.ts +0 -125
- package/src/credentials/__tests__/readonlyDockerPorts.spec.ts +0 -190
- package/src/credentials/__tests__/workspaceCredentials.spec.ts +0 -209
- package/src/credentials/index.ts +0 -843
- package/src/debug.ts +0 -68
- package/src/deploy/CachedStateProvider.ts +0 -86
- package/src/deploy/LocalStateProvider.ts +0 -57
- package/src/deploy/SSMStateProvider.ts +0 -117
- package/src/deploy/StateProvider.ts +0 -175
- package/src/deploy/__tests__/CachedStateProvider.spec.ts +0 -235
- package/src/deploy/__tests__/HostingerProvider.spec.ts +0 -347
- package/src/deploy/__tests__/LocalStateProvider.spec.ts +0 -130
- package/src/deploy/__tests__/Route53Provider.spec.ts +0 -425
- package/src/deploy/__tests__/SSMStateProvider.spec.ts +0 -201
- package/src/deploy/__tests__/__fixtures__/entry-apps/async-entry.ts +0 -24
- package/src/deploy/__tests__/__fixtures__/entry-apps/nested-config-entry.ts +0 -24
- package/src/deploy/__tests__/__fixtures__/entry-apps/no-env-entry.ts +0 -12
- package/src/deploy/__tests__/__fixtures__/entry-apps/simple-entry.ts +0 -14
- package/src/deploy/__tests__/__fixtures__/entry-apps/throwing-entry.ts +0 -16
- package/src/deploy/__tests__/__fixtures__/env-parsers/non-function-export.ts +0 -10
- package/src/deploy/__tests__/__fixtures__/env-parsers/optional-env-parser.ts +0 -21
- package/src/deploy/__tests__/__fixtures__/env-parsers/parseable-env-parser.ts +0 -18
- package/src/deploy/__tests__/__fixtures__/env-parsers/throwing-env-parser.ts +0 -16
- package/src/deploy/__tests__/__fixtures__/env-parsers/valid-env-parser.ts +0 -16
- package/src/deploy/__tests__/__fixtures__/route-apps/endpoints/auth.ts +0 -16
- package/src/deploy/__tests__/__fixtures__/route-apps/endpoints/health.ts +0 -13
- package/src/deploy/__tests__/__fixtures__/route-apps/endpoints/users.ts +0 -15
- package/src/deploy/__tests__/__fixtures__/route-apps/services.ts +0 -55
- package/src/deploy/__tests__/backup-provisioner.spec.ts +0 -428
- package/src/deploy/__tests__/createDnsProvider.spec.ts +0 -195
- package/src/deploy/__tests__/createStateProvider.spec.ts +0 -126
- package/src/deploy/__tests__/dns-orchestration.spec.ts +0 -192
- package/src/deploy/__tests__/dns-verification.spec.ts +0 -229
- package/src/deploy/__tests__/docker.spec.ts +0 -149
- package/src/deploy/__tests__/dokploy-api.spec.ts +0 -697
- package/src/deploy/__tests__/dokploy.spec.ts +0 -435
- package/src/deploy/__tests__/domain.spec.ts +0 -235
- package/src/deploy/__tests__/env-resolver.spec.ts +0 -903
- package/src/deploy/__tests__/index.spec.ts +0 -1091
- package/src/deploy/__tests__/init.spec.ts +0 -793
- package/src/deploy/__tests__/secrets.spec.ts +0 -303
- package/src/deploy/__tests__/sniffer.spec.ts +0 -838
- package/src/deploy/__tests__/state-e2e.spec.ts +0 -387
- package/src/deploy/__tests__/state.spec.ts +0 -876
- package/src/deploy/__tests__/undeploy.spec.ts +0 -758
- package/src/deploy/backup-provisioner.ts +0 -316
- package/src/deploy/dns/DnsProvider.ts +0 -201
- package/src/deploy/dns/HostingerProvider.ts +0 -174
- package/src/deploy/dns/Route53Provider.ts +0 -340
- package/src/deploy/dns/hostinger-api.ts +0 -261
- package/src/deploy/dns/index.ts +0 -627
- package/src/deploy/docker.ts +0 -260
- package/src/deploy/dokploy-api.ts +0 -1101
- package/src/deploy/dokploy.ts +0 -177
- package/src/deploy/domain.ts +0 -134
- package/src/deploy/env-resolver.ts +0 -305
- package/src/deploy/index.ts +0 -2094
- package/src/deploy/init.ts +0 -427
- package/src/deploy/secrets.ts +0 -187
- package/src/deploy/sniffer-envkit-patch.ts +0 -61
- package/src/deploy/sniffer-hooks.ts +0 -57
- package/src/deploy/sniffer-loader.ts +0 -28
- package/src/deploy/sniffer-routes-worker.ts +0 -104
- package/src/deploy/sniffer-worker.ts +0 -75
- package/src/deploy/sniffer.ts +0 -578
- package/src/deploy/state-commands.ts +0 -274
- package/src/deploy/state.ts +0 -482
- package/src/deploy/types.ts +0 -102
- package/src/deploy/undeploy.ts +0 -407
- package/src/dev/__tests__/entry-integration.spec.ts +0 -347
- package/src/dev/__tests__/entry.spec.ts +0 -144
- package/src/dev/__tests__/index.spec.ts +0 -2084
- package/src/dev/index.ts +0 -1649
- package/src/docker/__tests__/compose.spec.ts +0 -1142
- package/src/docker/__tests__/templates.spec.ts +0 -694
- package/src/docker/compose.ts +0 -808
- package/src/docker/index.ts +0 -523
- package/src/docker/templates.ts +0 -1067
- package/src/exec/index.ts +0 -118
- package/src/generators/CronGenerator.ts +0 -105
- package/src/generators/EndpointGenerator.ts +0 -954
- package/src/generators/FunctionGenerator.ts +0 -117
- package/src/generators/Generator.ts +0 -147
- package/src/generators/OpenApiTsGenerator.ts +0 -821
- package/src/generators/QueueGenerator.ts +0 -245
- package/src/generators/SubscriberGenerator.ts +0 -282
- package/src/generators/TopicGenerator.ts +0 -45
- package/src/generators/__tests__/CronGenerator.spec.ts +0 -445
- package/src/generators/__tests__/EndpointGenerator.spec.ts +0 -544
- package/src/generators/__tests__/FunctionGenerator.spec.ts +0 -256
- package/src/generators/__tests__/Generator.bustCache.spec.ts +0 -72
- package/src/generators/__tests__/OpenApiTsGenerator.registry.spec.ts +0 -98
- package/src/generators/__tests__/OpenApiTsGenerator.responseType.spec.ts +0 -56
- package/src/generators/__tests__/QueueGenerator.spec.ts +0 -141
- package/src/generators/__tests__/SubscriberGenerator.spec.ts +0 -410
- package/src/generators/index.ts +0 -11
- package/src/index.ts +0 -972
- package/src/init/__tests__/generators.spec.ts +0 -1070
- package/src/init/__tests__/init.spec.ts +0 -577
- package/src/init/__tests__/utils.spec.ts +0 -104
- package/src/init/generators/auth.ts +0 -225
- package/src/init/generators/config.ts +0 -316
- package/src/init/generators/docker.ts +0 -388
- package/src/init/generators/env.ts +0 -62
- package/src/init/generators/index.ts +0 -6
- package/src/init/generators/mobile-expo.ts +0 -576
- package/src/init/generators/models.ts +0 -153
- package/src/init/generators/monorepo.ts +0 -475
- package/src/init/generators/package.ts +0 -95
- package/src/init/generators/source.ts +0 -15
- package/src/init/generators/test.ts +0 -178
- package/src/init/generators/ui.ts +0 -1473
- package/src/init/generators/web-tanstack.ts +0 -348
- package/src/init/generators/web.ts +0 -363
- package/src/init/index.ts +0 -542
- package/src/init/templates/api.ts +0 -404
- package/src/init/templates/index.ts +0 -342
- package/src/init/templates/minimal.ts +0 -207
- package/src/init/templates/serverless.ts +0 -148
- package/src/init/templates/worker.ts +0 -216
- package/src/init/utils.ts +0 -197
- package/src/init/versions.ts +0 -52
- package/src/openapi-react-query.ts +0 -288
- package/src/openapi.ts +0 -259
- package/src/secrets/__tests__/encryption.spec.ts +0 -226
- package/src/secrets/__tests__/generator.spec.ts +0 -575
- package/src/secrets/__tests__/index.spec.ts +0 -91
- package/src/secrets/__tests__/reconcile.spec.ts +0 -123
- package/src/secrets/__tests__/storage.spec.ts +0 -645
- package/src/secrets/encryption.ts +0 -91
- package/src/secrets/generator.ts +0 -329
- package/src/secrets/index.ts +0 -417
- package/src/secrets/keystore.ts +0 -144
- package/src/secrets/reconcile.ts +0 -53
- package/src/secrets/storage.ts +0 -337
- package/src/secrets/sync.ts +0 -136
- package/src/secrets/types.ts +0 -70
- package/src/setup/__tests__/auto-setup.spec.ts +0 -147
- package/src/setup/__tests__/reconcile-secrets.spec.ts +0 -439
- package/src/setup/fullstack-secrets.ts +0 -140
- package/src/setup/index.ts +0 -411
- package/src/test/__tests__/__fixtures__/workspace.ts +0 -104
- package/src/test/__tests__/api.spec.ts +0 -199
- package/src/test/__tests__/auth.spec.ts +0 -162
- package/src/test/__tests__/index.spec.ts +0 -502
- package/src/test/__tests__/web.spec.ts +0 -210
- package/src/test/index.ts +0 -198
- package/src/types.ts +0 -363
- package/src/upgrade/__tests__/index.spec.ts +0 -354
- package/src/upgrade/index.ts +0 -253
- package/src/workspace/__tests__/client-generator.spec.ts +0 -326
- package/src/workspace/__tests__/index.spec.ts +0 -766
- package/src/workspace/__tests__/publicEnv.spec.ts +0 -64
- package/src/workspace/__tests__/schema.spec.ts +0 -737
- package/src/workspace/__tests__/type-inference.spec.ts +0 -251
- package/src/workspace/client-generator.ts +0 -109
- package/src/workspace/index.ts +0 -433
- package/src/workspace/publicEnv.ts +0 -57
- package/src/workspace/schema.ts +0 -861
- package/src/workspace/types.ts +0 -943
- package/tsconfig.json +0 -9
- package/tsdown.config.ts +0 -22
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { CacheBackend, EmailBackend } from "../types-abJQuk7m.cjs";
|
|
2
|
+
import { ConstructManifest, Declaration, RouteInfo } from "@geekmidas/manifest";
|
|
3
|
+
|
|
4
|
+
//#region src/reconcile/discover.d.ts
|
|
5
|
+
|
|
6
|
+
/** The construct face discovery needs: an id, and the ability to declare. */
|
|
7
|
+
interface Declarable {
|
|
8
|
+
id: string;
|
|
9
|
+
declare(): Declaration[];
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Whether a module export is a construct.
|
|
13
|
+
*
|
|
14
|
+
* Deliberately loose about what else it carries — a construct that also has a
|
|
15
|
+
* `service` is still a construct, and requiring one would exclude the kinds that
|
|
16
|
+
* own no address.
|
|
17
|
+
*/
|
|
18
|
+
declare function isDeclarable(value: unknown): value is Declarable;
|
|
19
|
+
interface DiscoverOptions {
|
|
20
|
+
/** The glob(s) to search. One pattern, not one per kind. */
|
|
21
|
+
patterns: string | readonly string[];
|
|
22
|
+
cwd?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Re-import changed modules, for the dev watcher.
|
|
25
|
+
*
|
|
26
|
+
* A single glob makes discovery more central, not less: a new construct file
|
|
27
|
+
* has to be picked up on `add`, not only on `change`.
|
|
28
|
+
*/
|
|
29
|
+
bustCache?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Filled in with where each construct was found, when provided.
|
|
32
|
+
*
|
|
33
|
+
* Discovery is the only thing that knows: it globbed the files and imported
|
|
34
|
+
* them. Everything downstream that needs to *write* an import — the build,
|
|
35
|
+
* generating a server entry that reads a surface's logger — would otherwise
|
|
36
|
+
* have to be told the path in config, which is the string this removes.
|
|
37
|
+
*
|
|
38
|
+
* An out-parameter rather than a second return value so that every existing
|
|
39
|
+
* caller, which wants the manifest and nothing else, is unchanged.
|
|
40
|
+
*/
|
|
41
|
+
sources?: Record<string, ConstructSource>;
|
|
42
|
+
}
|
|
43
|
+
/** Where a construct was declared, and under what name. */
|
|
44
|
+
interface ConstructSource {
|
|
45
|
+
/** Absolute path to the module that exported it. */
|
|
46
|
+
file: string;
|
|
47
|
+
/** The name it was exported as — what an import statement has to say. */
|
|
48
|
+
exportName: string;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Build the construct manifest for a project.
|
|
52
|
+
*
|
|
53
|
+
* Runs the manifest's own validation before returning, so an app is wrong here
|
|
54
|
+
* — where the error names a file — rather than at deploy.
|
|
55
|
+
*
|
|
56
|
+
* @throws {DuplicateConstruct} when two exports claim one id.
|
|
57
|
+
*/
|
|
58
|
+
declare function discover(options: DiscoverOptions): Promise<ConstructManifest>;
|
|
59
|
+
/** Two constructs claiming one id. */
|
|
60
|
+
//#endregion
|
|
61
|
+
//#region src/reconcile/emit.d.ts
|
|
62
|
+
/** Where the build writes it, relative to the app root. */
|
|
63
|
+
declare const MANIFEST_PATH = ".gkm/manifest.ts";
|
|
64
|
+
/**
|
|
65
|
+
* Fold the build's generated routes into the surface that serves them.
|
|
66
|
+
*
|
|
67
|
+
* The routes already exist: `gkm build` generates one handler per endpoint and
|
|
68
|
+
* records its path, method and environment. What was missing is that the
|
|
69
|
+
* *construct* manifest never learned about them, so a `rest-api` node said
|
|
70
|
+
* `endpoints: []` while five handlers sat in `.gkm/`. Two documents describing
|
|
71
|
+
* the same routes, one of them wrong.
|
|
72
|
+
*
|
|
73
|
+
* Merging here rather than making the construct name a glob or import its
|
|
74
|
+
* endpoints: the build is the thing that already walked the filesystem and
|
|
75
|
+
* already knows where it wrote each handler. Asking the declaration to restate
|
|
76
|
+
* any of that is how the two come to disagree.
|
|
77
|
+
*
|
|
78
|
+
* Attribution is by exclusion — routes go to the surface that declared none of
|
|
79
|
+
* its own. A surface with static endpoints (an auth server's single wildcard)
|
|
80
|
+
* keeps them. That is exact while an app has one API of its own, and needs a
|
|
81
|
+
* real answer the day it has two; the alternative today would be inventing one
|
|
82
|
+
* before anything needs it.
|
|
83
|
+
*
|
|
84
|
+
* **Only from a provider that generates one handler per route.** The `server`
|
|
85
|
+
* provider generates a single catch-all — `ALL *` pointing at the Hono app that
|
|
86
|
+
* routes in-process — which is a true description of that build and a false
|
|
87
|
+
* description of the application. Merging it wrote `endpoints: [{ method:
|
|
88
|
+
* 'ALL', path: '*' }]` into a manifest for an app with five routes, and made the
|
|
89
|
+
* document's contents depend on which `--provider` ran last. A manifest must not
|
|
90
|
+
* do that.
|
|
91
|
+
*/
|
|
92
|
+
declare function withRoutes(manifest: ConstructManifest, routes: readonly RouteInfo[], options: {
|
|
93
|
+
perRoute: boolean;
|
|
94
|
+
}): ConstructManifest;
|
|
95
|
+
/**
|
|
96
|
+
* Fold in the compute the build generated: functions, crons, queue workers and
|
|
97
|
+
* topic subscribers.
|
|
98
|
+
*
|
|
99
|
+
* All four are named by their *export*, the same way an endpoint's handler is —
|
|
100
|
+
* `CronGenerator` uses the export key as the name — so none of them can declare
|
|
101
|
+
* themselves and all of them are the build's to add. That is why a `Function`
|
|
102
|
+
* has no `declare()` and never will.
|
|
103
|
+
*
|
|
104
|
+
* A worker and a subscriber **nest** inside the queue or topic that triggers
|
|
105
|
+
* them, because position carries the trigger. A function and a cron are
|
|
106
|
+
* top-level, because nothing triggers them but a caller or a clock.
|
|
107
|
+
*/
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* The manifest as TypeScript source.
|
|
111
|
+
*
|
|
112
|
+
* Pure, so what gets written can be asserted without touching a filesystem.
|
|
113
|
+
*/
|
|
114
|
+
declare function manifestModule(manifest: ConstructManifest, backends?: Backends): string;
|
|
115
|
+
/** Write it where the deploy config expects to import it from. */
|
|
116
|
+
declare function writeManifestModule(manifest: ConstructManifest, appRoot: string, backends?: Backends): Promise<string>;
|
|
117
|
+
/** The choices that are deployment config rather than declaration. */
|
|
118
|
+
interface Backends {
|
|
119
|
+
cache?: CacheBackend;
|
|
120
|
+
email?: EmailBackend;
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=emit.d.ts.map
|
|
123
|
+
//#endregion
|
|
124
|
+
export { DiscoverOptions, MANIFEST_PATH, discover, isDeclarable, manifestModule, withRoutes, writeManifestModule };
|
|
125
|
+
//# sourceMappingURL=public.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.d.cts","names":[],"sources":["../../src/reconcile/discover.ts","../../src/reconcile/emit.ts"],"sourcesContent":[],"mappings":";;;;;;AAiGU,UAnEA,UAAA,CAmEA;;aAjEE;;ACKZ;AA8BA;;;;;AAIoB;AA2JJ,iBDxLA,YAAA,CCwLc,KAAA,EAAA,OAAA,CAAA,EAAA,KAAA,IDxLyB,UCwLzB;AAAA,UD5Kb,eAAA,CC4Ka;EAAA;EACF,QACjB,EAAA,MAAA,GAAA,SAAA,MAAA,EAAA;EAAa,GAAA,CAAA,EAAA,MAAA;EA8BF;;;;;AAIZ;EAUO,SAAA,CAAA,EAAQ,OAAA;EAAA;;;AAEJ;;;;;;;;YDtMV,eAAe;;;UAIT,eAAA;;;;;;;;;;;;;;iBAeK,QAAA,UACZ,kBACP,QAAQ;;;;AC5DX;AA8BgB,cA9BH,aAAA,GA8Ba,kBAAA;;;;;AAIN;AA2JpB;;;;AAEwB;AA8BxB;;;;;AAIU;AAUV;;;;AAEqB;;;;;;;;iBA/ML,UAAA,WACL,oCACO;;IAEf;;;;;;;;;;;;;;;;;;;;iBA2Ja,cAAA,WACL,8BACA;;iBA8BW,mBAAA,WACX,+CAEA,WACR;;UAUc,QAAA;UACR;UACA"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { CacheBackend, EmailBackend } from "../types-C-arnQ1r.mjs";
|
|
2
|
+
import { ConstructManifest, Declaration, RouteInfo } from "@geekmidas/manifest";
|
|
3
|
+
|
|
4
|
+
//#region src/reconcile/discover.d.ts
|
|
5
|
+
|
|
6
|
+
/** The construct face discovery needs: an id, and the ability to declare. */
|
|
7
|
+
interface Declarable {
|
|
8
|
+
id: string;
|
|
9
|
+
declare(): Declaration[];
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Whether a module export is a construct.
|
|
13
|
+
*
|
|
14
|
+
* Deliberately loose about what else it carries — a construct that also has a
|
|
15
|
+
* `service` is still a construct, and requiring one would exclude the kinds that
|
|
16
|
+
* own no address.
|
|
17
|
+
*/
|
|
18
|
+
declare function isDeclarable(value: unknown): value is Declarable;
|
|
19
|
+
interface DiscoverOptions {
|
|
20
|
+
/** The glob(s) to search. One pattern, not one per kind. */
|
|
21
|
+
patterns: string | readonly string[];
|
|
22
|
+
cwd?: string;
|
|
23
|
+
/**
|
|
24
|
+
* Re-import changed modules, for the dev watcher.
|
|
25
|
+
*
|
|
26
|
+
* A single glob makes discovery more central, not less: a new construct file
|
|
27
|
+
* has to be picked up on `add`, not only on `change`.
|
|
28
|
+
*/
|
|
29
|
+
bustCache?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Filled in with where each construct was found, when provided.
|
|
32
|
+
*
|
|
33
|
+
* Discovery is the only thing that knows: it globbed the files and imported
|
|
34
|
+
* them. Everything downstream that needs to *write* an import — the build,
|
|
35
|
+
* generating a server entry that reads a surface's logger — would otherwise
|
|
36
|
+
* have to be told the path in config, which is the string this removes.
|
|
37
|
+
*
|
|
38
|
+
* An out-parameter rather than a second return value so that every existing
|
|
39
|
+
* caller, which wants the manifest and nothing else, is unchanged.
|
|
40
|
+
*/
|
|
41
|
+
sources?: Record<string, ConstructSource>;
|
|
42
|
+
}
|
|
43
|
+
/** Where a construct was declared, and under what name. */
|
|
44
|
+
interface ConstructSource {
|
|
45
|
+
/** Absolute path to the module that exported it. */
|
|
46
|
+
file: string;
|
|
47
|
+
/** The name it was exported as — what an import statement has to say. */
|
|
48
|
+
exportName: string;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Build the construct manifest for a project.
|
|
52
|
+
*
|
|
53
|
+
* Runs the manifest's own validation before returning, so an app is wrong here
|
|
54
|
+
* — where the error names a file — rather than at deploy.
|
|
55
|
+
*
|
|
56
|
+
* @throws {DuplicateConstruct} when two exports claim one id.
|
|
57
|
+
*/
|
|
58
|
+
declare function discover(options: DiscoverOptions): Promise<ConstructManifest>;
|
|
59
|
+
/** Two constructs claiming one id. */
|
|
60
|
+
//#endregion
|
|
61
|
+
//#region src/reconcile/emit.d.ts
|
|
62
|
+
/** Where the build writes it, relative to the app root. */
|
|
63
|
+
declare const MANIFEST_PATH = ".gkm/manifest.ts";
|
|
64
|
+
/**
|
|
65
|
+
* Fold the build's generated routes into the surface that serves them.
|
|
66
|
+
*
|
|
67
|
+
* The routes already exist: `gkm build` generates one handler per endpoint and
|
|
68
|
+
* records its path, method and environment. What was missing is that the
|
|
69
|
+
* *construct* manifest never learned about them, so a `rest-api` node said
|
|
70
|
+
* `endpoints: []` while five handlers sat in `.gkm/`. Two documents describing
|
|
71
|
+
* the same routes, one of them wrong.
|
|
72
|
+
*
|
|
73
|
+
* Merging here rather than making the construct name a glob or import its
|
|
74
|
+
* endpoints: the build is the thing that already walked the filesystem and
|
|
75
|
+
* already knows where it wrote each handler. Asking the declaration to restate
|
|
76
|
+
* any of that is how the two come to disagree.
|
|
77
|
+
*
|
|
78
|
+
* Attribution is by exclusion — routes go to the surface that declared none of
|
|
79
|
+
* its own. A surface with static endpoints (an auth server's single wildcard)
|
|
80
|
+
* keeps them. That is exact while an app has one API of its own, and needs a
|
|
81
|
+
* real answer the day it has two; the alternative today would be inventing one
|
|
82
|
+
* before anything needs it.
|
|
83
|
+
*
|
|
84
|
+
* **Only from a provider that generates one handler per route.** The `server`
|
|
85
|
+
* provider generates a single catch-all — `ALL *` pointing at the Hono app that
|
|
86
|
+
* routes in-process — which is a true description of that build and a false
|
|
87
|
+
* description of the application. Merging it wrote `endpoints: [{ method:
|
|
88
|
+
* 'ALL', path: '*' }]` into a manifest for an app with five routes, and made the
|
|
89
|
+
* document's contents depend on which `--provider` ran last. A manifest must not
|
|
90
|
+
* do that.
|
|
91
|
+
*/
|
|
92
|
+
declare function withRoutes(manifest: ConstructManifest, routes: readonly RouteInfo[], options: {
|
|
93
|
+
perRoute: boolean;
|
|
94
|
+
}): ConstructManifest;
|
|
95
|
+
/**
|
|
96
|
+
* Fold in the compute the build generated: functions, crons, queue workers and
|
|
97
|
+
* topic subscribers.
|
|
98
|
+
*
|
|
99
|
+
* All four are named by their *export*, the same way an endpoint's handler is —
|
|
100
|
+
* `CronGenerator` uses the export key as the name — so none of them can declare
|
|
101
|
+
* themselves and all of them are the build's to add. That is why a `Function`
|
|
102
|
+
* has no `declare()` and never will.
|
|
103
|
+
*
|
|
104
|
+
* A worker and a subscriber **nest** inside the queue or topic that triggers
|
|
105
|
+
* them, because position carries the trigger. A function and a cron are
|
|
106
|
+
* top-level, because nothing triggers them but a caller or a clock.
|
|
107
|
+
*/
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* The manifest as TypeScript source.
|
|
111
|
+
*
|
|
112
|
+
* Pure, so what gets written can be asserted without touching a filesystem.
|
|
113
|
+
*/
|
|
114
|
+
declare function manifestModule(manifest: ConstructManifest, backends?: Backends): string;
|
|
115
|
+
/** Write it where the deploy config expects to import it from. */
|
|
116
|
+
declare function writeManifestModule(manifest: ConstructManifest, appRoot: string, backends?: Backends): Promise<string>;
|
|
117
|
+
/** The choices that are deployment config rather than declaration. */
|
|
118
|
+
interface Backends {
|
|
119
|
+
cache?: CacheBackend;
|
|
120
|
+
email?: EmailBackend;
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=emit.d.ts.map
|
|
123
|
+
//#endregion
|
|
124
|
+
export { DiscoverOptions, MANIFEST_PATH, discover, isDeclarable, manifestModule, withRoutes, writeManifestModule };
|
|
125
|
+
//# sourceMappingURL=public.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.d.mts","names":[],"sources":["../../src/reconcile/discover.ts","../../src/reconcile/emit.ts"],"sourcesContent":[],"mappings":";;;;;;AAiGU,UAnEA,UAAA,CAmEA;;aAjEE;;ACKZ;AA8BA;;;;;AAIoB;AA2JJ,iBDxLA,YAAA,CCwLc,KAAA,EAAA,OAAA,CAAA,EAAA,KAAA,IDxLyB,UCwLzB;AAAA,UD5Kb,eAAA,CC4Ka;EAAA;EACF,QACjB,EAAA,MAAA,GAAA,SAAA,MAAA,EAAA;EAAa,GAAA,CAAA,EAAA,MAAA;EA8BF;;;;;AAIZ;EAUO,SAAA,CAAA,EAAQ,OAAA;EAAA;;;AAEJ;;;;;;;;YDtMV,eAAe;;;UAIT,eAAA;;;;;;;;;;;;;;iBAeK,QAAA,UACZ,kBACP,QAAQ;;;;AC5DX;AA8BgB,cA9BH,aAAA,GA8Ba,kBAAA;;;;;AAIN;AA2JpB;;;;AAEwB;AA8BxB;;;;;AAIU;AAUV;;;;AAEqB;;;;;;;;iBA/ML,UAAA,WACL,oCACO;;IAEf;;;;;;;;;;;;;;;;;;;;iBA2Ja,cAAA,WACL,8BACA;;iBA8BW,mBAAA,WACX,+CAEA,WACR;;UAUc,QAAA;UACR;UACA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { discover, isDeclarable } from "../discover-CAlFgYec.mjs";
|
|
2
|
+
import { MANIFEST_PATH, manifestModule, withRoutes, writeManifestModule } from "../emit-CiZS_5Ub.mjs";
|
|
3
|
+
|
|
4
|
+
export { MANIFEST_PATH, discover, isDeclarable, manifestModule, withRoutes, writeManifestModule };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import "./generator-VE2JrFlY.mjs";
|
|
2
|
+
import { generateFullstackCustomSecrets } from "./fullstack-secrets-D1o9-G5l.mjs";
|
|
2
3
|
|
|
3
4
|
//#region src/secrets/reconcile.ts
|
|
4
5
|
/**
|
|
@@ -10,10 +11,10 @@ import { generateFullstackCustomSecrets } from "./fullstack-secrets-l8s3II_H.mjs
|
|
|
10
11
|
*
|
|
11
12
|
* @returns ReconcileResult if keys were added, null if secrets are up-to-date
|
|
12
13
|
*/
|
|
13
|
-
function reconcileMissingSecrets(secrets, workspace) {
|
|
14
|
+
function reconcileMissingSecrets(secrets, workspace, containers = []) {
|
|
14
15
|
const isMultiApp = Object.keys(workspace.apps).length > 1;
|
|
15
16
|
if (!isMultiApp) return null;
|
|
16
|
-
const expectedCustom = generateFullstackCustomSecrets(workspace);
|
|
17
|
+
const expectedCustom = generateFullstackCustomSecrets(workspace, containers);
|
|
17
18
|
const addedKeys = [];
|
|
18
19
|
const mergedCustom = { ...secrets.custom };
|
|
19
20
|
for (const [key, value] of Object.entries(expectedCustom)) if (!(key in mergedCustom)) {
|
|
@@ -33,4 +34,4 @@ function reconcileMissingSecrets(secrets, workspace) {
|
|
|
33
34
|
|
|
34
35
|
//#endregion
|
|
35
36
|
export { reconcileMissingSecrets };
|
|
36
|
-
//# sourceMappingURL=reconcile-
|
|
37
|
+
//# sourceMappingURL=reconcile-CFs8C_1a.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconcile-CFs8C_1a.mjs","names":["secrets: StageSecrets","workspace: NormalizedWorkspace","containers: readonly string[]","addedKeys: string[]"],"sources":["../src/secrets/reconcile.ts"],"sourcesContent":["import { generateFullstackCustomSecrets } from '../setup/fullstack-secrets.js';\nimport type { NormalizedWorkspace } from '../workspace/types.js';\nimport type { StageSecrets } from './types.js';\n\nexport interface ReconcileResult {\n\t/** The updated secrets with missing keys backfilled */\n\tsecrets: StageSecrets;\n\t/** Keys that were added */\n\taddedKeys: string[];\n}\n\n/**\n * Reconcile missing custom secrets for a workspace.\n *\n * Compares current secrets against what generateFullstackCustomSecrets()\n * would produce and backfills any missing keys without overwriting\n * existing values.\n *\n * @returns ReconcileResult if keys were added, null if secrets are up-to-date\n */\nexport function reconcileMissingSecrets(\n\tsecrets: StageSecrets,\n\tworkspace: NormalizedWorkspace,\n\tcontainers: readonly string[] = [],\n): ReconcileResult | null {\n\tconst isMultiApp = Object.keys(workspace.apps).length > 1;\n\tif (!isMultiApp) {\n\t\treturn null;\n\t}\n\n\tconst expectedCustom = generateFullstackCustomSecrets(workspace, containers);\n\tconst addedKeys: string[] = [];\n\tconst mergedCustom = { ...secrets.custom };\n\n\tfor (const [key, value] of Object.entries(expectedCustom)) {\n\t\tif (!(key in mergedCustom)) {\n\t\t\tmergedCustom[key] = value;\n\t\t\taddedKeys.push(key);\n\t\t}\n\t}\n\n\tif (addedKeys.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn {\n\t\tsecrets: {\n\t\t\t...secrets,\n\t\t\tupdatedAt: new Date().toISOString(),\n\t\t\tcustom: mergedCustom,\n\t\t},\n\t\taddedKeys,\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;AAoBA,SAAgB,wBACfA,SACAC,WACAC,aAAgC,CAAE,GACT;CACzB,MAAM,aAAa,OAAO,KAAK,UAAU,KAAK,CAAC,SAAS;AACxD,MAAK,WACJ,QAAO;CAGR,MAAM,iBAAiB,+BAA+B,WAAW,WAAW;CAC5E,MAAMC,YAAsB,CAAE;CAC9B,MAAM,eAAe,EAAE,GAAG,QAAQ,OAAQ;AAE1C,MAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,eAAe,CACxD,OAAM,OAAO,eAAe;AAC3B,eAAa,OAAO;AACpB,YAAU,KAAK,IAAI;CACnB;AAGF,KAAI,UAAU,WAAW,EACxB,QAAO;AAGR,QAAO;EACN,SAAS;GACR,GAAG;GACH,WAAW,qBAAI,QAAO,aAAa;GACnC,QAAQ;EACR;EACD;CACA;AACD"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
require('./generator-CNzBw7g5.cjs');
|
|
2
|
+
const require_fullstack_secrets = require('./fullstack-secrets-C-GGohke.cjs');
|
|
2
3
|
|
|
3
4
|
//#region src/secrets/reconcile.ts
|
|
4
5
|
/**
|
|
@@ -10,10 +11,10 @@ const require_fullstack_secrets = require('./fullstack-secrets-BYzi6Hwl.cjs');
|
|
|
10
11
|
*
|
|
11
12
|
* @returns ReconcileResult if keys were added, null if secrets are up-to-date
|
|
12
13
|
*/
|
|
13
|
-
function reconcileMissingSecrets(secrets, workspace) {
|
|
14
|
+
function reconcileMissingSecrets(secrets, workspace, containers = []) {
|
|
14
15
|
const isMultiApp = Object.keys(workspace.apps).length > 1;
|
|
15
16
|
if (!isMultiApp) return null;
|
|
16
|
-
const expectedCustom = require_fullstack_secrets.generateFullstackCustomSecrets(workspace);
|
|
17
|
+
const expectedCustom = require_fullstack_secrets.generateFullstackCustomSecrets(workspace, containers);
|
|
17
18
|
const addedKeys = [];
|
|
18
19
|
const mergedCustom = { ...secrets.custom };
|
|
19
20
|
for (const [key, value] of Object.entries(expectedCustom)) if (!(key in mergedCustom)) {
|
|
@@ -33,4 +34,4 @@ function reconcileMissingSecrets(secrets, workspace) {
|
|
|
33
34
|
|
|
34
35
|
//#endregion
|
|
35
36
|
exports.reconcileMissingSecrets = reconcileMissingSecrets;
|
|
36
|
-
//# sourceMappingURL=reconcile-
|
|
37
|
+
//# sourceMappingURL=reconcile-D0pimNiy.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reconcile-D0pimNiy.cjs","names":["secrets: StageSecrets","workspace: NormalizedWorkspace","containers: readonly string[]","addedKeys: string[]"],"sources":["../src/secrets/reconcile.ts"],"sourcesContent":["import { generateFullstackCustomSecrets } from '../setup/fullstack-secrets.js';\nimport type { NormalizedWorkspace } from '../workspace/types.js';\nimport type { StageSecrets } from './types.js';\n\nexport interface ReconcileResult {\n\t/** The updated secrets with missing keys backfilled */\n\tsecrets: StageSecrets;\n\t/** Keys that were added */\n\taddedKeys: string[];\n}\n\n/**\n * Reconcile missing custom secrets for a workspace.\n *\n * Compares current secrets against what generateFullstackCustomSecrets()\n * would produce and backfills any missing keys without overwriting\n * existing values.\n *\n * @returns ReconcileResult if keys were added, null if secrets are up-to-date\n */\nexport function reconcileMissingSecrets(\n\tsecrets: StageSecrets,\n\tworkspace: NormalizedWorkspace,\n\tcontainers: readonly string[] = [],\n): ReconcileResult | null {\n\tconst isMultiApp = Object.keys(workspace.apps).length > 1;\n\tif (!isMultiApp) {\n\t\treturn null;\n\t}\n\n\tconst expectedCustom = generateFullstackCustomSecrets(workspace, containers);\n\tconst addedKeys: string[] = [];\n\tconst mergedCustom = { ...secrets.custom };\n\n\tfor (const [key, value] of Object.entries(expectedCustom)) {\n\t\tif (!(key in mergedCustom)) {\n\t\t\tmergedCustom[key] = value;\n\t\t\taddedKeys.push(key);\n\t\t}\n\t}\n\n\tif (addedKeys.length === 0) {\n\t\treturn null;\n\t}\n\n\treturn {\n\t\tsecrets: {\n\t\t\t...secrets,\n\t\t\tupdatedAt: new Date().toISOString(),\n\t\t\tcustom: mergedCustom,\n\t\t},\n\t\taddedKeys,\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;AAoBA,SAAgB,wBACfA,SACAC,WACAC,aAAgC,CAAE,GACT;CACzB,MAAM,aAAa,OAAO,KAAK,UAAU,KAAK,CAAC,SAAS;AACxD,MAAK,WACJ,QAAO;CAGR,MAAM,iBAAiB,yDAA+B,WAAW,WAAW;CAC5E,MAAMC,YAAsB,CAAE;CAC9B,MAAM,eAAe,EAAE,GAAG,QAAQ,OAAQ;AAE1C,MAAK,MAAM,CAAC,KAAK,MAAM,IAAI,OAAO,QAAQ,eAAe,CACxD,OAAM,OAAO,eAAe;AAC3B,eAAa,OAAO;AACpB,YAAU,KAAK,IAAI;CACnB;AAGF,KAAI,UAAU,WAAW,EACxB,QAAO;AAGR,QAAO;EACN,SAAS;GACR,GAAG;GACH,WAAW,qBAAI,QAAO,aAAa;GACnC,QAAQ;EACR;EACD;CACA;AACD"}
|