@geekmidas/cli 10.0.0-alpha.113 → 10.0.0-alpha.115
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/{GoDaddyProvider-DWrDIXzQ.cjs → GoDaddyProvider-BDvIMTO-.cjs} +2 -2
- package/dist/{GoDaddyProvider-DWrDIXzQ.cjs.map → GoDaddyProvider-BDvIMTO-.cjs.map} +1 -1
- package/dist/{GoDaddyProvider-CPabc3XW.mjs → GoDaddyProvider-eW1mre1g.mjs} +2 -2
- package/dist/{GoDaddyProvider-CPabc3XW.mjs.map → GoDaddyProvider-eW1mre1g.mjs.map} +1 -1
- package/dist/{LegacyStateStore-BdXoAlYY.mjs → LegacyStateStore-Ba1_x0cr.mjs} +3 -3
- package/dist/{LegacyStateStore-BdXoAlYY.mjs.map → LegacyStateStore-Ba1_x0cr.mjs.map} +1 -1
- package/dist/{LegacyStateStore-fsyPGBWu.cjs → LegacyStateStore-DFeykTd8.cjs} +3 -3
- package/dist/{LegacyStateStore-fsyPGBWu.cjs.map → LegacyStateStore-DFeykTd8.cjs.map} +1 -1
- package/dist/{LocalStateStore-BrAX5yy7.mjs → LocalStateStore-C1rUUvBr.mjs} +2 -2
- package/dist/{LocalStateStore-BrAX5yy7.mjs.map → LocalStateStore-C1rUUvBr.mjs.map} +1 -1
- package/dist/{LocalStateStore-AtviUBky.cjs → LocalStateStore-CV-04jpI.cjs} +2 -2
- package/dist/{LocalStateStore-AtviUBky.cjs.map → LocalStateStore-CV-04jpI.cjs.map} +1 -1
- package/dist/{S3StateStore-tn5g80Sx.cjs → S3StateStore-CqYi-1sb.cjs} +2 -2
- package/dist/{S3StateStore-tn5g80Sx.cjs.map → S3StateStore-CqYi-1sb.cjs.map} +1 -1
- package/dist/{S3StateStore-Cx7njkBz.mjs → S3StateStore-Dszt4fN5.mjs} +2 -2
- package/dist/{S3StateStore-Cx7njkBz.mjs.map → S3StateStore-Dszt4fN5.mjs.map} +1 -1
- package/dist/{SSMStateStore-sqZ3oDmn.mjs → SSMStateStore-BYRUyMkE.mjs} +2 -2
- package/dist/{SSMStateStore-sqZ3oDmn.mjs.map → SSMStateStore-BYRUyMkE.mjs.map} +1 -1
- package/dist/{SSMStateStore-CAFde-Fq.cjs → SSMStateStore-zpHjDCAW.cjs} +2 -2
- package/dist/{SSMStateStore-CAFde-Fq.cjs.map → SSMStateStore-zpHjDCAW.cjs.map} +1 -1
- package/dist/{add-Cs8yT5iH.cjs → add-0XI8_HOf.cjs} +3 -3
- package/dist/{add-Cs8yT5iH.cjs.map → add-0XI8_HOf.cjs.map} +1 -1
- package/dist/{add-DJE7zqJ4.mjs → add-DXdJjp0b.mjs} +3 -3
- package/dist/{add-DJE7zqJ4.mjs.map → add-DXdJjp0b.mjs.map} +1 -1
- package/dist/{bundler-DrySVbXF.mjs → bundler-B2ysiCTa.mjs} +5 -5
- package/dist/{bundler-DrySVbXF.mjs.map → bundler-B2ysiCTa.mjs.map} +1 -1
- package/dist/{bundler-NrtItVBp.cjs → bundler-hvCgi0EG.cjs} +5 -5
- package/dist/{bundler-NrtItVBp.cjs.map → bundler-hvCgi0EG.cjs.map} +1 -1
- package/dist/{cli-CHzpFBh-.cjs → cli-5k6kV_i4.cjs} +2 -2
- package/dist/{cli-CHzpFBh-.cjs.map → cli-5k6kV_i4.cjs.map} +1 -1
- package/dist/{cli-DDY3jfTt.mjs → cli-H0uB_znq.mjs} +2 -2
- package/dist/{cli-DDY3jfTt.mjs.map → cli-H0uB_znq.mjs.map} +1 -1
- package/dist/{compose-CDC2bCme.mjs → compose-BEiJWrB7.mjs} +3 -3
- package/dist/{compose-CDC2bCme.mjs.map → compose-BEiJWrB7.mjs.map} +1 -1
- package/dist/{compose-ByIbIrzs.cjs → compose-CYeMW2_o.cjs} +3 -3
- package/dist/{compose-ByIbIrzs.cjs.map → compose-CYeMW2_o.cjs.map} +1 -1
- package/dist/deploy/public.cjs +6 -6
- package/dist/deploy/public.mjs +6 -6
- package/dist/{deploy-DLq9-m6H.mjs → deploy-Cyx5fSb7.mjs} +5 -5
- package/dist/{deploy-DLq9-m6H.mjs.map → deploy-Cyx5fSb7.mjs.map} +1 -1
- package/dist/{deploy-Dl_NavYE.cjs → deploy-Q5qo1OP-.cjs} +5 -5
- package/dist/{deploy-Dl_NavYE.cjs.map → deploy-Q5qo1OP-.cjs.map} +1 -1
- package/dist/{dns-pzftumxg.mjs → dns-CsApfzLc.mjs} +2 -2
- package/dist/{dns-pzftumxg.mjs.map → dns-CsApfzLc.mjs.map} +1 -1
- package/dist/{dns-C2TGXUF4.cjs → dns-v9viladZ.cjs} +2 -2
- package/dist/{dns-C2TGXUF4.cjs.map → dns-v9viladZ.cjs.map} +1 -1
- package/dist/{dokploy-B7-OwY2s.mjs → dokploy-DfUo_QRw.mjs} +2 -2
- package/dist/{dokploy-B7-OwY2s.mjs.map → dokploy-DfUo_QRw.mjs.map} +1 -1
- package/dist/{dokploy-OqBh8G4g.cjs → dokploy-Di7rC2z0.cjs} +2 -2
- package/dist/{dokploy-OqBh8G4g.cjs.map → dokploy-Di7rC2z0.cjs.map} +1 -1
- package/dist/{eas-Cne743nQ.cjs → eas-CIvNT6qa.cjs} +2 -2
- package/dist/{eas-Cne743nQ.cjs.map → eas-CIvNT6qa.cjs.map} +1 -1
- package/dist/{eas-DEpwISrQ.mjs → eas-CTfRmndW.mjs} +2 -2
- package/dist/{eas-DEpwISrQ.mjs.map → eas-CTfRmndW.mjs.map} +1 -1
- package/dist/{encryption-DoVnVU82.cjs → encryption--U4NsK7N.cjs} +2 -2
- package/dist/{encryption-DoVnVU82.cjs.map → encryption--U4NsK7N.cjs.map} +1 -1
- package/dist/{encryption-DJv_jEXi.mjs → encryption-BpTPmd7h.mjs} +2 -2
- package/dist/{encryption-DJv_jEXi.mjs.map → encryption-BpTPmd7h.mjs.map} +1 -1
- package/dist/{engine-Db71-OZL.mjs → engine-BFmHfek1.mjs} +3 -3
- package/dist/{engine-Db71-OZL.mjs.map → engine-BFmHfek1.mjs.map} +1 -1
- package/dist/{engine-CJhQb50j.cjs → engine-Ovl1PB6i.cjs} +3 -3
- package/dist/{engine-CJhQb50j.cjs.map → engine-Ovl1PB6i.cjs.map} +1 -1
- package/dist/{github-C3gblUvr.cjs → github-CTlPQ5Ra.cjs} +4 -4
- package/dist/{github-C3gblUvr.cjs.map → github-CTlPQ5Ra.cjs.map} +1 -1
- package/dist/{github-BMakI-k3.mjs → github-tWAGuR9i.mjs} +4 -4
- package/dist/{github-BMakI-k3.mjs.map → github-tWAGuR9i.mjs.map} +1 -1
- package/dist/{googlePlay-B6uiHi65.cjs → googlePlay-BNH729It.cjs} +3 -3
- package/dist/{googlePlay-B6uiHi65.cjs.map → googlePlay-BNH729It.cjs.map} +1 -1
- package/dist/{googlePlay-BYZ-J5sC.mjs → googlePlay-m1De-qIJ.mjs} +3 -3
- package/dist/{googlePlay-BYZ-J5sC.mjs.map → googlePlay-m1De-qIJ.mjs.map} +1 -1
- package/dist/index.cjs +104 -68
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +104 -68
- package/dist/index.mjs.map +1 -1
- package/dist/{migrate-CQUGbptv.mjs → migrate-4B4RgAjU.mjs} +2 -2
- package/dist/{migrate-CQUGbptv.mjs.map → migrate-4B4RgAjU.mjs.map} +1 -1
- package/dist/{migrate-bDQzFvBN.cjs → migrate-BYEmpoIg.cjs} +2 -2
- package/dist/{migrate-bDQzFvBN.cjs.map → migrate-BYEmpoIg.cjs.map} +1 -1
- package/dist/{migrate-GLBZlrlJ.cjs → migrate-DZ2--SaO.cjs} +2 -2
- package/dist/{migrate-GLBZlrlJ.cjs.map → migrate-DZ2--SaO.cjs.map} +1 -1
- package/dist/{migrate-xHYaeBkd.mjs → migrate-X0Y7fz3N.mjs} +2 -2
- package/dist/{migrate-xHYaeBkd.mjs.map → migrate-X0Y7fz3N.mjs.map} +1 -1
- package/dist/{publish-SDG1WfYn.cjs → publish-BUvYjiZH.cjs} +2 -2
- package/dist/{publish-SDG1WfYn.cjs.map → publish-BUvYjiZH.cjs.map} +1 -1
- package/dist/{publish-CSctCNf4.mjs → publish-hhgraEhO.mjs} +2 -2
- package/dist/{publish-CSctCNf4.mjs.map → publish-hhgraEhO.mjs.map} +1 -1
- package/dist/{resolve-wG49Woex.cjs → resolve-DdFKTx8l.cjs} +3 -3
- package/dist/{resolve-wG49Woex.cjs.map → resolve-DdFKTx8l.cjs.map} +1 -1
- package/dist/{resolve-CxDqDmCD.mjs → resolve-DotGHvtX.mjs} +3 -3
- package/dist/{resolve-CxDqDmCD.mjs.map → resolve-DotGHvtX.mjs.map} +1 -1
- package/dist/{rollback-BQgEdr_p.mjs → rollback-9t9G3c_u.mjs} +4 -4
- package/dist/{rollback-BQgEdr_p.mjs.map → rollback-9t9G3c_u.mjs.map} +1 -1
- package/dist/{rollback-Cw-Z0mWn.cjs → rollback-D4xeUQvG.cjs} +4 -4
- package/dist/{rollback-Cw-Z0mWn.cjs.map → rollback-D4xeUQvG.cjs.map} +1 -1
- package/dist/{seeds-CIk0l4SC.mjs → seeds-CRkKeyW0.mjs} +19 -6
- package/dist/seeds-CRkKeyW0.mjs.map +1 -0
- package/dist/{seeds-Dk8YkLkM.cjs → seeds-DbKNcs3o.cjs} +19 -6
- package/dist/seeds-DbKNcs3o.cjs.map +1 -0
- package/dist/{serverSetup-BCbD8ksJ.cjs → serverSetup-CcWgNtiC.cjs} +93 -21
- package/dist/serverSetup-CcWgNtiC.cjs.map +1 -0
- package/dist/{serverSetup--O61SRvg.mjs → serverSetup-DlRKRfTi.mjs} +93 -21
- package/dist/serverSetup-DlRKRfTi.mjs.map +1 -0
- package/dist/{sniffer-2aK7cB2u.cjs → sniffer-B6T6za4n.cjs} +6 -6
- package/dist/{sniffer-2aK7cB2u.cjs.map → sniffer-B6T6za4n.cjs.map} +1 -1
- package/dist/{sniffer-CABMO-Bh.mjs → sniffer-CakkKKqQ.mjs} +6 -6
- package/dist/{sniffer-CABMO-Bh.mjs.map → sniffer-CakkKKqQ.mjs.map} +1 -1
- package/dist/{stage-ClKTHQoM.mjs → stage-Mp6qQIoD.mjs} +4 -4
- package/dist/{stage-ClKTHQoM.mjs.map → stage-Mp6qQIoD.mjs.map} +1 -1
- package/dist/{stage-DrCS0vKD.cjs → stage-W3PUt7ar.cjs} +4 -4
- package/dist/{stage-DrCS0vKD.cjs.map → stage-W3PUt7ar.cjs.map} +1 -1
- package/dist/{stages-DJrOYLZ-.mjs → stages-Cb9rqRbN.mjs} +16 -2
- package/dist/stages-Cb9rqRbN.mjs.map +1 -0
- package/dist/{stages-_3RVNG83.cjs → stages-D4SnG5yl.cjs} +16 -2
- package/dist/stages-D4SnG5yl.cjs.map +1 -0
- package/dist/target/public.cjs +1 -1
- package/dist/target/public.mjs +1 -1
- package/package.json +15 -15
- package/dist/seeds-CIk0l4SC.mjs.map +0 -1
- package/dist/seeds-Dk8YkLkM.cjs.map +0 -1
- package/dist/serverSetup--O61SRvg.mjs.map +0 -1
- package/dist/serverSetup-BCbD8ksJ.cjs.map +0 -1
- package/dist/stages-DJrOYLZ-.mjs.map +0 -1
- package/dist/stages-_3RVNG83.cjs.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -3,25 +3,25 @@ import { n as __require, t as __exportAll } from "./rolldown-runtime-BhDjJH2R.mj
|
|
|
3
3
|
import { n as isGkmError, t as GkmError } from "./errors-D8Gwp5kU.mjs";
|
|
4
4
|
import { r as DEFAULT_TIMEOUT_MS, t as CommandFailed } from "./run-BJLIerMM.mjs";
|
|
5
5
|
import { a as getDokployCredentials, d as removeGoDaddyCredentials, f as storeDokployCredentials, i as getCredentialsPath, l as readCredentials, m as storeHostingerToken, o as getDokployRegistryId, p as storeGoDaddyToken, s as getDokployToken, u as removeDokployCredentials } from "./credentials-B5N5yKk6.mjs";
|
|
6
|
-
import { C as dockerCompose, S as sshTarget, _ as parseDigests, b as dockerHost, c as edgeRef, f as derivedCredentials, h as EDGE_PROJECT, i as ComposePushNeedsBuild, l as removeEdgeRoutes, m as stackPlan, o as stackOverrideFile, p as stackDir, r as ComposePinNeedsPull, t as composeTarget, u as composeProject, v as pinnedRef, w as projectNetwork, y as composeServer } from "./compose-
|
|
6
|
+
import { C as dockerCompose, S as sshTarget, _ as parseDigests, b as dockerHost, c as edgeRef, f as derivedCredentials, h as EDGE_PROJECT, i as ComposePushNeedsBuild, l as removeEdgeRoutes, m as stackPlan, o as stackOverrideFile, p as stackDir, r as ComposePinNeedsPull, t as composeTarget, u as composeProject, v as pinnedRef, w as projectNetwork, y as composeServer } from "./compose-BEiJWrB7.mjs";
|
|
7
7
|
import { A as InvalidStages, F as stageProblems, P as deployedProblems, R as stageSampleRate, a as allConstructGlobs, d as getAppGkmConfig, j as TEST_STAGE, u as getAppBuildOrder } from "./workspace-D1QbNd55.mjs";
|
|
8
|
-
import { b as runTime, d as BACKUPS_URL_KEY, f as RUNNER_PATH, g as backupDatabases, u as BACKUPS_SERVICE, v as backupFile, x as stageBackups, y as backupsPrefix } from "./dns-
|
|
9
|
-
import { $t as isUnder, An as appTelemetry, At as isPortAvailable, Bn as fakeKey, Bt as maskPassword, Ct as cacheBackendFor, Dn as TELEMETRY_CONTAINER, Dt as createCredentialsPreload, G as CronGenerator, Gn as LOCAL_LOGS_EMAIL, H as workerBundleName, Hn as portsOf, Ht as toEmbeddableSecrets, It as secretsStoreFor, L as dockerCommand, Mn as scopeTelemetryEnv, Mt as loadPortState, Nn as surfaceClientTraced, Nt as loadSecretsForApp, Ot as createEntryWrapper, Pn as telemetryOf, Pt as prepareEntryCredentials, Q as assertDevServicesFlag, Tt as providerOf, U as workerEntryDir, Ut as withCustomSecret, V as WorkerGenerator, W as QueueGenerator, Wn as primaryPortKey, Xt as imageBuildCredentials, Zt as isImageBuild, a as dnsResources, an as postgresDatabaseNames, bt as pgClient, c as describeActor, dt as constructGlobs, en as workerUnits, fn as readLocalCredentials, ft as derivedContainers, gn as projectKey, gt as forgetState, ht as LOCAL_CA_PATH, jt as loadEnvFiles, kt as findAvailablePort, lt as FAKE_ENV, mn as getKeyPath, pn as FileSecretsStore, pt as reconcileWorkspace, sn as quoteIdentifier, ut as backendsOf$1, wt as eventsBackendFor, xt as CLUSTER_DATABASE, zn as describeServices } from "./seeds-
|
|
8
|
+
import { b as runTime, d as BACKUPS_URL_KEY, f as RUNNER_PATH, g as backupDatabases, u as BACKUPS_SERVICE, v as backupFile, x as stageBackups, y as backupsPrefix } from "./dns-CsApfzLc.mjs";
|
|
9
|
+
import { $t as isUnder, An as appTelemetry, At as isPortAvailable, Bn as fakeKey, Bt as maskPassword, Ct as cacheBackendFor, Dn as TELEMETRY_CONTAINER, Dt as createCredentialsPreload, G as CronGenerator, Gn as LOCAL_LOGS_EMAIL, H as workerBundleName, Hn as portsOf, Ht as toEmbeddableSecrets, It as secretsStoreFor, L as dockerCommand, Mn as scopeTelemetryEnv, Mt as loadPortState, Nn as surfaceClientTraced, Nt as loadSecretsForApp, Ot as createEntryWrapper, Pn as telemetryOf, Pt as prepareEntryCredentials, Q as assertDevServicesFlag, Tt as providerOf, U as workerEntryDir, Ut as withCustomSecret, V as WorkerGenerator, W as QueueGenerator, Wn as primaryPortKey, Xt as imageBuildCredentials, Zt as isImageBuild, a as dnsResources, an as postgresDatabaseNames, bt as pgClient, c as describeActor, dt as constructGlobs, en as workerUnits, fn as readLocalCredentials, ft as derivedContainers, gn as projectKey, gt as forgetState, ht as LOCAL_CA_PATH, jt as loadEnvFiles, kt as findAvailablePort, lt as FAKE_ENV, mn as getKeyPath, pn as FileSecretsStore, pt as reconcileWorkspace, sn as quoteIdentifier, ut as backendsOf$1, wt as eventsBackendFor, xt as CLUSTER_DATABASE, zn as describeServices } from "./seeds-CRkKeyW0.mjs";
|
|
10
10
|
import { t as appKey } from "./derive-B4vDpzgP.mjs";
|
|
11
11
|
import { l as isCacheBackend, n as assertTestCredentials, t as SubscriberGenerator } from "./SubscriberGenerator-DHnIYwUU.mjs";
|
|
12
12
|
import { n as deployIdentity } from "./identity-CBXr4wNi.mjs";
|
|
13
13
|
import { a as startTelemetryCode, c as parseTelemetryFlag, i as routeTelemetry, n as runtimeFor, o as telemetryFor, r as mountRequestSpansCode, s as writeTelemetryModule, t as EndpointGenerator } from "./EndpointGenerator-CvLX8bpx.mjs";
|
|
14
14
|
import { d as ConstructGenerator, i as discover, r as consumedBy, u as withOwningTsconfigJsx } from "./discover-Ca8U75dl.mjs";
|
|
15
15
|
import { ConfigNotFound, NotABackendApp, NotInAnApp, loadAppConfig, loadConfig, loadWorkspaceConfig, loadWorkspaceSettings, parseModuleConfig } from "./config.mjs";
|
|
16
|
-
import { d as awsEndpoint, f as awsProvisioningCredentials, t as deploy$1, u as awsClientConfig } from "./deploy-
|
|
16
|
+
import { d as awsEndpoint, f as awsProvisioningCredentials, t as deploy$1, u as awsClientConfig } from "./deploy-Cyx5fSb7.mjs";
|
|
17
17
|
import { generateOpenApi, openapiCommand, resolveOpenApiConfig } from "./openapi.mjs";
|
|
18
18
|
import { a as describeHolder, c as withAppPorts, i as assignAppPorts, o as describeMove, r as appTag, s as holderOf, t as APP_TAG_ENV } from "./appPorts-BoXMwolc.mjs";
|
|
19
19
|
import { n as driversFor, r as eventsBackendsIn, t as cacheBackendsIn } from "./drivers-D11JHxrD.mjs";
|
|
20
20
|
import { n as withCompute, r as withRoutes, t as manifestModule } from "./emit-C1e8qD08.mjs";
|
|
21
21
|
import { t as LocalSandbox } from "./local-BwC2v2Y8.mjs";
|
|
22
|
-
import { S as createStateStore, k as keyFingerprint, n as sniffAppEnvironment, o as DokployApi } from "./sniffer-
|
|
22
|
+
import { S as createStateStore, k as keyFingerprint, n as sniffAppEnvironment, o as DokployApi } from "./sniffer-CakkKKqQ.mjs";
|
|
23
23
|
import { o as loadCredentialSchemas, t as CredentialsInvalid } from "./credentialSchemas-Cf5Pf8VE.mjs";
|
|
24
|
-
import { t as LocalStateStore } from "./LocalStateStore-
|
|
24
|
+
import { t as LocalStateStore } from "./LocalStateStore-C1rUUvBr.mjs";
|
|
25
25
|
import { a as getExecCommand, c as validateProjectName, i as findWorkspaceRoot, n as detectPackageManager$1, o as getInstallCommand, r as findWorkspacePackages, s as getRunCommand, t as checkDirectoryExists } from "./utils-D_fxUqvU.mjs";
|
|
26
26
|
import { a as writeTestHarness, i as TEST_MANIFEST_ENV, n as TEST_READY_FILE, t as TEST_READY_ENV } from "./ready-CIt5SOtg.mjs";
|
|
27
27
|
import { createRequire } from "node:module";
|
|
@@ -51,7 +51,7 @@ import crypto from "crypto";
|
|
|
51
51
|
import { Function } from "@geekmidas/constructs/functions";
|
|
52
52
|
import { Topic } from "@geekmidas/constructs/topic";
|
|
53
53
|
//#region package.json
|
|
54
|
-
var version = "10.0.0-alpha.
|
|
54
|
+
var version = "10.0.0-alpha.115";
|
|
55
55
|
//#endregion
|
|
56
56
|
//#region src/prompt.ts
|
|
57
57
|
/**
|
|
@@ -134,7 +134,7 @@ const logger$8 = console;
|
|
|
134
134
|
* Validate Dokploy token by making a test API call
|
|
135
135
|
*/
|
|
136
136
|
async function validateDokployToken(endpoint, token) {
|
|
137
|
-
const { DokployApi } = await import("./sniffer-
|
|
137
|
+
const { DokployApi } = await import("./sniffer-CakkKKqQ.mjs").then((n) => n.c);
|
|
138
138
|
return new DokployApi({
|
|
139
139
|
baseUrl: endpoint,
|
|
140
140
|
token
|
|
@@ -2174,7 +2174,7 @@ async function execCommand(commandArgs, options = {}, stageDeps) {
|
|
|
2174
2174
|
const cwd = options.cwd ?? process.cwd();
|
|
2175
2175
|
if (!commandArgs[0]) throw new NoCommandSpecified();
|
|
2176
2176
|
if (options.stage && !isImageBuild()) {
|
|
2177
|
-
const { execOnStage } = await import("./stage-
|
|
2177
|
+
const { execOnStage } = await import("./stage-Mp6qQIoD.mjs").then((n) => n.n);
|
|
2178
2178
|
const { loadWorkspaceConfig } = await import("./config.mjs");
|
|
2179
2179
|
const { workspace } = await loadWorkspaceConfig(cwd);
|
|
2180
2180
|
if (options.stage !== workspace.stages.local) {
|
|
@@ -2747,9 +2747,9 @@ async function workspaceDevCommand(configured, options) {
|
|
|
2747
2747
|
for (const { id, port } of fakes) logger$5.log(`🎭 ${id} fake: http://localhost:${port}`);
|
|
2748
2748
|
logger$5.log(options.migrate || options.seed ? "🗄️ Migrating the databases" : "🗄️ Checking for pending migrations");
|
|
2749
2749
|
if (options.migrate || options.seed) {
|
|
2750
|
-
const { prepareDevDatabases } = await import("./migrate-
|
|
2750
|
+
const { prepareDevDatabases } = await import("./migrate-X0Y7fz3N.mjs");
|
|
2751
2751
|
await prepareDevDatabases(workspace, reconciled.env, { seed: !!options.seed });
|
|
2752
|
-
} else await import("./migrate-
|
|
2752
|
+
} else await import("./migrate-X0Y7fz3N.mjs").then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
|
|
2753
2753
|
logger$5.log(`⚠️ Could not check for pending migrations: ${error instanceof Error ? error.message : String(error)}`);
|
|
2754
2754
|
});
|
|
2755
2755
|
const appUrls = {};
|
|
@@ -3825,7 +3825,7 @@ async function buildApp(input) {
|
|
|
3825
3825
|
...production,
|
|
3826
3826
|
...telemetry ? { telemetry } : {}
|
|
3827
3827
|
});
|
|
3828
|
-
const { bundleServer } = await import("./bundler-
|
|
3828
|
+
const { bundleServer } = await import("./bundler-B2ysiCTa.mjs");
|
|
3829
3829
|
await bundleServer({
|
|
3830
3830
|
entryPoint,
|
|
3831
3831
|
outputDir: join(outputDir, "dist"),
|
|
@@ -4024,7 +4024,7 @@ async function buildWorkers(input) {
|
|
|
4024
4024
|
});
|
|
4025
4025
|
logger$4.log(`Generated worker ${worker.id}: ${crons.length} crons, ${queues.length} queues, ${subscribers.length} subscribers`);
|
|
4026
4026
|
if (!input.bundle) continue;
|
|
4027
|
-
const { bundleServer } = await import("./bundler-
|
|
4027
|
+
const { bundleServer } = await import("./bundler-B2ysiCTa.mjs");
|
|
4028
4028
|
const outfile = workerBundleName(worker.id);
|
|
4029
4029
|
await bundleServer({
|
|
4030
4030
|
entryPoint,
|
|
@@ -4110,7 +4110,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
|
|
|
4110
4110
|
let masterKey;
|
|
4111
4111
|
if (context.production?.bundle && !skipBundle) {
|
|
4112
4112
|
logger$4.log(`\n📦 Bundling production server...`);
|
|
4113
|
-
const { bundleServer } = await import("./bundler-
|
|
4113
|
+
const { bundleServer } = await import("./bundler-B2ysiCTa.mjs");
|
|
4114
4114
|
const allConstructs = [
|
|
4115
4115
|
...endpoints.map((e) => e.construct),
|
|
4116
4116
|
...functions.map((f) => f.construct),
|
|
@@ -5833,6 +5833,7 @@ const DEPENDENCY_VERSIONS = {
|
|
|
5833
5833
|
"better-auth": "~1.7.6",
|
|
5834
5834
|
hono: "~4.13.9",
|
|
5835
5835
|
"@hono/node-server": "~1.19.17",
|
|
5836
|
+
"@hono/node-ws": "~1.3.1",
|
|
5836
5837
|
kysely: "~0.29.6",
|
|
5837
5838
|
pg: "~8.23.0",
|
|
5838
5839
|
pino: "~10.3.1",
|
|
@@ -5943,25 +5944,25 @@ function loadPackageJson() {
|
|
|
5943
5944
|
* Run: pnpm --filter @geekmidas/cli sync-versions
|
|
5944
5945
|
*/
|
|
5945
5946
|
const GEEKMIDAS_VERSIONS = {
|
|
5946
|
-
"@geekmidas/audit": "~10.0.0-alpha.
|
|
5947
|
-
"@geekmidas/auth": "~10.0.0-alpha.
|
|
5948
|
-
"@geekmidas/cache": "~10.0.0-alpha.
|
|
5949
|
-
"@geekmidas/client": "~10.0.0-alpha.
|
|
5950
|
-
"@geekmidas/cloud": "~10.0.0-alpha.
|
|
5951
|
-
"@geekmidas/constructs": "~10.0.0-alpha.
|
|
5952
|
-
"@geekmidas/db": "~10.0.0-alpha.
|
|
5953
|
-
"@geekmidas/emailkit": "~10.0.0-alpha.
|
|
5954
|
-
"@geekmidas/envkit": "~10.0.0-alpha.
|
|
5955
|
-
"@geekmidas/errors": "~10.0.0-alpha.
|
|
5956
|
-
"@geekmidas/events": "~10.0.0-alpha.
|
|
5957
|
-
"@geekmidas/logger": "~10.0.0-alpha.
|
|
5958
|
-
"@geekmidas/manifest": "~10.0.0-alpha.
|
|
5959
|
-
"@geekmidas/rate-limit": "~10.0.0-alpha.
|
|
5960
|
-
"@geekmidas/schema": "~10.0.0-alpha.
|
|
5961
|
-
"@geekmidas/services": "~10.0.0-alpha.
|
|
5962
|
-
"@geekmidas/storage": "~10.0.0-alpha.
|
|
5963
|
-
"@geekmidas/telescope": "~10.0.0-alpha.
|
|
5964
|
-
"@geekmidas/testkit": "~10.0.0-alpha.
|
|
5947
|
+
"@geekmidas/audit": "~10.0.0-alpha.115",
|
|
5948
|
+
"@geekmidas/auth": "~10.0.0-alpha.115",
|
|
5949
|
+
"@geekmidas/cache": "~10.0.0-alpha.115",
|
|
5950
|
+
"@geekmidas/client": "~10.0.0-alpha.115",
|
|
5951
|
+
"@geekmidas/cloud": "~10.0.0-alpha.115",
|
|
5952
|
+
"@geekmidas/constructs": "~10.0.0-alpha.115",
|
|
5953
|
+
"@geekmidas/db": "~10.0.0-alpha.115",
|
|
5954
|
+
"@geekmidas/emailkit": "~10.0.0-alpha.115",
|
|
5955
|
+
"@geekmidas/envkit": "~10.0.0-alpha.115",
|
|
5956
|
+
"@geekmidas/errors": "~10.0.0-alpha.115",
|
|
5957
|
+
"@geekmidas/events": "~10.0.0-alpha.115",
|
|
5958
|
+
"@geekmidas/logger": "~10.0.0-alpha.115",
|
|
5959
|
+
"@geekmidas/manifest": "~10.0.0-alpha.115",
|
|
5960
|
+
"@geekmidas/rate-limit": "~10.0.0-alpha.115",
|
|
5961
|
+
"@geekmidas/schema": "~10.0.0-alpha.115",
|
|
5962
|
+
"@geekmidas/services": "~10.0.0-alpha.115",
|
|
5963
|
+
"@geekmidas/storage": "~10.0.0-alpha.115",
|
|
5964
|
+
"@geekmidas/telescope": "~10.0.0-alpha.115",
|
|
5965
|
+
"@geekmidas/testkit": "~10.0.0-alpha.115",
|
|
5965
5966
|
"@geekmidas/cli": `~${loadPackageJson().version}`
|
|
5966
5967
|
};
|
|
5967
5968
|
//#endregion
|
|
@@ -7154,7 +7155,7 @@ const COMMIT = /^[0-9a-f]{40}$/;
|
|
|
7154
7155
|
* The `uses:` value for the stages action, with a comment saying which CLI
|
|
7155
7156
|
* release the pinned commit is.
|
|
7156
7157
|
*/
|
|
7157
|
-
function stagesActionUses(commit = "
|
|
7158
|
+
function stagesActionUses(commit = "f1cb336edfa0ad66598783740950d96f53f1108c", version = cliVersion()) {
|
|
7158
7159
|
return commit && COMMIT.test(commit) ? `${STAGES_ACTION}@${commit} # @geekmidas/cli ${version}` : `${STAGES_ACTION}@main # pin to a commit SHA: see the action's README`;
|
|
7159
7160
|
}
|
|
7160
7161
|
//#endregion
|
|
@@ -7406,6 +7407,7 @@ function stagesJob(options) {
|
|
|
7406
7407
|
has-build: \${{ steps.stages.outputs.has-build }}
|
|
7407
7408
|
has-deploy: \${{ steps.stages.outputs.has-deploy }}
|
|
7408
7409
|
aws-region: \${{ steps.stages.outputs.aws-region }}
|
|
7410
|
+
registry: \${{ steps.stages.outputs.registry }}
|
|
7409
7411
|
steps:
|
|
7410
7412
|
- uses: actions/checkout@v4
|
|
7411
7413
|
|
|
@@ -7424,17 +7426,25 @@ ${pm.setup}
|
|
|
7424
7426
|
`;
|
|
7425
7427
|
}
|
|
7426
7428
|
/**
|
|
7427
|
-
* The registry login a compose build pushes with
|
|
7428
|
-
*
|
|
7429
|
+
* The registry login a compose build pushes with, and a deploy pulls with.
|
|
7430
|
+
* The host is `deploy.registry`'s, read from gkm.config.ts by the stages
|
|
7431
|
+
* job at run time — never written here, so the workflow follows the config:
|
|
7432
|
+
* GitHub's own token on ghcr.io, otherwise the stage environment's
|
|
7433
|
+
* `REGISTRY_USERNAME` variable and `REGISTRY_PASSWORD` secret.
|
|
7429
7434
|
*/
|
|
7430
|
-
function registryLogin(
|
|
7431
|
-
const
|
|
7432
|
-
|
|
7433
|
-
|
|
7435
|
+
function registryLogin() {
|
|
7436
|
+
const ghcr = "needs.stages.outputs.registry == 'ghcr.io'";
|
|
7437
|
+
return ` # deploy.registry in gkm.config.ts: GitHub's registry with this
|
|
7438
|
+
# workflow's own token (the job's \`packages\` permission decides push
|
|
7439
|
+
# or pull), any other with the stage's REGISTRY_USERNAME variable and
|
|
7440
|
+
# REGISTRY_PASSWORD secret.
|
|
7441
|
+
- name: Log in to the registry
|
|
7442
|
+
if: needs.stages.outputs.registry != ''
|
|
7443
|
+
uses: docker/login-action@v3
|
|
7434
7444
|
with:
|
|
7435
|
-
registry:
|
|
7436
|
-
username: ${ghcr
|
|
7437
|
-
password: ${ghcr
|
|
7445
|
+
registry: \${{ needs.stages.outputs.registry }}
|
|
7446
|
+
username: \${{ ${ghcr} && github.actor || vars.REGISTRY_USERNAME }}
|
|
7447
|
+
password: \${{ ${ghcr} && secrets.GITHUB_TOKEN || secrets.REGISTRY_PASSWORD }}
|
|
7438
7448
|
`;
|
|
7439
7449
|
}
|
|
7440
7450
|
/**
|
|
@@ -7453,8 +7463,14 @@ function registryLogin(registry) {
|
|
|
7453
7463
|
*/
|
|
7454
7464
|
function composeDeploy(options) {
|
|
7455
7465
|
const pm = tooling(options);
|
|
7456
|
-
const registry = options.registry ?? "";
|
|
7457
7466
|
return `${deployHeader(true)}
|
|
7467
|
+
# A push to main builds main's newest commit: a later push cancels an earlier
|
|
7468
|
+
# push's run, so several merges in a row build once. A release or a manual
|
|
7469
|
+
# run shares no group (its run id is in the name), and is never cancelled.
|
|
7470
|
+
concurrency:
|
|
7471
|
+
group: \${{ github.workflow }}-\${{ github.event_name == 'push' && github.ref || github.run_id }}
|
|
7472
|
+
cancel-in-progress: \${{ github.event_name == 'push' }}
|
|
7473
|
+
|
|
7458
7474
|
jobs:
|
|
7459
7475
|
${stagesJob(options)}
|
|
7460
7476
|
build:
|
|
@@ -7473,13 +7489,22 @@ ${stagesJob(options)}
|
|
|
7473
7489
|
packages: write
|
|
7474
7490
|
id-token: write
|
|
7475
7491
|
steps:
|
|
7492
|
+
# The runner's preinstalled toolchains, none of them used here: with
|
|
7493
|
+
# them, building every image of a workspace runs out of disk.
|
|
7494
|
+
- name: Free disk space
|
|
7495
|
+
run: |
|
|
7496
|
+
sudo rm -rf /usr/local/lib/android /usr/share/dotnet /opt/ghc \\
|
|
7497
|
+
/usr/local/.ghcup /opt/hostedtoolcache/CodeQL
|
|
7498
|
+
sudo docker image prune --all --force
|
|
7499
|
+
df -h /
|
|
7500
|
+
|
|
7476
7501
|
- uses: actions/checkout@v4
|
|
7477
7502
|
|
|
7478
7503
|
${pm.setup}
|
|
7479
7504
|
- name: Install
|
|
7480
7505
|
run: ${pm.install}
|
|
7481
7506
|
|
|
7482
|
-
${registryLogin(
|
|
7507
|
+
${registryLogin()}
|
|
7483
7508
|
# A site's public URLs are built into it, so the build reads the stage's
|
|
7484
7509
|
# secrets store. With secrets.store on S3, SSM or Secrets Manager the job
|
|
7485
7510
|
# assumes the stage's role (AWS_ROLE_ARN, set by gkm deploy:github);
|
|
@@ -7505,6 +7530,7 @@ ${registryLogin(registry)}
|
|
|
7505
7530
|
with:
|
|
7506
7531
|
name: digests-\${{ matrix.stage }}
|
|
7507
7532
|
path: digests.json
|
|
7533
|
+
if-no-files-found: error
|
|
7508
7534
|
retention-days: 90
|
|
7509
7535
|
|
|
7510
7536
|
deploy:
|
|
@@ -7538,8 +7564,14 @@ ${registryLogin(registry)}
|
|
|
7538
7564
|
workflow_dispatch) ref="\${REF:-$SHA}" ;;
|
|
7539
7565
|
*) ref="$SHA" ;;
|
|
7540
7566
|
esac
|
|
7541
|
-
|
|
7542
|
-
|
|
7567
|
+
case "$ref" in
|
|
7568
|
+
''|-*) echo "::error::Not a tag or commit: '$ref'"; exit 1 ;;
|
|
7569
|
+
esac
|
|
7570
|
+
if ! sha=$(gh api "repos/$REPO/commits/$ref" --jq .sha); then
|
|
7571
|
+
echo "::error::'$ref' is not a tag, branch or commit in this repository"
|
|
7572
|
+
exit 1
|
|
7573
|
+
fi
|
|
7574
|
+
echo "Deploying $ref = $sha"
|
|
7543
7575
|
echo "sha=$sha" >> "$GITHUB_OUTPUT"
|
|
7544
7576
|
env:
|
|
7545
7577
|
GH_TOKEN: \${{ github.token }}
|
|
@@ -7560,7 +7592,7 @@ ${pm.setup}
|
|
|
7560
7592
|
|
|
7561
7593
|
# The server's engine pulls with the login docker sends from here: it
|
|
7562
7594
|
# holds none of its own.
|
|
7563
|
-
${registryLogin(
|
|
7595
|
+
${registryLogin()}
|
|
7564
7596
|
# The stage's secrets and deploy state are read and written here, with
|
|
7565
7597
|
# the stage's role (AWS_ROLE_ARN, set by gkm deploy:github). With the
|
|
7566
7598
|
# default 'file' secrets store there is no role, and no secrets file in
|
|
@@ -10669,7 +10701,10 @@ function generatePackageJson(options, template) {
|
|
|
10669
10701
|
const devDependencies = { ...template.devDependencies };
|
|
10670
10702
|
const scripts = { ...template.scripts };
|
|
10671
10703
|
if (options.loggerType === "pino") dependencies.pino = DEPENDENCY_VERSIONS.pino;
|
|
10672
|
-
if (telescope)
|
|
10704
|
+
if (telescope) {
|
|
10705
|
+
dependencies["@geekmidas/telescope"] = GEEKMIDAS_VERSIONS["@geekmidas/telescope"];
|
|
10706
|
+
dependencies["@hono/node-ws"] = DEPENDENCY_VERSIONS["@hono/node-ws"];
|
|
10707
|
+
}
|
|
10673
10708
|
const declares = !monorepo;
|
|
10674
10709
|
if (declares && (database || uploads || cache || mail)) dependencies["@geekmidas/manifest"] = GEEKMIDAS_VERSIONS["@geekmidas/manifest"];
|
|
10675
10710
|
if (declares && uploads) dependencies["@geekmidas/storage"] = GEEKMIDAS_VERSIONS["@geekmidas/storage"];
|
|
@@ -13040,6 +13075,7 @@ export default function RootLayout({
|
|
|
13040
13075
|
`;
|
|
13041
13076
|
const pages = app.key === "admin" ? adminPages() : webPages(options);
|
|
13042
13077
|
const gitignore = `.next/
|
|
13078
|
+
next-env.d.ts
|
|
13043
13079
|
node_modules/
|
|
13044
13080
|
.env.local
|
|
13045
13081
|
*.log
|
|
@@ -15990,7 +16026,7 @@ function testDatabases(reconciled) {
|
|
|
15990
16026
|
* starts without the reference data the app needs.
|
|
15991
16027
|
*/
|
|
15992
16028
|
async function migrateTestStage(workspace, env) {
|
|
15993
|
-
const { migrateAndSeed } = await import("./migrate-
|
|
16029
|
+
const { migrateAndSeed } = await import("./migrate-X0Y7fz3N.mjs");
|
|
15994
16030
|
const { discover } = await import("./discover-Ca8U75dl.mjs").then((n) => n.a);
|
|
15995
16031
|
const sources = {};
|
|
15996
16032
|
const manifest = await discover({
|
|
@@ -16414,7 +16450,7 @@ program.command("eas:sync").description("Set up a mobile app's EAS project for a
|
|
|
16414
16450
|
try {
|
|
16415
16451
|
const globalOptions = program.opts();
|
|
16416
16452
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16417
|
-
const { easSync } = await import("./eas-
|
|
16453
|
+
const { easSync } = await import("./eas-CTfRmndW.mjs");
|
|
16418
16454
|
await easSync(options);
|
|
16419
16455
|
} catch (error) {
|
|
16420
16456
|
exitWithError(error);
|
|
@@ -16424,7 +16460,7 @@ program.command("publish").description("Ship a mobile app for a deployed stage:
|
|
|
16424
16460
|
try {
|
|
16425
16461
|
const globalOptions = program.opts();
|
|
16426
16462
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16427
|
-
const { publish, PublishModeConflict } = await import("./publish-
|
|
16463
|
+
const { publish, PublishModeConflict } = await import("./publish-hhgraEhO.mjs");
|
|
16428
16464
|
if (options.build && options.update) throw new PublishModeConflict();
|
|
16429
16465
|
const { build, update, ...rest } = options;
|
|
16430
16466
|
await publish({
|
|
@@ -16440,7 +16476,7 @@ program.command("deploy:google-play").description("Let EAS Submit publish a mobi
|
|
|
16440
16476
|
try {
|
|
16441
16477
|
const globalOptions = program.opts();
|
|
16442
16478
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16443
|
-
const { deployGooglePlay } = await import("./googlePlay-
|
|
16479
|
+
const { deployGooglePlay } = await import("./googlePlay-m1De-qIJ.mjs");
|
|
16444
16480
|
await deployGooglePlay(options);
|
|
16445
16481
|
} catch (error) {
|
|
16446
16482
|
exitWithError(error);
|
|
@@ -16462,7 +16498,7 @@ program.command("migrate").description("Apply each database construct's migratio
|
|
|
16462
16498
|
try {
|
|
16463
16499
|
const globalOptions = program.opts();
|
|
16464
16500
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16465
|
-
const { migrateCommand } = await import("./migrate-
|
|
16501
|
+
const { migrateCommand } = await import("./migrate-X0Y7fz3N.mjs");
|
|
16466
16502
|
await migrateCommand({
|
|
16467
16503
|
...options,
|
|
16468
16504
|
...construct ? { construct } : {}
|
|
@@ -16475,7 +16511,7 @@ program.command("seed").description("Migrate, then run each database construct's
|
|
|
16475
16511
|
try {
|
|
16476
16512
|
const globalOptions = program.opts();
|
|
16477
16513
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16478
|
-
const { seedCommand } = await import("./migrate-
|
|
16514
|
+
const { seedCommand } = await import("./migrate-X0Y7fz3N.mjs");
|
|
16479
16515
|
await seedCommand({
|
|
16480
16516
|
...options,
|
|
16481
16517
|
...construct ? { construct } : {}
|
|
@@ -16488,7 +16524,7 @@ program.command("migration").description("Write a construct's next migration: an
|
|
|
16488
16524
|
try {
|
|
16489
16525
|
const globalOptions = program.opts();
|
|
16490
16526
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16491
|
-
const { migrationCommand } = await import("./migrate-
|
|
16527
|
+
const { migrationCommand } = await import("./migrate-X0Y7fz3N.mjs");
|
|
16492
16528
|
await migrationCommand({
|
|
16493
16529
|
construct,
|
|
16494
16530
|
...name ? { name } : {}
|
|
@@ -16588,7 +16624,7 @@ program.command("secrets:add").description("Build the keys a stage must be given
|
|
|
16588
16624
|
try {
|
|
16589
16625
|
const globalOptions = program.opts();
|
|
16590
16626
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16591
|
-
const { secretsAddCommand } = await import("./add-
|
|
16627
|
+
const { secretsAddCommand } = await import("./add-DXdJjp0b.mjs");
|
|
16592
16628
|
await secretsAddCommand(options);
|
|
16593
16629
|
} catch (error) {
|
|
16594
16630
|
exitWithError(error);
|
|
@@ -16598,7 +16634,7 @@ program.command("encryption:rotate").description("Add a new current key to an En
|
|
|
16598
16634
|
try {
|
|
16599
16635
|
const globalOptions = program.opts();
|
|
16600
16636
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16601
|
-
const { encryptionRotateCommand } = await import("./encryption-
|
|
16637
|
+
const { encryptionRotateCommand } = await import("./encryption-BpTPmd7h.mjs");
|
|
16602
16638
|
await encryptionRotateCommand(construct, options);
|
|
16603
16639
|
} catch (error) {
|
|
16604
16640
|
exitWithError(error);
|
|
@@ -16608,7 +16644,7 @@ program.command("encryption:retire").description("Remove an old key from an Encr
|
|
|
16608
16644
|
try {
|
|
16609
16645
|
const globalOptions = program.opts();
|
|
16610
16646
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16611
|
-
const { encryptionRetireCommand } = await import("./encryption-
|
|
16647
|
+
const { encryptionRetireCommand } = await import("./encryption-BpTPmd7h.mjs");
|
|
16612
16648
|
await encryptionRetireCommand(construct, key, options);
|
|
16613
16649
|
} catch (error) {
|
|
16614
16650
|
exitWithError(error);
|
|
@@ -16647,7 +16683,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
|
|
|
16647
16683
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16648
16684
|
const { loadWorkspaceConfig } = await import("./config.mjs");
|
|
16649
16685
|
const { reconcileMissingSecrets } = await import("./reconcile--I7V4Klj.mjs");
|
|
16650
|
-
const { secretsStoreFor } = await import("./seeds-
|
|
16686
|
+
const { secretsStoreFor } = await import("./seeds-CRkKeyW0.mjs").then((n) => n.Rt);
|
|
16651
16687
|
const { workspace } = await loadWorkspaceConfig();
|
|
16652
16688
|
const stage = options.stage ?? workspace.stages.local;
|
|
16653
16689
|
const store = await secretsStoreFor(workspace, stage);
|
|
@@ -16656,7 +16692,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
|
|
|
16656
16692
|
console.error(`No secrets found for stage "${stage}". Run "gkm secrets:init --stage ${stage}" first.`);
|
|
16657
16693
|
process.exit(1);
|
|
16658
16694
|
}
|
|
16659
|
-
const { derivedContainers } = await import("./seeds-
|
|
16695
|
+
const { derivedContainers } = await import("./seeds-CRkKeyW0.mjs").then((n) => n.mt);
|
|
16660
16696
|
const result = reconcileMissingSecrets(secrets, workspace, await derivedContainers(workspace, stage));
|
|
16661
16697
|
if (!result) {
|
|
16662
16698
|
console.log(`\n✓ Secrets for stage "${stage}" are up-to-date`);
|
|
@@ -16673,14 +16709,14 @@ program.command("secrets:migrate").description("Copy a deployed stage's secrets
|
|
|
16673
16709
|
try {
|
|
16674
16710
|
const globalOptions = program.opts();
|
|
16675
16711
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16676
|
-
const { secretsMigrateCommand } = await import("./migrate-
|
|
16712
|
+
const { secretsMigrateCommand } = await import("./migrate-4B4RgAjU.mjs");
|
|
16677
16713
|
await secretsMigrateCommand(options);
|
|
16678
16714
|
} catch (error) {
|
|
16679
16715
|
exitWithError(error);
|
|
16680
16716
|
}
|
|
16681
16717
|
});
|
|
16682
16718
|
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", "Compose: neither write the public hosts' DNS records nor check they point at GKM_SERVER_IPV4 (a CDN or proxy in front, or records written elsewhere)").option("--rotate-keys", "Deployed stage: each provider issues its runtime keys a successor (the old one is deleted by the next deploy)").option("--retire-old-keys", "Deployed stage: delete a rotated-out key now instead of on the next deploy").action(async (options) => {
|
|
16683
|
-
const { deployCli } = await import("./cli-
|
|
16719
|
+
const { deployCli } = await import("./cli-H0uB_znq.mjs");
|
|
16684
16720
|
const globalOptions = program.opts();
|
|
16685
16721
|
const code = await deployCli({
|
|
16686
16722
|
cwd: resolve(globalOptions.cwd ?? process.cwd()),
|
|
@@ -16700,7 +16736,7 @@ program.command("deploy").description("Deploy a stage through its target").optio
|
|
|
16700
16736
|
});
|
|
16701
16737
|
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) => {
|
|
16702
16738
|
try {
|
|
16703
|
-
const { rollbackStage } = await import("./rollback-
|
|
16739
|
+
const { rollbackStage } = await import("./rollback-9t9G3c_u.mjs").then((n) => n.a);
|
|
16704
16740
|
const { terminalCredentials } = await import("./terminal-CybB-cjk.mjs");
|
|
16705
16741
|
const globalOptions = program.opts();
|
|
16706
16742
|
await rollbackStage({
|
|
@@ -16715,11 +16751,11 @@ program.command("deploy:rollback").description("Put a stage's app back on its pr
|
|
|
16715
16751
|
exitWithError(error);
|
|
16716
16752
|
}
|
|
16717
16753
|
});
|
|
16718
|
-
program.command("compose:server").description("Set up a stage's server for compose deploys: harden it (SSH keys only, no root login, firewall, security updates, fail2ban), install Docker, create the deploy user, and give its key to GitHub").requiredOption("--stage <stage>", "A deployed stage from gkm.config.ts").option("--admin <user>", "The sudo user you log in to the server as — never root (
|
|
16754
|
+
program.command("compose:server").description("Set up a stage's server for compose deploys: harden it (SSH keys only, no root login, firewall, security updates, fail2ban), install Docker, create the deploy user, and give its key to GitHub").requiredOption("--stage <stage>", "A deployed stage from gkm.config.ts").option("--admin <user>", "The sudo user you log in to the server as — never root (default: ssh's own user for the host)").option("--identity <path>", "The SSH key the admin logs in with (default: ssh's own choice)").option("--key-file <path>", "The deploy key pair (default: ~/.ssh/gkm-<project>-<stage>)").option("--repo <owner/name>", "GitHub repository (default: this one)").option("--no-github", "Leave the GitHub environment's key and host alone").option("--yes", "Set the server up without asking first").option("--dry-run", "Print the plan and the script; connect to nothing").action(async (options) => {
|
|
16719
16755
|
try {
|
|
16720
16756
|
const globalOptions = program.opts();
|
|
16721
16757
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16722
|
-
const { composeServerCommand } = await import("./serverSetup
|
|
16758
|
+
const { composeServerCommand } = await import("./serverSetup-DlRKRfTi.mjs");
|
|
16723
16759
|
await composeServerCommand(options);
|
|
16724
16760
|
} catch (error) {
|
|
16725
16761
|
exitWithError(error);
|
|
@@ -16744,7 +16780,7 @@ program.command("deploy:github").description("Let GitHub Actions deploy a stage:
|
|
|
16744
16780
|
try {
|
|
16745
16781
|
const globalOptions = program.opts();
|
|
16746
16782
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16747
|
-
const { deployGithubCommand } = await import("./github-
|
|
16783
|
+
const { deployGithubCommand } = await import("./github-tWAGuR9i.mjs");
|
|
16748
16784
|
await deployGithubCommand(options);
|
|
16749
16785
|
} catch (error) {
|
|
16750
16786
|
exitWithError(error);
|
|
@@ -16754,7 +16790,7 @@ program.command("stages").description("The workspace's stages from gkm.config.ts
|
|
|
16754
16790
|
try {
|
|
16755
16791
|
const globalOptions = program.opts();
|
|
16756
16792
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
16757
|
-
const { stagesCommand } = await import("./stages-
|
|
16793
|
+
const { stagesCommand } = await import("./stages-Cb9rqRbN.mjs");
|
|
16758
16794
|
await stagesCommand(options);
|
|
16759
16795
|
} catch (error) {
|
|
16760
16796
|
exitWithError(error);
|