@factiii/stack 0.1.34 → 0.1.35

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.
Files changed (102) hide show
  1. package/README.md +441 -441
  2. package/bin/stack +46 -0
  3. package/dist/cli/fix.js +10 -10
  4. package/dist/cli/fix.js.map +1 -1
  5. package/dist/cli/init.d.ts.map +1 -1
  6. package/dist/cli/init.js +20 -7
  7. package/dist/cli/init.js.map +1 -1
  8. package/dist/cli/scan.d.ts.map +1 -1
  9. package/dist/cli/scan.js +14 -22
  10. package/dist/cli/scan.js.map +1 -1
  11. package/dist/generators/generate-stack-yml.d.ts +1 -1
  12. package/dist/generators/generate-stack-yml.d.ts.map +1 -1
  13. package/dist/generators/generate-stack-yml.js +96 -69
  14. package/dist/generators/generate-stack-yml.js.map +1 -1
  15. package/dist/plugins/addons/openclaw/index.d.ts +45 -0
  16. package/dist/plugins/addons/openclaw/index.d.ts.map +1 -0
  17. package/dist/plugins/addons/openclaw/index.js +107 -0
  18. package/dist/plugins/addons/openclaw/index.js.map +1 -0
  19. package/dist/plugins/addons/openclaw/scanfix/setup.d.ts +19 -0
  20. package/dist/plugins/addons/openclaw/scanfix/setup.d.ts.map +1 -0
  21. package/dist/plugins/addons/openclaw/scanfix/setup.js +441 -0
  22. package/dist/plugins/addons/openclaw/scanfix/setup.js.map +1 -0
  23. package/dist/plugins/index.d.ts.map +1 -1
  24. package/dist/plugins/index.js +8 -0
  25. package/dist/plugins/index.js.map +1 -1
  26. package/dist/plugins/pipelines/aws/index.js +15 -15
  27. package/dist/plugins/pipelines/aws/prod.js +7 -7
  28. package/dist/plugins/pipelines/aws/scanfix/aws-cli.d.ts +3 -1
  29. package/dist/plugins/pipelines/aws/scanfix/aws-cli.d.ts.map +1 -1
  30. package/dist/plugins/pipelines/aws/scanfix/aws-cli.js +17 -7
  31. package/dist/plugins/pipelines/aws/scanfix/aws-cli.js.map +1 -1
  32. package/dist/plugins/pipelines/aws/scanfix/credentials.d.ts +1 -1
  33. package/dist/plugins/pipelines/aws/scanfix/credentials.d.ts.map +1 -1
  34. package/dist/plugins/pipelines/aws/scanfix/credentials.js +27 -73
  35. package/dist/plugins/pipelines/aws/scanfix/credentials.js.map +1 -1
  36. package/dist/plugins/pipelines/aws/scanfix/db-replication.d.ts +1 -4
  37. package/dist/plugins/pipelines/aws/scanfix/db-replication.d.ts.map +1 -1
  38. package/dist/plugins/pipelines/aws/scanfix/db-replication.js +9 -39
  39. package/dist/plugins/pipelines/aws/scanfix/db-replication.js.map +1 -1
  40. package/dist/plugins/pipelines/aws/scanfix/ec2.d.ts +1 -0
  41. package/dist/plugins/pipelines/aws/scanfix/ec2.d.ts.map +1 -1
  42. package/dist/plugins/pipelines/aws/scanfix/ec2.js +61 -110
  43. package/dist/plugins/pipelines/aws/scanfix/ec2.js.map +1 -1
  44. package/dist/plugins/pipelines/aws/scanfix/ecr.d.ts +1 -0
  45. package/dist/plugins/pipelines/aws/scanfix/ecr.d.ts.map +1 -1
  46. package/dist/plugins/pipelines/aws/scanfix/ecr.js +25 -34
  47. package/dist/plugins/pipelines/aws/scanfix/ecr.js.map +1 -1
  48. package/dist/plugins/pipelines/aws/scanfix/iam.d.ts +1 -0
  49. package/dist/plugins/pipelines/aws/scanfix/iam.d.ts.map +1 -1
  50. package/dist/plugins/pipelines/aws/scanfix/iam.js +35 -44
  51. package/dist/plugins/pipelines/aws/scanfix/iam.js.map +1 -1
  52. package/dist/plugins/pipelines/aws/scanfix/rds.d.ts +1 -0
  53. package/dist/plugins/pipelines/aws/scanfix/rds.d.ts.map +1 -1
  54. package/dist/plugins/pipelines/aws/scanfix/rds.js +39 -104
  55. package/dist/plugins/pipelines/aws/scanfix/rds.js.map +1 -1
  56. package/dist/plugins/pipelines/aws/scanfix/s3.d.ts +1 -0
  57. package/dist/plugins/pipelines/aws/scanfix/s3.d.ts.map +1 -1
  58. package/dist/plugins/pipelines/aws/scanfix/s3.js +44 -53
  59. package/dist/plugins/pipelines/aws/scanfix/s3.js.map +1 -1
  60. package/dist/plugins/pipelines/aws/scanfix/security-groups.d.ts +1 -0
  61. package/dist/plugins/pipelines/aws/scanfix/security-groups.d.ts.map +1 -1
  62. package/dist/plugins/pipelines/aws/scanfix/security-groups.js +80 -79
  63. package/dist/plugins/pipelines/aws/scanfix/security-groups.js.map +1 -1
  64. package/dist/plugins/pipelines/aws/scanfix/ses.d.ts +1 -0
  65. package/dist/plugins/pipelines/aws/scanfix/ses.d.ts.map +1 -1
  66. package/dist/plugins/pipelines/aws/scanfix/ses.js +28 -50
  67. package/dist/plugins/pipelines/aws/scanfix/ses.js.map +1 -1
  68. package/dist/plugins/pipelines/aws/scanfix/ssh-bridge.d.ts +17 -0
  69. package/dist/plugins/pipelines/aws/scanfix/ssh-bridge.d.ts.map +1 -0
  70. package/dist/plugins/pipelines/aws/scanfix/ssh-bridge.js +180 -0
  71. package/dist/plugins/pipelines/aws/scanfix/ssh-bridge.js.map +1 -0
  72. package/dist/plugins/pipelines/aws/scanfix/vpc.d.ts +1 -0
  73. package/dist/plugins/pipelines/aws/scanfix/vpc.d.ts.map +1 -1
  74. package/dist/plugins/pipelines/aws/scanfix/vpc.js +93 -94
  75. package/dist/plugins/pipelines/aws/scanfix/vpc.js.map +1 -1
  76. package/dist/plugins/pipelines/aws/utils/aws-helpers.d.ts +101 -28
  77. package/dist/plugins/pipelines/aws/utils/aws-helpers.d.ts.map +1 -1
  78. package/dist/plugins/pipelines/aws/utils/aws-helpers.js +428 -76
  79. package/dist/plugins/pipelines/aws/utils/aws-helpers.js.map +1 -1
  80. package/dist/plugins/pipelines/factiii/index.d.ts +11 -1
  81. package/dist/plugins/pipelines/factiii/index.d.ts.map +1 -1
  82. package/dist/plugins/pipelines/factiii/index.js +183 -33
  83. package/dist/plugins/pipelines/factiii/index.js.map +1 -1
  84. package/dist/plugins/pipelines/factiii/scanfix/config.d.ts +1 -1
  85. package/dist/plugins/pipelines/factiii/scanfix/config.js +4 -4
  86. package/dist/plugins/pipelines/factiii/scanfix/secrets.d.ts.map +1 -1
  87. package/dist/plugins/pipelines/factiii/scanfix/secrets.js +68 -8
  88. package/dist/plugins/pipelines/factiii/scanfix/secrets.js.map +1 -1
  89. package/dist/plugins/servers/mac/index.js +13 -13
  90. package/dist/plugins/servers/mac/staging.js +4 -4
  91. package/dist/scanfix/fixes/certbot.js +1 -1
  92. package/dist/scripts/validate-example-values.d.ts +1 -1
  93. package/dist/scripts/validate-example-values.js +6 -6
  94. package/dist/utils/config-helpers.d.ts +3 -0
  95. package/dist/utils/config-helpers.d.ts.map +1 -1
  96. package/dist/utils/config-helpers.js.map +1 -1
  97. package/dist/utils/secret-prompts.d.ts +5 -2
  98. package/dist/utils/secret-prompts.d.ts.map +1 -1
  99. package/dist/utils/secret-prompts.js +55 -32
  100. package/dist/utils/secret-prompts.js.map +1 -1
  101. package/dist/utils/template-generator.js +71 -71
  102. package/package.json +8 -1
@@ -90,6 +90,20 @@ const workflows_js_1 = require("./scanfix/workflows.js");
90
90
  const secrets_js_1 = require("./scanfix/secrets.js");
91
91
  const env_files_js_1 = require("./scanfix/env-files.js");
92
92
  const ansible_js_1 = require("./scanfix/ansible.js");
93
+ // Import AWS scanfix arrays (AWS provisioning runs as part of factiii pipeline)
94
+ const aws_cli_js_1 = require("../aws/scanfix/aws-cli.js");
95
+ const config_js_2 = require("../aws/scanfix/config.js");
96
+ const credentials_js_1 = require("../aws/scanfix/credentials.js");
97
+ const vpc_js_1 = require("../aws/scanfix/vpc.js");
98
+ const security_groups_js_1 = require("../aws/scanfix/security-groups.js");
99
+ const ec2_js_1 = require("../aws/scanfix/ec2.js");
100
+ const rds_js_1 = require("../aws/scanfix/rds.js");
101
+ const s3_js_1 = require("../aws/scanfix/s3.js");
102
+ const ecr_js_1 = require("../aws/scanfix/ecr.js");
103
+ const ses_js_1 = require("../aws/scanfix/ses.js");
104
+ const iam_js_1 = require("../aws/scanfix/iam.js");
105
+ const db_replication_js_1 = require("../aws/scanfix/db-replication.js");
106
+ const ssh_bridge_js_1 = require("../aws/scanfix/ssh-bridge.js");
93
107
  // Import utility methods
94
108
  const detectionUtils = __importStar(require("./utils/detection.js"));
95
109
  const workflowUtils = __importStar(require("./utils/workflows.js"));
@@ -187,17 +201,6 @@ class FactiiiPipeline {
187
201
  return { reachable: true, via: 'local' };
188
202
  case 'staging':
189
203
  case 'prod':
190
- // Skip environments owned by another pipeline (e.g. AWS)
191
- {
192
- // eslint-disable-next-line @typescript-eslint/no-require-imports
193
- const { getEnvironmentsForStage } = require('../../../utils/config-helpers.js');
194
- const envs = getEnvironmentsForStage(config, stage);
195
- const envValues = Object.values(envs);
196
- const firstEnv = envValues[0];
197
- if (firstEnv && envValues.every((e) => e.pipeline && e.pipeline !== 'factiii')) {
198
- return { reachable: false, reason: 'Handled by ' + (firstEnv.pipeline ?? 'other') + ' pipeline' };
199
- }
200
- }
201
204
  // If GITHUB_ACTIONS is set, we're running inside a workflow on the server
202
205
  // Return 'local' so fixes run directly without triggering another workflow
203
206
  if (process.env.GITHUB_ACTIONS || process.env.FACTIII_ON_SERVER) {
@@ -211,17 +214,29 @@ class FactiiiPipeline {
211
214
  return { reachable: true, via: 'ssh' };
212
215
  }
213
216
  }
214
- // No SSH key cannot reach this stage
215
- // Deployment workflows were removed; SSH is the only remote path.
216
- // eslint-disable-next-line @typescript-eslint/no-require-imports
217
- const osForPath = require('os');
218
- const expectedKeyPath = require('path').join(osForPath.homedir(), '.ssh', stage + '_deploy_key');
219
- return {
220
- reachable: false,
221
- reason: 'No SSH key found at ' + expectedKeyPath + '.\n' +
222
- ' Run: npx stack init (to set up SSH keys)\n' +
223
- ' Or: npx stack secrets set ' + stage.toUpperCase() + '_SSH && npx stack secrets write-ssh-keys',
224
- };
217
+ // If AWS config exists, allow local provisioning (no server needed yet)
218
+ // AWS scanfixes run on the dev machine to provision infrastructure
219
+ {
220
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
221
+ const { getEnvironmentsForStage } = require('../../../utils/config-helpers.js');
222
+ const envs = getEnvironmentsForStage(config, stage);
223
+ const envValues = Object.values(envs);
224
+ const hasAws = envValues.some((e) => e.pipeline === 'aws' || !!e.access_key_id || !!e.config);
225
+ if (hasAws) {
226
+ return { reachable: true, via: 'local' };
227
+ }
228
+ }
229
+ // No SSH key, no AWS — cannot reach this stage
230
+ {
231
+ const sshLabel = stage === 'staging' ? 'SSH_STAGING' : 'SSH_PROD';
232
+ const vaultName = stage === 'staging' ? 'STAGING_SSH' : 'PROD_SSH';
233
+ return {
234
+ reachable: false,
235
+ reason: sshLabel + ' not found (no key at ~/.ssh/' + stage + '_deploy_key).\n' +
236
+ ' Run: npx stack fix --secrets (stores key in vault + writes to disk)\n' +
237
+ ' Or: npx stack secrets set ' + vaultName + ' && npx stack secrets write-ssh-keys',
238
+ };
239
+ }
225
240
  default:
226
241
  return { reachable: false, reason: `Unknown stage: ${stage}` };
227
242
  }
@@ -239,6 +254,20 @@ class FactiiiPipeline {
239
254
  ...workflows_js_1.workflowFixes,
240
255
  ...secrets_js_1.secretsFixes,
241
256
  ...env_files_js_1.envFileFixes,
257
+ // AWS infrastructure provisioning (guarded by isAwsConfigured())
258
+ ...aws_cli_js_1.awsCliFixes,
259
+ ...config_js_2.configFixes,
260
+ ...credentials_js_1.credentialsFixes,
261
+ ...vpc_js_1.vpcFixes,
262
+ ...security_groups_js_1.securityGroupFixes,
263
+ ...ec2_js_1.ec2Fixes,
264
+ ...rds_js_1.rdsFixes,
265
+ ...s3_js_1.s3Fixes,
266
+ ...ecr_js_1.ecrFixes,
267
+ ...ses_js_1.sesFixes,
268
+ ...iam_js_1.iamFixes,
269
+ ...db_replication_js_1.dbReplicationFixes,
270
+ ...ssh_bridge_js_1.sshBridgeFixes,
242
271
  ];
243
272
  // ============================================================
244
273
  // COMMANDS - Plugin commands for maintenance operations
@@ -329,13 +358,124 @@ class FactiiiPipeline {
329
358
  });
330
359
  }
331
360
  }
361
+ /**
362
+ * Change the Ansible Vault password for the configured vault file.
363
+ *
364
+ * This runs locally on the dev machine (secrets stage) and uses:
365
+ * ansible-vault rekey <vault_path> --vault-password-file <old> --new-vault-password-file <new>
366
+ *
367
+ * It then overwrites the configured vault_password_file with the new password
368
+ * so future commands use the updated password.
369
+ */
370
+ static async changeVaultPassword(config, rootDir) {
371
+ try {
372
+ if (!config.ansible?.vault_path || !config.ansible.vault_password_file) {
373
+ return {
374
+ success: false,
375
+ error: 'ansible.vault_path and ansible.vault_password_file must be set in stack.yml before changing the vault password.',
376
+ };
377
+ }
378
+ // Lazy-load prompts to avoid circular imports
379
+ const { promptSingleLine } = await Promise.resolve().then(() => __importStar(require('../../../utils/secret-prompts.js')));
380
+ // Resolve vault path and password file
381
+ // eslint-disable-next-line @typescript-eslint/no-require-imports
382
+ const os = require('os');
383
+ const vaultPathRaw = config.ansible.vault_path.replace(/^~/, os.homedir());
384
+ const passwordFileRaw = config.ansible.vault_password_file.replace(/^~/, os.homedir());
385
+ const vaultPath = path.isAbsolute(vaultPathRaw)
386
+ ? vaultPathRaw
387
+ : path.join(rootDir, vaultPathRaw);
388
+ const passwordFile = path.isAbsolute(passwordFileRaw)
389
+ ? passwordFileRaw
390
+ : path.join(rootDir, passwordFileRaw);
391
+ if (!fs.existsSync(vaultPath)) {
392
+ return {
393
+ success: false,
394
+ error: 'Vault file not found at ' + vaultPath,
395
+ };
396
+ }
397
+ if (!fs.existsSync(passwordFile)) {
398
+ return {
399
+ success: false,
400
+ error: 'Vault password file not found at ' +
401
+ passwordFile +
402
+ '. Update ansible.vault_password_file or create the file first.',
403
+ };
404
+ }
405
+ // Ensure ansible-vault is available
406
+ try {
407
+ (0, child_process_1.execSync)('ansible-vault --version', { stdio: 'pipe' });
408
+ }
409
+ catch {
410
+ return {
411
+ success: false,
412
+ error: 'ansible-vault CLI not found. Install Ansible to change the vault password.',
413
+ };
414
+ }
415
+ console.log('\n🔐 Change Ansible Vault password');
416
+ console.log(' Vault file: ' + vaultPath + '\n');
417
+ const newPassword = await promptSingleLine(' New vault password: ', { hidden: true });
418
+ const confirmPassword = await promptSingleLine(' Confirm new password: ', { hidden: true });
419
+ if (!newPassword || newPassword.trim().length === 0) {
420
+ return { success: false, error: 'New password cannot be empty.' };
421
+ }
422
+ if (newPassword !== confirmPassword) {
423
+ return { success: false, error: 'Passwords do not match.' };
424
+ }
425
+ // Write new password to a temporary file for rekey
426
+ const tmpNewPass = path.join(os.tmpdir(), `factiii-vault-pass-new-${Date.now()}`);
427
+ fs.writeFileSync(tmpNewPass, newPassword.trim() + '\n', { encoding: 'utf8' });
428
+ try {
429
+ const escapedVaultPath = vaultPath.replace(/"/g, '\\"');
430
+ const escapedOldPassFile = passwordFile.replace(/"/g, '\\"');
431
+ const escapedNewPassFile = tmpNewPass.replace(/"/g, '\\"');
432
+ console.log('\nRekeying vault...');
433
+ (0, child_process_1.execSync)(`ansible-vault rekey "${escapedVaultPath}" ` +
434
+ `--vault-password-file "${escapedOldPassFile}" ` +
435
+ `--new-vault-password-file "${escapedNewPassFile}"`, {
436
+ cwd: rootDir,
437
+ stdio: 'inherit',
438
+ });
439
+ // Overwrite the configured password file with the new password
440
+ fs.writeFileSync(passwordFile, newPassword.trim() + '\n', {
441
+ encoding: 'utf8',
442
+ mode: 0o600,
443
+ });
444
+ console.log('\n✅ Vault password updated successfully.');
445
+ console.log(' Updated vault file: ' + vaultPath);
446
+ console.log(' Updated password file: ' + passwordFile + '\n');
447
+ return { success: true, message: 'Vault password updated successfully.' };
448
+ }
449
+ catch (e) {
450
+ const msg = e instanceof Error ? e.message : String(e);
451
+ return {
452
+ success: false,
453
+ error: 'Ansible Vault rekey failed: ' + msg,
454
+ };
455
+ }
456
+ finally {
457
+ try {
458
+ if (fs.existsSync(tmpNewPass)) {
459
+ fs.unlinkSync(tmpNewPass);
460
+ }
461
+ }
462
+ catch {
463
+ // ignore cleanup errors
464
+ }
465
+ }
466
+ }
467
+ catch (e) {
468
+ const msg = e instanceof Error ? e.message : String(e);
469
+ return { success: false, error: msg };
470
+ }
471
+ }
332
472
  static commands = [
333
473
  // ────────────────────────────────────────────────────────────
334
474
  // DATABASE COMMANDS
335
475
  // ────────────────────────────────────────────────────────────
336
476
  {
337
477
  name: 'seed',
338
- description: 'Seed the database with initial data (dev/staging only)',
478
+ description: 'Seed database with initial data via db:seed script (dev/staging only)',
339
479
  category: 'db',
340
480
  stages: ['dev', 'staging'], // No prod - destructive
341
481
  prodSafety: 'destructive',
@@ -358,7 +498,7 @@ class FactiiiPipeline {
358
498
  },
359
499
  {
360
500
  name: 'migrate',
361
- description: 'Run pending database migrations',
501
+ description: 'Apply pending Prisma migrations to the database',
362
502
  category: 'db',
363
503
  stages: ['dev', 'staging', 'prod'],
364
504
  prodSafety: 'caution',
@@ -374,7 +514,7 @@ class FactiiiPipeline {
374
514
  },
375
515
  {
376
516
  name: 'reset',
377
- description: 'Reset database and re-run all migrations (dev/staging only)',
517
+ description: 'Drop all tables and re-run migrations from scratch (DATA LOSS, dev/staging only)',
378
518
  category: 'db',
379
519
  stages: ['dev', 'staging'], // No prod - destructive
380
520
  prodSafety: 'destructive',
@@ -390,7 +530,7 @@ class FactiiiPipeline {
390
530
  },
391
531
  {
392
532
  name: 'status',
393
- description: 'Check migration status',
533
+ description: 'Show pending and applied Prisma migration status',
394
534
  category: 'db',
395
535
  stages: ['dev', 'staging', 'prod'],
396
536
  prodSafety: 'safe',
@@ -409,7 +549,7 @@ class FactiiiPipeline {
409
549
  // ────────────────────────────────────────────────────────────
410
550
  {
411
551
  name: 'logs',
412
- description: 'View container logs',
552
+ description: 'Stream or tail Docker container logs',
413
553
  category: 'ops',
414
554
  stages: ['staging', 'prod'],
415
555
  prodSafety: 'safe',
@@ -431,9 +571,19 @@ class FactiiiPipeline {
431
571
  }
432
572
  },
433
573
  },
574
+ {
575
+ name: 'change-vault-password',
576
+ description: 'Change the Ansible Vault encryption password (runs locally)',
577
+ category: 'ops',
578
+ stages: ['secrets'],
579
+ prodSafety: 'safe',
580
+ execute: async (_stage, _options, config, rootDir) => {
581
+ return await FactiiiPipeline.changeVaultPassword(config, rootDir);
582
+ },
583
+ },
434
584
  {
435
585
  name: 'restart',
436
- description: 'Restart application containers',
586
+ description: 'Restart Docker containers without rebuilding',
437
587
  category: 'ops',
438
588
  stages: ['staging', 'prod'],
439
589
  prodSafety: 'caution',
@@ -454,7 +604,7 @@ class FactiiiPipeline {
454
604
  },
455
605
  {
456
606
  name: 'shell',
457
- description: 'Open a shell in the application container',
607
+ description: 'Open an interactive shell (/bin/sh) inside the app container',
458
608
  category: 'ops',
459
609
  stages: ['staging', 'prod'],
460
610
  prodSafety: 'caution',
@@ -471,7 +621,7 @@ class FactiiiPipeline {
471
621
  },
472
622
  {
473
623
  name: 'status',
474
- description: 'Show container status',
624
+ description: 'Show running/stopped status of all Docker containers',
475
625
  category: 'ops',
476
626
  stages: ['staging', 'prod'],
477
627
  prodSafety: 'safe',
@@ -491,7 +641,7 @@ class FactiiiPipeline {
491
641
  // ────────────────────────────────────────────────────────────
492
642
  {
493
643
  name: 'create',
494
- description: 'Create a database backup',
644
+ description: 'Export database to a SQL dump file via pg_dump',
495
645
  category: 'backup',
496
646
  stages: ['staging', 'prod'],
497
647
  prodSafety: 'safe',
@@ -519,7 +669,7 @@ class FactiiiPipeline {
519
669
  },
520
670
  {
521
671
  name: 'restore',
522
- description: 'Restore database from backup (DATA LOSS!)',
672
+ description: 'Import a SQL dump file into the database (overwrites existing data!)',
523
673
  category: 'backup',
524
674
  stages: ['staging', 'prod'],
525
675
  prodSafety: 'destructive',
@@ -549,7 +699,7 @@ class FactiiiPipeline {
549
699
  },
550
700
  {
551
701
  name: 'health',
552
- description: 'Check application and database health',
702
+ description: 'Check if containers are running and database is reachable',
553
703
  category: 'backup',
554
704
  stages: ['staging', 'prod'],
555
705
  prodSafety: 'safe',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/pipelines/factiii/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/pipelines/factiii/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Configuration-related fixes for Factiii Pipeline plugin
3
- * Validates stack.yml content (EXAMPLE- values, etc.)
3
+ * Validates stack.yml content (EXAMPLE_ values, etc.)
4
4
  *
5
5
  * Note: Missing stack.yml detection is in bootstrap.ts (runs first).
6
6
  */
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /**
3
3
  * Configuration-related fixes for Factiii Pipeline plugin
4
- * Validates stack.yml content (EXAMPLE- values, etc.)
4
+ * Validates stack.yml content (EXAMPLE_ values, etc.)
5
5
  *
6
6
  * Note: Missing stack.yml detection is in bootstrap.ts (runs first).
7
7
  */
@@ -47,7 +47,7 @@ exports.configFixes = [
47
47
  id: 'example-values-in-config',
48
48
  stage: 'dev',
49
49
  severity: 'critical',
50
- description: '⚠️ ' + config_files_js_1.STACK_CONFIG_FILENAME + ' contains EXAMPLE- placeholder values that must be replaced',
50
+ description: '⚠️ ' + config_files_js_1.STACK_CONFIG_FILENAME + ' contains EXAMPLE_ placeholder values that must be replaced',
51
51
  scan: async (_config, rootDir) => {
52
52
  const configPath = (0, config_files_js_1.getStackConfigPath)(rootDir);
53
53
  if (!fs.existsSync(configPath))
@@ -55,10 +55,10 @@ exports.configFixes = [
55
55
  const content = fs.readFileSync(configPath, 'utf8');
56
56
  // Only check non-comment lines (ignore # commented examples)
57
57
  const activeLines = content.split('\n').filter(line => !line.trimStart().startsWith('#'));
58
- return activeLines.some(line => line.includes('EXAMPLE-'));
58
+ return activeLines.some(line => line.includes('EXAMPLE_'));
59
59
  },
60
60
  fix: null,
61
- manualFix: 'Replace all EXAMPLE- prefixed values in ' + config_files_js_1.STACK_CONFIG_FILENAME + ' with your actual values:\n' +
61
+ manualFix: 'Replace all EXAMPLE_ prefixed values in ' + config_files_js_1.STACK_CONFIG_FILENAME + ' with your actual values:\n' +
62
62
  ' - name: your-repo-name\n' +
63
63
  ' - github_repo: your-username/your-repo\n' +
64
64
  ' - ssl_email: your-email@domain.com\n' +
@@ -1 +1 @@
1
- {"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/pipelines/factiii/scanfix/secrets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAiB,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAsBrE,eAAO,MAAM,YAAY,EAAE,GAAG,EAuL7B,CAAC"}
1
+ {"version":3,"file":"secrets.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/pipelines/factiii/scanfix/secrets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAiB,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAsBrE,eAAO,MAAM,YAAY,EAAE,GAAG,EAqP7B,CAAC"}
@@ -100,7 +100,16 @@ exports.secretsFixes = [
100
100
  try {
101
101
  const value = await (0, secret_prompts_js_1.promptForSecret)('STAGING_SSH', config);
102
102
  const result = await store.setSecret('STAGING_SSH', value);
103
- return result.success;
103
+ if (!result.success)
104
+ return false;
105
+ const sshDir = path.join(os.homedir(), '.ssh');
106
+ if (!fs.existsSync(sshDir)) {
107
+ fs.mkdirSync(sshDir, { mode: 0o700 });
108
+ }
109
+ const keyPath = path.join(sshDir, 'staging_deploy_key');
110
+ fs.writeFileSync(keyPath, value.trimEnd() + '\n', { mode: 0o600 });
111
+ console.log(' Wrote STAGING_SSH → ' + keyPath);
112
+ return true;
104
113
  }
105
114
  catch {
106
115
  return false;
@@ -136,7 +145,16 @@ exports.secretsFixes = [
136
145
  try {
137
146
  const value = await (0, secret_prompts_js_1.promptForSecret)('PROD_SSH', config);
138
147
  const result = await store.setSecret('PROD_SSH', value);
139
- return result.success;
148
+ if (!result.success)
149
+ return false;
150
+ const sshDir = path.join(os.homedir(), '.ssh');
151
+ if (!fs.existsSync(sshDir)) {
152
+ fs.mkdirSync(sshDir, { mode: 0o700 });
153
+ }
154
+ const keyPath = path.join(sshDir, 'prod_deploy_key');
155
+ fs.writeFileSync(keyPath, value.trimEnd() + '\n', { mode: 0o600 });
156
+ console.log(' Wrote PROD_SSH → ' + keyPath);
157
+ return true;
140
158
  }
141
159
  catch {
142
160
  return false;
@@ -203,34 +221,76 @@ exports.secretsFixes = [
203
221
  id: 'missing-ssh-key-staging',
204
222
  stage: 'secrets',
205
223
  severity: 'critical',
206
- description: '🔑 SSH key file ' + path.join(os.homedir(), '.ssh', 'staging_deploy_key') + ' not found (required for staging access)',
224
+ description: '🔑 SSH_STAGING key file not on disk (required for staging access)',
207
225
  scan: async (config) => {
208
226
  const { extractEnvironments } = await Promise.resolve().then(() => __importStar(require('../../../../utils/config-helpers.js')));
209
227
  const environments = extractEnvironments(config);
210
- // Only check if staging environment is defined
211
228
  if (!environments.staging)
212
229
  return false;
213
230
  const keyPath = path.join(os.homedir(), '.ssh', 'staging_deploy_key');
214
231
  return !fs.existsSync(keyPath);
215
232
  },
216
- fix: null,
233
+ fix: async (config, rootDir) => {
234
+ const store = getAnsibleStore(config, rootDir);
235
+ if (!store)
236
+ return false;
237
+ try {
238
+ const key = await store.getSecret('STAGING_SSH');
239
+ if (!key) {
240
+ console.log(' STAGING_SSH not in vault yet — set it first: npx stack secrets set STAGING_SSH');
241
+ return false;
242
+ }
243
+ const sshDir = path.join(os.homedir(), '.ssh');
244
+ if (!fs.existsSync(sshDir)) {
245
+ fs.mkdirSync(sshDir, { mode: 0o700 });
246
+ }
247
+ const keyPath = path.join(sshDir, 'staging_deploy_key');
248
+ fs.writeFileSync(keyPath, key.trimEnd() + '\n', { mode: 0o600 });
249
+ console.log(' Wrote STAGING_SSH → ' + keyPath);
250
+ return true;
251
+ }
252
+ catch {
253
+ return false;
254
+ }
255
+ },
217
256
  manualFix: 'Extract SSH keys from vault: npx stack secrets write-ssh-keys',
218
257
  },
219
258
  {
220
259
  id: 'missing-ssh-key-prod',
221
260
  stage: 'secrets',
222
261
  severity: 'critical',
223
- description: '🔑 SSH key file ' + path.join(os.homedir(), '.ssh', 'prod_deploy_key') + ' not found (required for prod access)',
262
+ description: '🔑 SSH_PROD key file not on disk (required for prod access)',
224
263
  scan: async (config) => {
225
264
  const { extractEnvironments } = await Promise.resolve().then(() => __importStar(require('../../../../utils/config-helpers.js')));
226
265
  const environments = extractEnvironments(config);
227
- // Only check if prod environment is defined
228
266
  if (!environments.prod)
229
267
  return false;
230
268
  const keyPath = path.join(os.homedir(), '.ssh', 'prod_deploy_key');
231
269
  return !fs.existsSync(keyPath);
232
270
  },
233
- fix: null,
271
+ fix: async (config, rootDir) => {
272
+ const store = getAnsibleStore(config, rootDir);
273
+ if (!store)
274
+ return false;
275
+ try {
276
+ const key = await store.getSecret('PROD_SSH');
277
+ if (!key) {
278
+ console.log(' PROD_SSH not in vault yet — set it first: npx stack secrets set PROD_SSH');
279
+ return false;
280
+ }
281
+ const sshDir = path.join(os.homedir(), '.ssh');
282
+ if (!fs.existsSync(sshDir)) {
283
+ fs.mkdirSync(sshDir, { mode: 0o700 });
284
+ }
285
+ const keyPath = path.join(sshDir, 'prod_deploy_key');
286
+ fs.writeFileSync(keyPath, key.trimEnd() + '\n', { mode: 0o600 });
287
+ console.log(' Wrote PROD_SSH → ' + keyPath);
288
+ return true;
289
+ }
290
+ catch {
291
+ return false;
292
+ }
293
+ },
234
294
  manualFix: 'Extract SSH keys from vault: npx stack secrets write-ssh-keys',
235
295
  },
236
296
  ];