@geekmidas/cli 1.10.9 → 1.10.10

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/index.mjs CHANGED
@@ -8,7 +8,7 @@ import { getKeyPath, maskPassword, readStageSecrets, secretsExist, setCustomSecr
8
8
  import { DokployApi } from "./dokploy-api-2ldYoN3i.mjs";
9
9
  import { encryptSecrets } from "./encryption-BOH5M-f-.mjs";
10
10
  import { CachedStateProvider } from "./CachedStateProvider-BDq5WqSy.mjs";
11
- import { createStageSecrets, generateDbPassword, generateDbUrl, generateFullstackCustomSecrets, rotateServicePassword, writeDockerEnvFromSecrets } from "./fullstack-secrets-C2lbdbLZ.mjs";
11
+ import { createStageSecrets, generateConnectionUrls, generateDbPassword, generateDbUrl, generateFullstackCustomSecrets, generateServiceCredentials, rotateServicePassword, writeDockerEnvFromSecrets } from "./fullstack-secrets-DmUOfLeX.mjs";
12
12
  import { generateReactQueryCommand } from "./openapi-react-query-C4UdILaI.mjs";
13
13
  import { isSSMConfigured, pullSecrets, pushSecrets } from "./sync-CzXruMzP.mjs";
14
14
  import { createRequire } from "node:module";
@@ -35,7 +35,7 @@ import prompts from "prompts";
35
35
 
36
36
  //#region package.json
37
37
  var name = "@geekmidas/cli";
38
- var version = "1.10.8";
38
+ var version = "1.10.9";
39
39
  var description = "CLI tools for building Lambda handlers, server applications, and generating OpenAPI specs";
40
40
  var private$1 = false;
41
41
  var type = "module";
@@ -11380,20 +11380,56 @@ async function resolveSecrets(stage, workspace, options) {
11380
11380
  * @internal Exported for testing
11381
11381
  */
11382
11382
  function reconcileSecrets(secrets, workspace) {
11383
+ let changed = false;
11384
+ let result = { ...secrets };
11385
+ const serviceMap = [
11386
+ {
11387
+ key: "db",
11388
+ name: "postgres"
11389
+ },
11390
+ {
11391
+ key: "cache",
11392
+ name: "redis"
11393
+ },
11394
+ {
11395
+ key: "storage",
11396
+ name: "minio"
11397
+ }
11398
+ ];
11399
+ for (const { key, name: name$1 } of serviceMap) if (workspace.services[key] && !result.services[name$1]) {
11400
+ const creds = generateServiceCredentials(name$1);
11401
+ result = {
11402
+ ...result,
11403
+ services: {
11404
+ ...result.services,
11405
+ [name$1]: creds
11406
+ }
11407
+ };
11408
+ result.urls = generateConnectionUrls(result.services);
11409
+ logger$1.log(` 🔄 Adding missing service credentials: ${name$1}`);
11410
+ changed = true;
11411
+ }
11383
11412
  const isMultiApp = Object.keys(workspace.apps).length > 1;
11384
- if (!isMultiApp) return null;
11385
- const expected = generateFullstackCustomSecrets(workspace);
11386
- const missing = {};
11387
- for (const [key, value] of Object.entries(expected)) if (!(key in secrets.custom)) missing[key] = value;
11388
- if (Object.keys(missing).length === 0) return null;
11389
- logger$1.log(` 🔄 Adding missing secrets: ${Object.keys(missing).join(", ")}`);
11390
- return {
11391
- ...secrets,
11392
- updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
11393
- custom: {
11394
- ...secrets.custom,
11395
- ...missing
11413
+ if (isMultiApp) {
11414
+ const expected = generateFullstackCustomSecrets(workspace);
11415
+ const missing = {};
11416
+ for (const [key, value] of Object.entries(expected)) if (!(key in result.custom)) missing[key] = value;
11417
+ if (Object.keys(missing).length > 0) {
11418
+ logger$1.log(` 🔄 Adding missing secrets: ${Object.keys(missing).join(", ")}`);
11419
+ result = {
11420
+ ...result,
11421
+ custom: {
11422
+ ...result.custom,
11423
+ ...missing
11424
+ }
11425
+ };
11426
+ changed = true;
11396
11427
  }
11428
+ }
11429
+ if (!changed) return null;
11430
+ return {
11431
+ ...result,
11432
+ updatedAt: (/* @__PURE__ */ new Date()).toISOString()
11397
11433
  };
11398
11434
  }
11399
11435
  /**
@@ -11948,7 +11984,7 @@ program.command("secrets:push").description("Push secrets to remote provider (SS
11948
11984
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11949
11985
  const { loadWorkspaceConfig: loadWorkspaceConfig$1 } = await import("./config.mjs");
11950
11986
  const { pushSecrets: pushSecrets$1 } = await import("./sync-CyGe5f1I.mjs");
11951
- const { reconcileMissingSecrets } = await import("./reconcile-BnM6FA6g.mjs");
11987
+ const { reconcileMissingSecrets } = await import("./reconcile-C0dsg-Gq.mjs");
11952
11988
  const { readStageSecrets: readStageSecrets$1, writeStageSecrets: writeStageSecrets$1 } = await import("./storage-C1FNm2EP.mjs");
11953
11989
  const { workspace } = await loadWorkspaceConfig$1();
11954
11990
  const secrets = await readStageSecrets$1(options.stage, workspace.root);
@@ -11974,7 +12010,7 @@ program.command("secrets:pull").description("Pull secrets from remote provider (
11974
12010
  const { loadWorkspaceConfig: loadWorkspaceConfig$1 } = await import("./config.mjs");
11975
12011
  const { pullSecrets: pullSecrets$1 } = await import("./sync-CyGe5f1I.mjs");
11976
12012
  const { writeStageSecrets: writeStageSecrets$1 } = await import("./storage-C1FNm2EP.mjs");
11977
- const { reconcileMissingSecrets } = await import("./reconcile-BnM6FA6g.mjs");
12013
+ const { reconcileMissingSecrets } = await import("./reconcile-C0dsg-Gq.mjs");
11978
12014
  const { workspace } = await loadWorkspaceConfig$1();
11979
12015
  let secrets = await pullSecrets$1(options.stage, workspace);
11980
12016
  if (!secrets) {
@@ -11999,7 +12035,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
11999
12035
  const globalOptions = program.opts();
12000
12036
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12001
12037
  const { loadWorkspaceConfig: loadWorkspaceConfig$1 } = await import("./config.mjs");
12002
- const { reconcileMissingSecrets } = await import("./reconcile-BnM6FA6g.mjs");
12038
+ const { reconcileMissingSecrets } = await import("./reconcile-C0dsg-Gq.mjs");
12003
12039
  const { readStageSecrets: readStageSecrets$1, writeStageSecrets: writeStageSecrets$1 } = await import("./storage-C1FNm2EP.mjs");
12004
12040
  const { workspace } = await loadWorkspaceConfig$1();
12005
12041
  const secrets = await readStageSecrets$1(options.stage, workspace.root);