@geekmidas/cli 10.0.0-alpha.89 → 10.0.0-alpha.90
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--36rw8cP.mjs → GoDaddyProvider-DSStJVAv.mjs} +2 -2
- package/dist/{GoDaddyProvider--36rw8cP.mjs.map → GoDaddyProvider-DSStJVAv.mjs.map} +1 -1
- package/dist/{GoDaddyProvider-DnRor066.cjs → GoDaddyProvider-DqZ1qD_F.cjs} +2 -2
- package/dist/{GoDaddyProvider-DnRor066.cjs.map → GoDaddyProvider-DqZ1qD_F.cjs.map} +1 -1
- package/dist/{LegacyStateStore-BaBoYl59.cjs → LegacyStateStore-DXmNA7hy.cjs} +2 -2
- package/dist/{LegacyStateStore-BaBoYl59.cjs.map → LegacyStateStore-DXmNA7hy.cjs.map} +1 -1
- package/dist/{LegacyStateStore-CO7bzJCU.mjs → LegacyStateStore-ZkdmiUFZ.mjs} +2 -2
- package/dist/{LegacyStateStore-CO7bzJCU.mjs.map → LegacyStateStore-ZkdmiUFZ.mjs.map} +1 -1
- package/dist/{LocalStateStore-CUWh2BWU.cjs → LocalStateStore-BBeTlRTH.cjs} +2 -2
- package/dist/{LocalStateStore-CUWh2BWU.cjs.map → LocalStateStore-BBeTlRTH.cjs.map} +1 -1
- package/dist/{LocalStateStore-C_hYDv6I.mjs → LocalStateStore-CU-O0SBp.mjs} +2 -2
- package/dist/{LocalStateStore-C_hYDv6I.mjs.map → LocalStateStore-CU-O0SBp.mjs.map} +1 -1
- package/dist/{S3StateStore-O8EYfjfG.cjs → S3StateStore-Br8VMY22.cjs} +2 -2
- package/dist/{S3StateStore-O8EYfjfG.cjs.map → S3StateStore-Br8VMY22.cjs.map} +1 -1
- package/dist/{S3StateStore-hIm8Rrmu.mjs → S3StateStore-bwxcI_wQ.mjs} +2 -2
- package/dist/{S3StateStore-hIm8Rrmu.mjs.map → S3StateStore-bwxcI_wQ.mjs.map} +1 -1
- package/dist/{SSMStateStore-IvcjTk8h.mjs → SSMStateStore-CsOS0W1y.mjs} +2 -2
- package/dist/{SSMStateStore-IvcjTk8h.mjs.map → SSMStateStore-CsOS0W1y.mjs.map} +1 -1
- package/dist/{SSMStateStore-DIzbiqCz.cjs → SSMStateStore-DoZE1Wi1.cjs} +2 -2
- package/dist/{SSMStateStore-DIzbiqCz.cjs.map → SSMStateStore-DoZE1Wi1.cjs.map} +1 -1
- package/dist/{add-C9qX4Juc.cjs → add-CNMF0Q3m.cjs} +2 -2
- package/dist/{add-C9qX4Juc.cjs.map → add-CNMF0Q3m.cjs.map} +1 -1
- package/dist/{add-v3tCbrpE.mjs → add-DHk1roh_.mjs} +2 -2
- package/dist/{add-v3tCbrpE.mjs.map → add-DHk1roh_.mjs.map} +1 -1
- package/dist/{bundler-C4NmpRTD.cjs → bundler-BQJiB7Ub.cjs} +3 -3
- package/dist/{bundler-C4NmpRTD.cjs.map → bundler-BQJiB7Ub.cjs.map} +1 -1
- package/dist/{bundler-C_fCgcVO.mjs → bundler-D6eBfVkl.mjs} +3 -3
- package/dist/{bundler-C_fCgcVO.mjs.map → bundler-D6eBfVkl.mjs.map} +1 -1
- package/dist/{cli-C85Dut8K.cjs → cli-BE9mqeX8.cjs} +2 -2
- package/dist/{cli-C85Dut8K.cjs.map → cli-BE9mqeX8.cjs.map} +1 -1
- package/dist/{cli-REdO9X5b.mjs → cli-DD-Yk-I5.mjs} +2 -2
- package/dist/{cli-REdO9X5b.mjs.map → cli-DD-Yk-I5.mjs.map} +1 -1
- package/dist/{compose-Dn0oAgQ0.mjs → compose-Bhmf0n4o.mjs} +2 -2
- package/dist/{compose-Dn0oAgQ0.mjs.map → compose-Bhmf0n4o.mjs.map} +1 -1
- package/dist/{compose-BvrhDwJ6.cjs → compose-CvpU6ooi.cjs} +2 -2
- package/dist/{compose-BvrhDwJ6.cjs.map → compose-CvpU6ooi.cjs.map} +1 -1
- package/dist/deploy/public.cjs +5 -5
- package/dist/deploy/public.mjs +5 -5
- package/dist/{deploy-DbBGo3a6.cjs → deploy-CuHasEA4.cjs} +3 -3
- package/dist/{deploy-DbBGo3a6.cjs.map → deploy-CuHasEA4.cjs.map} +1 -1
- package/dist/{deploy-BaERRh0Q.mjs → deploy-QNtx_eWR.mjs} +3 -3
- package/dist/{deploy-BaERRh0Q.mjs.map → deploy-QNtx_eWR.mjs.map} +1 -1
- package/dist/{dokploy-CMmD_ddX.mjs → dokploy-CYcMLh9-.mjs} +2 -2
- package/dist/{dokploy-CMmD_ddX.mjs.map → dokploy-CYcMLh9-.mjs.map} +1 -1
- package/dist/{dokploy-DwAaKA9B.cjs → dokploy-DIowwyIB.cjs} +2 -2
- package/dist/{dokploy-DwAaKA9B.cjs.map → dokploy-DIowwyIB.cjs.map} +1 -1
- package/dist/{encryption-BQmhq9_y.mjs → encryption-BrEef7Jk.mjs} +2 -2
- package/dist/{encryption-BQmhq9_y.mjs.map → encryption-BrEef7Jk.mjs.map} +1 -1
- package/dist/{encryption-BrN_9_CM.cjs → encryption-CjYdUb2s.cjs} +2 -2
- package/dist/{encryption-BrN_9_CM.cjs.map → encryption-CjYdUb2s.cjs.map} +1 -1
- package/dist/{engine-DILocOOH.mjs → engine-2h4k5ICq.mjs} +2 -2
- package/dist/{engine-DILocOOH.mjs.map → engine-2h4k5ICq.mjs.map} +1 -1
- package/dist/{engine-DgHoFBMw.cjs → engine-BhJ7ZP9K.cjs} +2 -2
- package/dist/{engine-DgHoFBMw.cjs.map → engine-BhJ7ZP9K.cjs.map} +1 -1
- package/dist/{github-Bf7pz6AV.cjs → github-B5Bw4HIu.cjs} +2 -2
- package/dist/{github-Bf7pz6AV.cjs.map → github-B5Bw4HIu.cjs.map} +1 -1
- package/dist/{github-xzg99wz8.mjs → github-BCDF6xVH.mjs} +2 -2
- package/dist/{github-xzg99wz8.mjs.map → github-BCDF6xVH.mjs.map} +1 -1
- package/dist/index.cjs +89 -46
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +89 -46
- package/dist/index.mjs.map +1 -1
- package/dist/{migrate-DPF7ZF8M.cjs → migrate-CGaancHY.cjs} +2 -2
- package/dist/{migrate-DPF7ZF8M.cjs.map → migrate-CGaancHY.cjs.map} +1 -1
- package/dist/{migrate-CpmO5qnl.mjs → migrate-DWZz9kah.mjs} +2 -2
- package/dist/{migrate-CpmO5qnl.mjs.map → migrate-DWZz9kah.mjs.map} +1 -1
- package/dist/{migrate-CKLJ73OO.mjs → migrate-DbtcuOr_.mjs} +2 -2
- package/dist/{migrate-CKLJ73OO.mjs.map → migrate-DbtcuOr_.mjs.map} +1 -1
- package/dist/{migrate-7xayVtzL.cjs → migrate-q2YYLJLE.cjs} +2 -2
- package/dist/{migrate-7xayVtzL.cjs.map → migrate-q2YYLJLE.cjs.map} +1 -1
- package/dist/{resolve-dlKPFNgv.cjs → resolve-Cns0v6dN.cjs} +3 -3
- package/dist/{resolve-dlKPFNgv.cjs.map → resolve-Cns0v6dN.cjs.map} +1 -1
- package/dist/{resolve-Dv_weZoh.mjs → resolve-DNg0icnh.mjs} +3 -3
- package/dist/{resolve-Dv_weZoh.mjs.map → resolve-DNg0icnh.mjs.map} +1 -1
- package/dist/{rollback-DpSU2DsD.mjs → rollback-CFrNLmxs.mjs} +3 -3
- package/dist/{rollback-DpSU2DsD.mjs.map → rollback-CFrNLmxs.mjs.map} +1 -1
- package/dist/{rollback-65VVIdBM.cjs → rollback-UIjS25F1.cjs} +3 -3
- package/dist/{rollback-65VVIdBM.cjs.map → rollback-UIjS25F1.cjs.map} +1 -1
- package/dist/{seeds-CN6tB-va.cjs → seeds-CkIPFGNO.cjs} +65 -13
- package/dist/seeds-CkIPFGNO.cjs.map +1 -0
- package/dist/{seeds-perzdN81.mjs → seeds-odfgSCmu.mjs} +65 -13
- package/dist/seeds-odfgSCmu.mjs.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-CN6tB-va.cjs.map +0 -1
- package/dist/seeds-perzdN81.mjs.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import { l as withOwningTsconfigJsx, r as discover, u as ConstructGenerator } fr
|
|
|
5
5
|
import { t as appKey } from "./derive-B4vDpzgP.mjs";
|
|
6
6
|
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-CJ0lKFq-.mjs";
|
|
7
7
|
import { ConfigNotFound, NotABackendApp, NotInAnApp, loadAppConfig, loadConfig, loadWorkspaceConfig, loadWorkspaceSettings, parseModuleConfig } from "./config.mjs";
|
|
8
|
-
import { $n as LOCAL_LOGS_EMAIL, $t as isImageBuild, An as prepareEntryCredentials, Cn as createCredentialsPreload, Dn as loadEnvFiles, Dt as LOCAL_CA_PATH, En as isPortAvailable, Fn as FileSecretsStore, Ft as quoteIdentifier, In as getKeyPath, Mn as secretsStoreFor, Nt as postgresDatabaseNames, On as loadPortState, Ot as forgetState, Qn as withCustomSecret, Qt as imageBuildCredentials, Rn as projectKey, Sn as primaryPortKey, Tn as findAvailablePort, U as createStateStore, Vn as deployIdentity, X as assertDevServicesFlag, Yn as maskPassword, Zn as toEmbeddableSecrets, a as provisionStage, at as WorkerGenerator, ct as QueueGenerator, dn as appTelemetry, dt as backendsOf$1, en as cacheBackendFor, ft as constructGlobs, h as dockerCommand, hn as telemetryOf, in as CLUSTER_DATABASE, it as workerUnits, kn as loadSecretsForApp, lt as CronGenerator, mn as surfaceClientTraced, mt as reconcileWorkspace, nn as providerOf, ot as workerBundleName, pn as scopeTelemetryEnv, pt as derivedContainers, sn as TELEMETRY_CONTAINER, st as workerEntryDir, tn as eventsBackendFor, u as provisionCommand, ut as FAKE_ENV, vn as describeServices, wn as createEntryWrapper, xn as portsOf, yn as fakeKey, yt as readLocalCredentials, zt as pgClient } from "./seeds-
|
|
8
|
+
import { $n as LOCAL_LOGS_EMAIL, $t as isImageBuild, An as prepareEntryCredentials, Cn as createCredentialsPreload, Dn as loadEnvFiles, Dt as LOCAL_CA_PATH, En as isPortAvailable, Fn as FileSecretsStore, Ft as quoteIdentifier, In as getKeyPath, Mn as secretsStoreFor, Nt as postgresDatabaseNames, On as loadPortState, Ot as forgetState, Qn as withCustomSecret, Qt as imageBuildCredentials, Rn as projectKey, Sn as primaryPortKey, Tn as findAvailablePort, U as createStateStore, Vn as deployIdentity, X as assertDevServicesFlag, Yn as maskPassword, Zn as toEmbeddableSecrets, a as provisionStage, at as WorkerGenerator, ct as QueueGenerator, dn as appTelemetry, dt as backendsOf$1, en as cacheBackendFor, ft as constructGlobs, h as dockerCommand, hn as telemetryOf, in as CLUSTER_DATABASE, it as workerUnits, kn as loadSecretsForApp, lt as CronGenerator, mn as surfaceClientTraced, mt as reconcileWorkspace, nn as providerOf, ot as workerBundleName, pn as scopeTelemetryEnv, pt as derivedContainers, sn as TELEMETRY_CONTAINER, st as workerEntryDir, tn as eventsBackendFor, u as provisionCommand, ut as FAKE_ENV, vn as describeServices, wn as createEntryWrapper, xn as portsOf, yn as fakeKey, yt as readLocalCredentials, zt as pgClient } from "./seeds-odfgSCmu.mjs";
|
|
9
9
|
import { c as startTelemetryCode, l as telemetryFor, n as runtimeFor, o as mountRequestSpansCode, r as parseTelemetryFlag, s as routeTelemetry, t as EndpointGenerator, u as writeTelemetryModule } from "./EndpointGenerator-CVc6Oi1Y.mjs";
|
|
10
10
|
import { generateOpenApi, openapiCommand, resolveOpenApiConfig } from "./openapi.mjs";
|
|
11
11
|
import { s as isCacheBackend, t as SubscriberGenerator } from "./SubscriberGenerator-BPqQf8fB.mjs";
|
|
@@ -14,10 +14,10 @@ import { n as driversFor, r as eventsBackendsIn, t as cacheBackendsIn } from "./
|
|
|
14
14
|
import { n as withCompute, r as withRoutes, t as manifestModule } from "./emit-C1e8qD08.mjs";
|
|
15
15
|
import { t as LocalSandbox } from "./local-IuoIF3CT.mjs";
|
|
16
16
|
import { f as keyFingerprint, n as sniffAppEnvironment, o as DokployApi } from "./sniffer-BTtX3NUM.mjs";
|
|
17
|
-
import { t as deploy$1 } from "./deploy-
|
|
18
|
-
import { _ as planStackDns, a as stackOverrideFile, b as serverAddressHint, d as pinnedRef, f as edgeDir, g as applyStackDns, h as dockerCompose, i as ComposePushNeedsBuild, m as EDGE_PROJECT, o as composeProject, p as removeEdgeRoutes, r as ComposePinNeedsPull, s as stackDir, t as composeTarget, u as parseDigests, v as requiredServerAddress, x as stackHosts, y as serverAddress } from "./compose-
|
|
17
|
+
import { t as deploy$1 } from "./deploy-QNtx_eWR.mjs";
|
|
18
|
+
import { _ as planStackDns, a as stackOverrideFile, b as serverAddressHint, d as pinnedRef, f as edgeDir, g as applyStackDns, h as dockerCompose, i as ComposePushNeedsBuild, m as EDGE_PROJECT, o as composeProject, p as removeEdgeRoutes, r as ComposePinNeedsPull, s as stackDir, t as composeTarget, u as parseDigests, v as requiredServerAddress, x as stackHosts, y as serverAddress } from "./compose-Bhmf0n4o.mjs";
|
|
19
19
|
import { o as loadCredentialSchemas, t as CredentialsInvalid } from "./credentialSchemas-BJqRJNK4.mjs";
|
|
20
|
-
import { t as LocalStateStore } from "./LocalStateStore-
|
|
20
|
+
import { t as LocalStateStore } from "./LocalStateStore-CU-O0SBp.mjs";
|
|
21
21
|
import { a as getExecCommand, c as validateProjectName, i as findWorkspaceRoot, n as detectPackageManager$1, o as getInstallCommand, r as findWorkspacePackages, s as getRunCommand, t as checkDirectoryExists } from "./utils-D_fxUqvU.mjs";
|
|
22
22
|
import { a as writeTestHarness, i as TEST_MANIFEST_ENV, n as TEST_READY_FILE, t as TEST_READY_ENV } from "./ready-b6vm0-W-.mjs";
|
|
23
23
|
import { createRequire } from "node:module";
|
|
@@ -47,7 +47,7 @@ import crypto from "crypto";
|
|
|
47
47
|
import { Function } from "@geekmidas/constructs/functions";
|
|
48
48
|
import { Topic } from "@geekmidas/constructs/topic";
|
|
49
49
|
//#region package.json
|
|
50
|
-
var version = "10.0.0-alpha.
|
|
50
|
+
var version = "10.0.0-alpha.90";
|
|
51
51
|
//#endregion
|
|
52
52
|
//#region src/prompt.ts
|
|
53
53
|
/**
|
|
@@ -2324,9 +2324,9 @@ async function workspaceDevCommand(configured, options) {
|
|
|
2324
2324
|
for (const { id, port } of fakes) logger$5.log(`🎭 ${id} fake: http://localhost:${port}`);
|
|
2325
2325
|
logger$5.log(options.migrate || options.seed ? "🗄️ Migrating the databases" : "🗄️ Checking for pending migrations");
|
|
2326
2326
|
if (options.migrate || options.seed) {
|
|
2327
|
-
const { prepareDevDatabases } = await import("./migrate-
|
|
2327
|
+
const { prepareDevDatabases } = await import("./migrate-DbtcuOr_.mjs");
|
|
2328
2328
|
await prepareDevDatabases(workspace, reconciled.env, { seed: !!options.seed });
|
|
2329
|
-
} else await import("./migrate-
|
|
2329
|
+
} else await import("./migrate-DbtcuOr_.mjs").then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
|
|
2330
2330
|
logger$5.log(`⚠️ Could not check for pending migrations: ${error instanceof Error ? error.message : String(error)}`);
|
|
2331
2331
|
});
|
|
2332
2332
|
const appUrls = {};
|
|
@@ -3379,7 +3379,7 @@ async function buildApp(input) {
|
|
|
3379
3379
|
...production,
|
|
3380
3380
|
...telemetry ? { telemetry } : {}
|
|
3381
3381
|
});
|
|
3382
|
-
const { bundleServer } = await import("./bundler-
|
|
3382
|
+
const { bundleServer } = await import("./bundler-D6eBfVkl.mjs");
|
|
3383
3383
|
await bundleServer({
|
|
3384
3384
|
entryPoint,
|
|
3385
3385
|
outputDir: join(outputDir, "dist"),
|
|
@@ -3524,7 +3524,7 @@ async function buildWorkers(input) {
|
|
|
3524
3524
|
});
|
|
3525
3525
|
logger$4.log(`Generated worker ${worker.id}: ${crons.length} crons, ${queues.length} queues, ${subscribers.length} subscribers`);
|
|
3526
3526
|
if (!input.bundle) continue;
|
|
3527
|
-
const { bundleServer } = await import("./bundler-
|
|
3527
|
+
const { bundleServer } = await import("./bundler-D6eBfVkl.mjs");
|
|
3528
3528
|
const outfile = workerBundleName(worker.id);
|
|
3529
3529
|
await bundleServer({
|
|
3530
3530
|
entryPoint,
|
|
@@ -3610,7 +3610,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
|
|
|
3610
3610
|
let masterKey;
|
|
3611
3611
|
if (context.production?.bundle && !skipBundle) {
|
|
3612
3612
|
logger$4.log(`\n📦 Bundling production server...`);
|
|
3613
|
-
const { bundleServer } = await import("./bundler-
|
|
3613
|
+
const { bundleServer } = await import("./bundler-D6eBfVkl.mjs");
|
|
3614
3614
|
const allConstructs = [
|
|
3615
3615
|
...endpoints.map((e) => e.construct),
|
|
3616
3616
|
...functions.map((f) => f.construct),
|
|
@@ -5312,25 +5312,25 @@ function loadPackageJson() {
|
|
|
5312
5312
|
* Run: pnpm --filter @geekmidas/cli sync-versions
|
|
5313
5313
|
*/
|
|
5314
5314
|
const GEEKMIDAS_VERSIONS = {
|
|
5315
|
-
"@geekmidas/audit": "~10.0.0-alpha.
|
|
5316
|
-
"@geekmidas/auth": "~10.0.0-alpha.
|
|
5317
|
-
"@geekmidas/cache": "~10.0.0-alpha.
|
|
5318
|
-
"@geekmidas/client": "~10.0.0-alpha.
|
|
5319
|
-
"@geekmidas/cloud": "~10.0.0-alpha.
|
|
5320
|
-
"@geekmidas/constructs": "~10.0.0-alpha.
|
|
5321
|
-
"@geekmidas/db": "~10.0.0-alpha.
|
|
5322
|
-
"@geekmidas/emailkit": "~10.0.0-alpha.
|
|
5323
|
-
"@geekmidas/envkit": "~10.0.0-alpha.
|
|
5324
|
-
"@geekmidas/errors": "~10.0.0-alpha.
|
|
5325
|
-
"@geekmidas/events": "~10.0.0-alpha.
|
|
5326
|
-
"@geekmidas/logger": "~10.0.0-alpha.
|
|
5327
|
-
"@geekmidas/manifest": "~10.0.0-alpha.
|
|
5328
|
-
"@geekmidas/rate-limit": "~10.0.0-alpha.
|
|
5329
|
-
"@geekmidas/schema": "~10.0.0-alpha.
|
|
5330
|
-
"@geekmidas/services": "~10.0.0-alpha.
|
|
5331
|
-
"@geekmidas/storage": "~10.0.0-alpha.
|
|
5332
|
-
"@geekmidas/telescope": "~10.0.0-alpha.
|
|
5333
|
-
"@geekmidas/testkit": "~10.0.0-alpha.
|
|
5315
|
+
"@geekmidas/audit": "~10.0.0-alpha.90",
|
|
5316
|
+
"@geekmidas/auth": "~10.0.0-alpha.90",
|
|
5317
|
+
"@geekmidas/cache": "~10.0.0-alpha.90",
|
|
5318
|
+
"@geekmidas/client": "~10.0.0-alpha.90",
|
|
5319
|
+
"@geekmidas/cloud": "~10.0.0-alpha.90",
|
|
5320
|
+
"@geekmidas/constructs": "~10.0.0-alpha.90",
|
|
5321
|
+
"@geekmidas/db": "~10.0.0-alpha.90",
|
|
5322
|
+
"@geekmidas/emailkit": "~10.0.0-alpha.90",
|
|
5323
|
+
"@geekmidas/envkit": "~10.0.0-alpha.90",
|
|
5324
|
+
"@geekmidas/errors": "~10.0.0-alpha.90",
|
|
5325
|
+
"@geekmidas/events": "~10.0.0-alpha.90",
|
|
5326
|
+
"@geekmidas/logger": "~10.0.0-alpha.90",
|
|
5327
|
+
"@geekmidas/manifest": "~10.0.0-alpha.90",
|
|
5328
|
+
"@geekmidas/rate-limit": "~10.0.0-alpha.90",
|
|
5329
|
+
"@geekmidas/schema": "~10.0.0-alpha.90",
|
|
5330
|
+
"@geekmidas/services": "~10.0.0-alpha.90",
|
|
5331
|
+
"@geekmidas/storage": "~10.0.0-alpha.90",
|
|
5332
|
+
"@geekmidas/telescope": "~10.0.0-alpha.90",
|
|
5333
|
+
"@geekmidas/testkit": "~10.0.0-alpha.90",
|
|
5334
5334
|
"@geekmidas/cli": `~${loadPackageJson().version}`
|
|
5335
5335
|
};
|
|
5336
5336
|
//#endregion
|
|
@@ -5731,7 +5731,7 @@ const COMMIT = /^[0-9a-f]{40}$/;
|
|
|
5731
5731
|
* The `uses:` value for the stages action, with a comment saying which CLI
|
|
5732
5732
|
* release the pinned commit is.
|
|
5733
5733
|
*/
|
|
5734
|
-
function stagesActionUses(commit = "
|
|
5734
|
+
function stagesActionUses(commit = "108157b10491802890a494443587d8bbd312f5db", version = cliVersion()) {
|
|
5735
5735
|
return commit && COMMIT.test(commit) ? `${STAGES_ACTION}@${commit} # @geekmidas/cli ${version}` : `${STAGES_ACTION}@main # pin to a commit SHA: see the action's README`;
|
|
5736
5736
|
}
|
|
5737
5737
|
//#endregion
|
|
@@ -11049,8 +11049,8 @@ async function composeStageHosts(options) {
|
|
|
11049
11049
|
...options.profile ? { profile: options.profile } : {},
|
|
11050
11050
|
...options.home ? { home: options.home } : {}
|
|
11051
11051
|
})).read(stage);
|
|
11052
|
-
const { deployedStackSecrets } = await import("./compose-
|
|
11053
|
-
const { composeStack } = await import("./compose-
|
|
11052
|
+
const { deployedStackSecrets } = await import("./compose-Bhmf0n4o.mjs").then((n) => n.l);
|
|
11053
|
+
const { composeStack } = await import("./compose-Bhmf0n4o.mjs").then((n) => n.c);
|
|
11054
11054
|
const { secrets } = deployedStackSecrets(workspace, stage, stored, manifest);
|
|
11055
11055
|
const stack = composeStack({
|
|
11056
11056
|
workspace,
|
|
@@ -11144,6 +11144,7 @@ async function provisionStageDns(options) {
|
|
|
11144
11144
|
//#endregion
|
|
11145
11145
|
//#region src/setup/index.ts
|
|
11146
11146
|
var setup_exports = /* @__PURE__ */ __exportAll({
|
|
11147
|
+
StageSecretsUnreadable: () => StageSecretsUnreadable,
|
|
11147
11148
|
createFreshWorkspaceSecrets: () => createFreshWorkspaceSecrets,
|
|
11148
11149
|
ensureStageSecrets: () => ensureStageSecrets,
|
|
11149
11150
|
reconcileSecrets: () => reconcileSecrets,
|
|
@@ -11175,7 +11176,7 @@ async function setupCommand(options = {}) {
|
|
|
11175
11176
|
logger$1.log(`📦 Workspace: ${workspace.name}`);
|
|
11176
11177
|
logger$1.log(`📱 Apps: ${Object.keys(workspace.apps).join(", ")}`);
|
|
11177
11178
|
logger$1.log(`🔑 Stage: ${stage}\n`);
|
|
11178
|
-
if (!local) assertStageServer(workspace, stage, await (await secretsStoreFor(workspace, stage, { ...options.profile ? { profile: options.profile } : {} })
|
|
11179
|
+
if (!local) assertStageServer(workspace, stage, await readStageSecrets(await secretsStoreFor(workspace, stage, { ...options.profile ? { profile: options.profile } : {} }), stage, options));
|
|
11179
11180
|
if (!local && options.dryRun) {
|
|
11180
11181
|
await provisionDeployed(workspace, stage, options);
|
|
11181
11182
|
return;
|
|
@@ -11194,6 +11195,48 @@ async function setupCommand(options = {}) {
|
|
|
11194
11195
|
}
|
|
11195
11196
|
printSummary(workspace, stage);
|
|
11196
11197
|
}
|
|
11198
|
+
/** Where each AWS store keeps a stage's secrets, as a person reads it. */
|
|
11199
|
+
const AWS_STORES = {
|
|
11200
|
+
ssm: "SSM Parameter Store",
|
|
11201
|
+
"secrets-manager": "Secrets Manager"
|
|
11202
|
+
};
|
|
11203
|
+
/**
|
|
11204
|
+
* A deployed stage's secrets are kept in its AWS account, and no AWS
|
|
11205
|
+
* credentials were found to read them with.
|
|
11206
|
+
*
|
|
11207
|
+
* Raised before any provider runs: even a dry run reads the stage's secrets,
|
|
11208
|
+
* since its plan needs the server they name (`GKM_SERVER_IPV4`).
|
|
11209
|
+
*/
|
|
11210
|
+
var StageSecretsUnreadable = class extends Error {
|
|
11211
|
+
stage;
|
|
11212
|
+
store;
|
|
11213
|
+
profile;
|
|
11214
|
+
dryRun;
|
|
11215
|
+
constructor(stage, store, profile, dryRun, cause) {
|
|
11216
|
+
const where = AWS_STORES[store] ?? `the '${store}' store`;
|
|
11217
|
+
const command = `gkm setup --stage ${stage}${dryRun ? " --dry-run" : ""}`;
|
|
11218
|
+
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 });
|
|
11219
|
+
this.stage = stage;
|
|
11220
|
+
this.store = store;
|
|
11221
|
+
this.profile = profile;
|
|
11222
|
+
this.dryRun = dryRun;
|
|
11223
|
+
this.name = "StageSecretsUnreadable";
|
|
11224
|
+
}
|
|
11225
|
+
};
|
|
11226
|
+
/**
|
|
11227
|
+
* The stage's secrets from its store, refused with
|
|
11228
|
+
* {@link StageSecretsUnreadable} when there are no AWS credentials to read
|
|
11229
|
+
* them — matched by the SDK's error name, its message being free to change.
|
|
11230
|
+
* Any other failure is the store's own, and passes through.
|
|
11231
|
+
*/
|
|
11232
|
+
async function readStageSecrets(store, stage, options) {
|
|
11233
|
+
try {
|
|
11234
|
+
return await store.read(stage);
|
|
11235
|
+
} catch (error) {
|
|
11236
|
+
if (error?.name === "CredentialsProviderError") throw new StageSecretsUnreadable(stage, store.name, options.profile, options.dryRun === true, error);
|
|
11237
|
+
throw error;
|
|
11238
|
+
}
|
|
11239
|
+
}
|
|
11197
11240
|
/**
|
|
11198
11241
|
* A deployed stage's providers: each one's `ensure()`, in the stage's own
|
|
11199
11242
|
* account, its keys written into the stage's secrets.
|
|
@@ -11573,7 +11616,7 @@ function testDatabases(reconciled) {
|
|
|
11573
11616
|
* starts without the reference data the app needs.
|
|
11574
11617
|
*/
|
|
11575
11618
|
async function migrateTestStage(workspace, env) {
|
|
11576
|
-
const { migrateAndSeed } = await import("./migrate-
|
|
11619
|
+
const { migrateAndSeed } = await import("./migrate-DbtcuOr_.mjs");
|
|
11577
11620
|
const { discover } = await import("./discover-BPelzeGW.mjs").then((n) => n.i);
|
|
11578
11621
|
const sources = {};
|
|
11579
11622
|
const manifest = await discover({
|
|
@@ -12017,7 +12060,7 @@ program.command("migrate").description("Apply each database construct's migratio
|
|
|
12017
12060
|
try {
|
|
12018
12061
|
const globalOptions = program.opts();
|
|
12019
12062
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12020
|
-
const { migrateCommand } = await import("./migrate-
|
|
12063
|
+
const { migrateCommand } = await import("./migrate-DbtcuOr_.mjs");
|
|
12021
12064
|
await migrateCommand({
|
|
12022
12065
|
...options,
|
|
12023
12066
|
...construct ? { construct } : {}
|
|
@@ -12031,7 +12074,7 @@ program.command("seed").description("Migrate, then run each database construct's
|
|
|
12031
12074
|
try {
|
|
12032
12075
|
const globalOptions = program.opts();
|
|
12033
12076
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12034
|
-
const { seedCommand } = await import("./migrate-
|
|
12077
|
+
const { seedCommand } = await import("./migrate-DbtcuOr_.mjs");
|
|
12035
12078
|
await seedCommand({
|
|
12036
12079
|
...options,
|
|
12037
12080
|
...construct ? { construct } : {}
|
|
@@ -12045,7 +12088,7 @@ program.command("migration").description("Write a construct's next migration: an
|
|
|
12045
12088
|
try {
|
|
12046
12089
|
const globalOptions = program.opts();
|
|
12047
12090
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12048
|
-
const { migrationCommand } = await import("./migrate-
|
|
12091
|
+
const { migrationCommand } = await import("./migrate-DbtcuOr_.mjs");
|
|
12049
12092
|
await migrationCommand({
|
|
12050
12093
|
construct,
|
|
12051
12094
|
...name ? { name } : {}
|
|
@@ -12153,7 +12196,7 @@ program.command("secrets:add").description("Build the keys a stage must be given
|
|
|
12153
12196
|
try {
|
|
12154
12197
|
const globalOptions = program.opts();
|
|
12155
12198
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12156
|
-
const { secretsAddCommand } = await import("./add-
|
|
12199
|
+
const { secretsAddCommand } = await import("./add-DHk1roh_.mjs");
|
|
12157
12200
|
await secretsAddCommand(options);
|
|
12158
12201
|
} catch (error) {
|
|
12159
12202
|
console.error(formatError(error));
|
|
@@ -12164,7 +12207,7 @@ program.command("encryption:rotate").description("Add a new current key to an En
|
|
|
12164
12207
|
try {
|
|
12165
12208
|
const globalOptions = program.opts();
|
|
12166
12209
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12167
|
-
const { encryptionRotateCommand } = await import("./encryption-
|
|
12210
|
+
const { encryptionRotateCommand } = await import("./encryption-BrEef7Jk.mjs");
|
|
12168
12211
|
await encryptionRotateCommand(construct, options);
|
|
12169
12212
|
} catch (error) {
|
|
12170
12213
|
console.error(formatError(error));
|
|
@@ -12175,7 +12218,7 @@ program.command("encryption:retire").description("Remove an old key from an Encr
|
|
|
12175
12218
|
try {
|
|
12176
12219
|
const globalOptions = program.opts();
|
|
12177
12220
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12178
|
-
const { encryptionRetireCommand } = await import("./encryption-
|
|
12221
|
+
const { encryptionRetireCommand } = await import("./encryption-BrEef7Jk.mjs");
|
|
12179
12222
|
await encryptionRetireCommand(construct, key, options);
|
|
12180
12223
|
} catch (error) {
|
|
12181
12224
|
console.error(formatError(error));
|
|
@@ -12218,7 +12261,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
|
|
|
12218
12261
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12219
12262
|
const { loadWorkspaceConfig } = await import("./config.mjs");
|
|
12220
12263
|
const { reconcileMissingSecrets } = await import("./reconcile-Dh1Jk7WE.mjs");
|
|
12221
|
-
const { secretsStoreFor } = await import("./seeds-
|
|
12264
|
+
const { secretsStoreFor } = await import("./seeds-odfgSCmu.mjs").then((n) => n.Pn);
|
|
12222
12265
|
const { workspace } = await loadWorkspaceConfig();
|
|
12223
12266
|
const stage = options.stage ?? workspace.stages.local;
|
|
12224
12267
|
const store = await secretsStoreFor(workspace, stage);
|
|
@@ -12227,7 +12270,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
|
|
|
12227
12270
|
console.error(`No secrets found for stage "${stage}". Run "gkm secrets:init --stage ${stage}" first.`);
|
|
12228
12271
|
process.exit(1);
|
|
12229
12272
|
}
|
|
12230
|
-
const { derivedContainers } = await import("./seeds-
|
|
12273
|
+
const { derivedContainers } = await import("./seeds-odfgSCmu.mjs").then((n) => n.ht);
|
|
12231
12274
|
const result = reconcileMissingSecrets(secrets, workspace, await derivedContainers(workspace, stage));
|
|
12232
12275
|
if (!result) {
|
|
12233
12276
|
console.log(`\n✓ Secrets for stage "${stage}" are up-to-date`);
|
|
@@ -12245,7 +12288,7 @@ program.command("secrets:migrate").description("Copy a deployed stage's secrets
|
|
|
12245
12288
|
try {
|
|
12246
12289
|
const globalOptions = program.opts();
|
|
12247
12290
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12248
|
-
const { secretsMigrateCommand } = await import("./migrate-
|
|
12291
|
+
const { secretsMigrateCommand } = await import("./migrate-DWZz9kah.mjs");
|
|
12249
12292
|
await secretsMigrateCommand(options);
|
|
12250
12293
|
} catch (error) {
|
|
12251
12294
|
console.error(formatError(error));
|
|
@@ -12253,7 +12296,7 @@ program.command("secrets:migrate").description("Copy a deployed stage's secrets
|
|
|
12253
12296
|
}
|
|
12254
12297
|
});
|
|
12255
12298
|
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) => {
|
|
12256
|
-
const { deployCli } = await import("./cli-
|
|
12299
|
+
const { deployCli } = await import("./cli-DD-Yk-I5.mjs");
|
|
12257
12300
|
const globalOptions = program.opts();
|
|
12258
12301
|
const code = await deployCli({
|
|
12259
12302
|
cwd: resolve(globalOptions.cwd ?? process.cwd()),
|
|
@@ -12271,7 +12314,7 @@ program.command("deploy").description("Deploy a stage through its target").optio
|
|
|
12271
12314
|
});
|
|
12272
12315
|
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) => {
|
|
12273
12316
|
try {
|
|
12274
|
-
const { rollbackStage } = await import("./rollback-
|
|
12317
|
+
const { rollbackStage } = await import("./rollback-CFrNLmxs.mjs").then((n) => n.a);
|
|
12275
12318
|
const { terminalCredentials } = await import("./terminal-D8TPK7o9.mjs");
|
|
12276
12319
|
const globalOptions = program.opts();
|
|
12277
12320
|
await rollbackStage({
|
|
@@ -12307,7 +12350,7 @@ program.command("deploy:github").description("Let GitHub Actions deploy a stage:
|
|
|
12307
12350
|
try {
|
|
12308
12351
|
const globalOptions = program.opts();
|
|
12309
12352
|
if (globalOptions.cwd) process.chdir(globalOptions.cwd);
|
|
12310
|
-
const { deployGithubCommand } = await import("./github-
|
|
12353
|
+
const { deployGithubCommand } = await import("./github-BCDF6xVH.mjs");
|
|
12311
12354
|
await deployGithubCommand(options);
|
|
12312
12355
|
} catch (error) {
|
|
12313
12356
|
console.error(formatError(error));
|