@factiii/stack 0.1.28 → 0.1.30

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 (32) hide show
  1. package/dist/cli/init.d.ts +8 -3
  2. package/dist/cli/init.d.ts.map +1 -1
  3. package/dist/cli/init.js +128 -289
  4. package/dist/cli/init.js.map +1 -1
  5. package/dist/cli/scan.d.ts +1 -1
  6. package/dist/cli/scan.d.ts.map +1 -1
  7. package/dist/cli/scan.js +84 -12
  8. package/dist/cli/scan.js.map +1 -1
  9. package/dist/generators/generate-stack-yml.d.ts +6 -0
  10. package/dist/generators/generate-stack-yml.d.ts.map +1 -1
  11. package/dist/generators/generate-stack-yml.js +130 -0
  12. package/dist/generators/generate-stack-yml.js.map +1 -1
  13. package/dist/plugins/pipelines/factiii/index.js +2 -2
  14. package/dist/plugins/pipelines/factiii/index.js.map +1 -1
  15. package/dist/plugins/pipelines/factiii/scanfix/bootstrap.d.ts +11 -0
  16. package/dist/plugins/pipelines/factiii/scanfix/bootstrap.d.ts.map +1 -0
  17. package/dist/plugins/pipelines/factiii/scanfix/bootstrap.js +168 -0
  18. package/dist/plugins/pipelines/factiii/scanfix/bootstrap.js.map +1 -0
  19. package/dist/plugins/pipelines/factiii/scanfix/config.d.ts +3 -1
  20. package/dist/plugins/pipelines/factiii/scanfix/config.d.ts.map +1 -1
  21. package/dist/plugins/pipelines/factiii/scanfix/config.js +3 -15
  22. package/dist/plugins/pipelines/factiii/scanfix/config.js.map +1 -1
  23. package/dist/plugins/pipelines/factiii/workflows/stack-ci.yml +27 -8
  24. package/dist/plugins/pipelines/factiii/workflows/stack-cicd-prod.yml +27 -8
  25. package/dist/utils/gitignore.d.ts +15 -0
  26. package/dist/utils/gitignore.d.ts.map +1 -0
  27. package/dist/{plugins/pipelines/factiii/scanfix/local-config.js → utils/gitignore.js} +36 -32
  28. package/dist/utils/gitignore.js.map +1 -0
  29. package/package.json +1 -1
  30. package/dist/plugins/pipelines/factiii/scanfix/local-config.d.ts +0 -7
  31. package/dist/plugins/pipelines/factiii/scanfix/local-config.d.ts.map +0 -1
  32. package/dist/plugins/pipelines/factiii/scanfix/local-config.js.map +0 -1
@@ -1,9 +1,14 @@
1
1
  /**
2
2
  * Init Command
3
3
  *
4
- * First run: creates configs, sets up vault, explains what future runs will auto-fix.
5
- * Subsequent runs: auto-fixes everything without prompts.
6
- * Use --force to regenerate stack.yml from scratch.
4
+ * Handles interactive setup that scanfixes cannot do:
5
+ * - Vault password creation (requires user input)
6
+ * - Secret prompting (SSH keys, AWS credentials)
7
+ * - --force flag to regenerate stack.yml from scratch
8
+ *
9
+ * Config file creation (stack.yml, stackAuto.yml, stack.local.yml) and
10
+ * gitignore management are now handled by bootstrap scanfixes in the
11
+ * factiii pipeline plugin. Running `npx stack` will auto-create them.
7
12
  */
8
13
  import type { InitOptions } from '../types/index.js';
9
14
  export declare function init(options?: InitOptions): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH,OAAO,KAAK,EAAiB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA0SpE,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAUnE;AA8KD,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAWH,OAAO,KAAK,EAAiB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA2MpE,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBnE;AA8ED,eAAe,IAAI,CAAC"}
package/dist/cli/init.js CHANGED
@@ -2,9 +2,14 @@
2
2
  /**
3
3
  * Init Command
4
4
  *
5
- * First run: creates configs, sets up vault, explains what future runs will auto-fix.
6
- * Subsequent runs: auto-fixes everything without prompts.
7
- * Use --force to regenerate stack.yml from scratch.
5
+ * Handles interactive setup that scanfixes cannot do:
6
+ * - Vault password creation (requires user input)
7
+ * - Secret prompting (SSH keys, AWS credentials)
8
+ * - --force flag to regenerate stack.yml from scratch
9
+ *
10
+ * Config file creation (stack.yml, stackAuto.yml, stack.local.yml) and
11
+ * gitignore management are now handled by bootstrap scanfixes in the
12
+ * factiii pipeline plugin. Running `npx stack` will auto-create them.
8
13
  */
9
14
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
15
  if (k2 === undefined) k2 = k;
@@ -51,93 +56,87 @@ const os = __importStar(require("os"));
51
56
  const js_yaml_1 = __importDefault(require("js-yaml"));
52
57
  const child_process_1 = require("child_process");
53
58
  const generate_stack_yml_js_1 = require("../generators/generate-stack-yml.js");
54
- const generate_stack_auto_js_1 = require("../generators/generate-stack-auto.js");
55
59
  const secret_prompts_js_1 = require("../utils/secret-prompts.js");
56
60
  const config_helpers_js_1 = require("../utils/config-helpers.js");
57
61
  /**
58
- * Detect the dev OS from process.platform
59
- */
60
- function detectDevOS() {
61
- if (process.platform === 'darwin')
62
- return 'mac';
63
- if (process.platform === 'win32')
64
- return 'windows';
65
- return 'ubuntu';
66
- }
67
- /**
68
- * Append a line to .gitignore if not already present
62
+ * Check if ansible-vault CLI is available
69
63
  */
70
- function ensureGitignored(rootDir, entry) {
71
- const gitignorePath = path.join(rootDir, '.gitignore');
72
- let content = '';
73
- if (fs.existsSync(gitignorePath)) {
74
- content = fs.readFileSync(gitignorePath, 'utf8');
64
+ function checkAnsibleVault() {
65
+ try {
66
+ (0, child_process_1.execSync)('ansible-vault --version', { stdio: 'pipe' });
67
+ return true;
75
68
  }
76
- const lines = content.split('\n').map((l) => l.trim());
77
- if (lines.includes(entry)) {
78
- return false; // already present
69
+ catch {
70
+ return false;
79
71
  }
80
- const separator = content.length > 0 && !content.endsWith('\n') ? '\n' : '';
81
- fs.appendFileSync(gitignorePath, separator + entry + '\n');
82
- return true;
83
72
  }
84
73
  /**
85
- * Create stack.local.yml with detected OS if it doesn't exist
74
+ * Ensure group_vars/all/ directory and encrypted vault file exist.
75
+ * Returns what was fixed (empty array if nothing needed fixing).
86
76
  */
87
- function ensureLocalConfig(rootDir) {
88
- const localPath = (0, config_files_js_1.getStackLocalPath)(rootDir);
89
- if (fs.existsSync(localPath)) {
90
- console.log(' [OK] ' + config_files_js_1.STACK_LOCAL_FILENAME + ' already exists');
91
- return;
77
+ async function ensureVaultSetup(rootDir, _vaultPassFile) {
78
+ const fixed = [];
79
+ const groupVarsDir = path.join(rootDir, 'group_vars', 'all');
80
+ if (!fs.existsSync(groupVarsDir)) {
81
+ fs.mkdirSync(groupVarsDir, { recursive: true });
82
+ fixed.push('Created ' + groupVarsDir);
92
83
  }
93
- const devOS = detectDevOS();
94
- const content = '# Local machine config (gitignored - each developer has their own)\n' +
95
- '# Generated by: npx stack init\n' +
96
- '\n' +
97
- 'dev_os: ' + devOS + '\n';
98
- fs.writeFileSync(localPath, content, 'utf8');
99
- console.log(' [OK] Created ' + config_files_js_1.STACK_LOCAL_FILENAME + ' (dev_os: ' + devOS + ')');
100
- // Ensure both naming conventions are gitignored
101
- ensureGitignored(rootDir, config_files_js_1.STACK_LOCAL_FILENAME);
102
- ensureGitignored(rootDir, 'factiii.local.yml');
84
+ const vaultFilePath = path.join(rootDir, 'group_vars', 'all', 'vault.yml');
85
+ if (!fs.existsSync(vaultFilePath)) {
86
+ try {
87
+ const { AnsibleVaultSecrets } = await Promise.resolve().then(() => __importStar(require('../utils/ansible-vault-secrets.js')));
88
+ const vault = new AnsibleVaultSecrets({
89
+ vault_path: 'group_vars/all/vault.yml',
90
+ vault_password_file: '~/.vault_pass',
91
+ rootDir,
92
+ });
93
+ await vault.setSecret('_initialized', 'true');
94
+ fixed.push('Created encrypted vault at group_vars/all/vault.yml');
95
+ }
96
+ catch (e) {
97
+ const msg = e instanceof Error ? e.message : String(e);
98
+ fixed.push('Failed to create vault: ' + msg);
99
+ }
100
+ }
101
+ return fixed;
103
102
  }
104
103
  /**
105
- * Copy .env.example to .env.staging and .env.prod if they don't exist.
106
- * Does NOT store in vault user needs to edit values first.
104
+ * Extract SSH key from vault to ~/.ssh/{stage}_deploy_key
105
+ * With safety check: asks before overwriting existing key
107
106
  */
108
- function ensureEnvFiles(rootDir) {
109
- const examplePath = path.join(rootDir, '.env.example');
110
- if (!fs.existsSync(examplePath)) {
111
- console.log(' [--] No .env.example found - skipping env file setup');
112
- return;
113
- }
114
- const exampleContent = fs.readFileSync(examplePath, 'utf8');
115
- let created = false;
116
- const stagingPath = path.join(rootDir, '.env.staging');
117
- if (!fs.existsSync(stagingPath)) {
118
- fs.writeFileSync(stagingPath, exampleContent, 'utf8');
119
- console.log(' [OK] Created .env.staging from .env.example');
120
- created = true;
121
- }
122
- else {
123
- console.log(' [OK] .env.staging already exists');
124
- }
125
- const prodPath = path.join(rootDir, '.env.prod');
126
- if (!fs.existsSync(prodPath)) {
127
- fs.writeFileSync(prodPath, exampleContent, 'utf8');
128
- console.log(' [OK] Created .env.prod from .env.example');
129
- created = true;
107
+ async function extractSSHKeyToFile(vault, stage, _rootDir) {
108
+ const keyName = stage + '_deploy_key';
109
+ const sshDir = path.join(os.homedir(), '.ssh');
110
+ const keyPath = path.join(sshDir, keyName);
111
+ // Safety check: don't overwrite existing keys without asking
112
+ if (fs.existsSync(keyPath)) {
113
+ const overwrite = await (0, secret_prompts_js_1.confirm)(' SSH key already exists at ' + keyPath + ' - overwrite?', false);
114
+ if (!overwrite) {
115
+ console.log(' [--] Keeping existing key at ' + keyPath);
116
+ return;
117
+ }
130
118
  }
131
- else {
132
- console.log(' [OK] .env.prod already exists');
119
+ try {
120
+ const key = await vault.getSSHKey(stage);
121
+ if (!key) {
122
+ console.log(' [!] No ' + stage.toUpperCase() + '_SSH key found in vault');
123
+ return;
124
+ }
125
+ if (!fs.existsSync(sshDir)) {
126
+ fs.mkdirSync(sshDir, { recursive: true });
127
+ }
128
+ fs.writeFileSync(keyPath, key, 'utf8');
129
+ try {
130
+ fs.chmodSync(keyPath, 0o600);
131
+ }
132
+ catch {
133
+ // Windows doesn't support chmod
134
+ }
135
+ console.log(' [OK] Wrote SSH key to ' + keyPath);
133
136
  }
134
- // Ensure env files are gitignored
135
- ensureGitignored(rootDir, '.env.staging');
136
- ensureGitignored(rootDir, '.env.prod');
137
- if (created) {
138
- console.log('');
139
- console.log(' >> Edit .env.staging and .env.prod with real values,');
140
- console.log(' then run `npx stack fix` to store them in the vault.');
137
+ catch (e) {
138
+ const msg = e instanceof Error ? e.message : String(e);
139
+ console.log(' [!] Failed to extract SSH key: ' + msg);
141
140
  }
142
141
  }
143
142
  /**
@@ -256,110 +255,30 @@ async function promptForMissingSecrets(rootDir) {
256
255
  }
257
256
  }
258
257
  }
259
- /**
260
- * Extract SSH key from vault to ~/.ssh/{stage}_deploy_key
261
- * With safety check: asks before overwriting existing key
262
- */
263
- async function extractSSHKeyToFile(vault, stage, _rootDir) {
264
- const keyName = stage + '_deploy_key';
265
- const sshDir = path.join(os.homedir(), '.ssh');
266
- const keyPath = path.join(sshDir, keyName);
267
- // Safety check: don't overwrite existing keys without asking
268
- if (fs.existsSync(keyPath)) {
269
- const overwrite = await (0, secret_prompts_js_1.confirm)(' SSH key already exists at ' + keyPath + ' - overwrite?', false);
270
- if (!overwrite) {
271
- console.log(' [--] Keeping existing key at ' + keyPath);
272
- return;
273
- }
274
- }
275
- try {
276
- const key = await vault.getSSHKey(stage);
277
- if (!key) {
278
- console.log(' [!] No ' + stage.toUpperCase() + '_SSH key found in vault');
279
- return;
280
- }
281
- if (!fs.existsSync(sshDir)) {
282
- fs.mkdirSync(sshDir, { recursive: true });
283
- }
284
- fs.writeFileSync(keyPath, key, 'utf8');
285
- try {
286
- fs.chmodSync(keyPath, 0o600);
287
- }
288
- catch {
289
- // Windows doesn't support chmod
290
- }
291
- console.log(' [OK] Wrote SSH key to ' + keyPath);
292
- }
293
- catch (e) {
294
- const msg = e instanceof Error ? e.message : String(e);
295
- console.log(' [!] Failed to extract SSH key: ' + msg);
296
- }
297
- }
298
- /**
299
- * Check if ansible-vault CLI is available
300
- */
301
- function checkAnsibleVault() {
302
- try {
303
- (0, child_process_1.execSync)('ansible-vault --version', { stdio: 'pipe' });
304
- return true;
305
- }
306
- catch {
307
- return false;
308
- }
309
- }
310
- /**
311
- * Ensure group_vars/all/ directory and encrypted vault file exist.
312
- * Returns what was fixed (empty array if nothing needed fixing).
313
- */
314
- async function ensureVaultSetup(rootDir, vaultPassFile) {
315
- const fixed = [];
316
- const groupVarsDir = path.join(rootDir, 'group_vars', 'all');
317
- if (!fs.existsSync(groupVarsDir)) {
318
- fs.mkdirSync(groupVarsDir, { recursive: true });
319
- fixed.push('Created ' + groupVarsDir);
320
- }
321
- const vaultFilePath = path.join(rootDir, 'group_vars', 'all', 'vault.yml');
322
- if (!fs.existsSync(vaultFilePath)) {
323
- try {
324
- const { AnsibleVaultSecrets } = await Promise.resolve().then(() => __importStar(require('../utils/ansible-vault-secrets.js')));
325
- const vault = new AnsibleVaultSecrets({
326
- vault_path: 'group_vars/all/vault.yml',
327
- vault_password_file: '~/.vault_pass',
328
- rootDir,
329
- });
330
- await vault.setSecret('_initialized', 'true');
331
- fixed.push('Created encrypted vault at group_vars/all/vault.yml');
332
- }
333
- catch (e) {
334
- const msg = e instanceof Error ? e.message : String(e);
335
- fixed.push('Failed to create vault: ' + msg);
336
- }
337
- }
338
- return fixed;
339
- }
340
258
  async function init(options = {}) {
341
259
  const rootDir = options.rootDir ?? process.cwd();
342
260
  const configPath = (0, config_files_js_1.getStackConfigPath)(rootDir);
343
261
  const isFirstRun = !fs.existsSync(configPath);
344
- if (isFirstRun || options.force) {
345
- await firstRun(rootDir, options);
346
- }
347
- else {
348
- await autoFix(rootDir);
349
- }
262
+ // If --force, regenerate stack.yml from template
263
+ if (options.force) {
264
+ console.log('Regenerating ' + config_files_js_1.STACK_CONFIG_FILENAME + '...\n');
265
+ (0, generate_stack_yml_js_1.generateFactiiiYml)(rootDir, { force: true });
266
+ }
267
+ else if (isFirstRun) {
268
+ // No stack.yml — tell user to run npx stack (which bootstraps via scanfixes)
269
+ console.log('No ' + config_files_js_1.STACK_CONFIG_FILENAME + ' found.');
270
+ console.log('Run `npx stack` to auto-detect your project and create config files.\n');
271
+ console.log('Or run `npx stack init --force` to generate from template.\n');
272
+ }
273
+ // Interactive vault and secrets setup
274
+ await setupVaultAndSecrets(rootDir);
350
275
  }
351
276
  /**
352
- * First run: create configs, set up vault, explain what future runs will do.
277
+ * Interactive vault password creation and secret prompting.
278
+ * This is the part that cannot be automated via scanfixes.
353
279
  */
354
- async function firstRun(rootDir, options) {
355
- console.log('Initializing Factiii Stack...\n');
356
- // Generate stack.yml
357
- const created = (0, generate_stack_yml_js_1.generateFactiiiYml)(rootDir, { force: true });
358
- if (created) {
359
- await (0, generate_stack_auto_js_1.generateFactiiiAuto)(rootDir, { force: true });
360
- }
361
- // Check prerequisites
362
- console.log('\nChecking prerequisites...\n');
280
+ async function setupVaultAndSecrets(rootDir) {
281
+ console.log('Checking prerequisites...\n');
363
282
  const hasAnsibleVault = checkAnsibleVault();
364
283
  if (hasAnsibleVault) {
365
284
  console.log(' [OK] ansible-vault is installed');
@@ -378,135 +297,55 @@ async function firstRun(rootDir, options) {
378
297
  console.log(' sudo apt install ansible (Debian/Ubuntu)');
379
298
  console.log(' sudo yum install ansible (RHEL/CentOS)');
380
299
  }
300
+ return;
381
301
  }
382
- // Vault setup (interactive, first time only)
383
- if (hasAnsibleVault) {
384
- const vaultPassFile = path.join(os.homedir(), '.vault_pass');
385
- const hasExistingVaultPass = fs.existsSync(vaultPassFile);
386
- if (hasExistingVaultPass) {
387
- console.log(' [OK] Vault password file exists at ' + vaultPassFile);
388
- // Auto-create vault structure if password exists
389
- const vaultFixes = await ensureVaultSetup(rootDir, vaultPassFile);
390
- for (const fix of vaultFixes) {
391
- console.log(' [OK] ' + fix);
392
- }
302
+ // Vault setup (interactive)
303
+ const vaultPassFile = path.join(os.homedir(), '.vault_pass');
304
+ const hasExistingVaultPass = fs.existsSync(vaultPassFile);
305
+ if (hasExistingVaultPass) {
306
+ console.log(' [OK] Vault password file exists at ' + vaultPassFile);
307
+ // Auto-create vault structure if password exists
308
+ const vaultFixes = await ensureVaultSetup(rootDir, vaultPassFile);
309
+ for (const fix of vaultFixes) {
310
+ console.log(' [OK] ' + fix);
393
311
  }
394
- else {
395
- console.log('');
396
- const setupVault = await (0, secret_prompts_js_1.confirm)('Set up Ansible Vault for secrets now?', true);
397
- if (setupVault) {
398
- console.log('\n Create a vault password (keep this safe - you need it to access secrets):');
399
- const vaultPassword = await (0, secret_prompts_js_1.promptSingleLine)(' Vault password: ');
400
- if (vaultPassword && vaultPassword.trim().length > 0) {
401
- fs.writeFileSync(vaultPassFile, vaultPassword.trim(), 'utf8');
402
- try {
403
- fs.chmodSync(vaultPassFile, 0o600);
404
- }
405
- catch {
406
- // Windows doesn't support chmod - that's OK
407
- }
408
- console.log(' [OK] Vault password saved to ' + vaultPassFile);
409
- const vaultFixes = await ensureVaultSetup(rootDir, vaultPassFile);
410
- for (const fix of vaultFixes) {
411
- console.log(' [OK] ' + fix);
412
- }
312
+ }
313
+ else {
314
+ console.log('');
315
+ const setupVault = await (0, secret_prompts_js_1.confirm)('Set up Ansible Vault for secrets now?', true);
316
+ if (setupVault) {
317
+ console.log('\n Create a vault password (keep this safe - you need it to access secrets):');
318
+ const vaultPassword = await (0, secret_prompts_js_1.promptSingleLine)(' Vault password: ');
319
+ if (vaultPassword && vaultPassword.trim().length > 0) {
320
+ fs.writeFileSync(vaultPassFile, vaultPassword.trim(), 'utf8');
321
+ try {
322
+ fs.chmodSync(vaultPassFile, 0o600);
413
323
  }
414
- else {
415
- console.log(' [!] Skipped vault setup (no password provided)');
324
+ catch {
325
+ // Windows doesn't support chmod - that's OK
326
+ }
327
+ console.log(' [OK] Vault password saved to ' + vaultPassFile);
328
+ const vaultFixes = await ensureVaultSetup(rootDir, vaultPassFile);
329
+ for (const fix of vaultFixes) {
330
+ console.log(' [OK] ' + fix);
416
331
  }
417
332
  }
418
333
  else {
419
- console.log(' [!] Skipped vault setup. Set up later:');
420
- console.log(' 1. Create vault password: echo "your-password" > ~/.vault_pass');
421
- console.log(' 2. Store a secret: npx stack secrets set STAGING_SSH');
334
+ console.log(' [!] Skipped vault setup (no password provided)');
422
335
  }
423
336
  }
337
+ else {
338
+ console.log(' [!] Skipped vault setup. Set up later:');
339
+ console.log(' 1. Create vault password: echo "your-password" > ~/.vault_pass');
340
+ console.log(' 2. Store a secret: npx stack secrets set STAGING_SSH');
341
+ }
424
342
  }
425
- // Create stack.local.yml with detected OS
426
- console.log('');
427
- ensureLocalConfig(rootDir);
428
- // Copy .env.example to .env.staging / .env.prod
429
- console.log('');
430
- ensureEnvFiles(rootDir);
431
343
  // Prompt for missing secrets (SSH keys, AWS credentials)
432
- if (hasAnsibleVault) {
433
- await promptForMissingSecrets(rootDir);
434
- }
435
- // Tell the user what future runs will auto-fix
344
+ await promptForMissingSecrets(rootDir);
436
345
  console.log('\n ────────────────────────────────────────────────');
437
- console.log(' From now on, running `npx stack init` will auto-fix:');
438
- console.log(' - Refresh auto-detected config (' + config_files_js_1.STACK_AUTO_FILENAME + ')');
439
- console.log(' - Verify prerequisites (ansible-vault)');
440
- console.log(' - Repair vault directory and files if missing');
441
- console.log(' - Create ' + config_files_js_1.STACK_LOCAL_FILENAME + ' if missing');
442
- console.log(' - Use --force to regenerate ' + config_files_js_1.STACK_CONFIG_FILENAME + ' from scratch');
346
+ console.log(' Config files are managed by `npx stack` (scan/fix).');
347
+ console.log(' This command only handles vault and secrets setup.');
443
348
  console.log(' ────────────────────────────────────────────────\n');
444
349
  }
445
- /**
446
- * Subsequent runs: auto-fix everything without prompts.
447
- * Only reports what was actually changed.
448
- */
449
- async function autoFix(rootDir) {
450
- const fixed = [];
451
- const warnings = [];
452
- // Always refresh auto-detected config
453
- const autoPath = (0, config_files_js_1.getStackAutoPath)(rootDir);
454
- const oldAutoContent = fs.existsSync(autoPath)
455
- ? fs.readFileSync(autoPath, 'utf8')
456
- : '';
457
- await (0, generate_stack_auto_js_1.generateFactiiiAuto)(rootDir, { force: true });
458
- const newAutoPath = (0, config_files_js_1.getStackAutoPath)(rootDir);
459
- const newAutoContent = fs.existsSync(newAutoPath)
460
- ? fs.readFileSync(newAutoPath, 'utf8')
461
- : '';
462
- if (oldAutoContent !== newAutoContent) {
463
- fixed.push('Updated auto config with latest detection');
464
- }
465
- // Check prerequisites
466
- const hasAnsibleVault = checkAnsibleVault();
467
- if (!hasAnsibleVault) {
468
- warnings.push('ansible-vault not found - install it to manage secrets');
469
- }
470
- // Auto-repair vault setup if vault password exists
471
- if (hasAnsibleVault) {
472
- const vaultPassFile = path.join(os.homedir(), '.vault_pass');
473
- if (fs.existsSync(vaultPassFile)) {
474
- const vaultFixes = await ensureVaultSetup(rootDir, vaultPassFile);
475
- fixed.push(...vaultFixes);
476
- }
477
- }
478
- // Auto-create stack.local.yml if missing
479
- const localPath = (0, config_files_js_1.getStackLocalPath)(rootDir);
480
- if (!fs.existsSync(localPath)) {
481
- const devOS = detectDevOS();
482
- const content = '# Local machine config (gitignored - each developer has their own)\n' +
483
- '# Generated by: npx stack init\n' +
484
- '\n' +
485
- 'dev_os: ' + devOS + '\n';
486
- fs.writeFileSync(localPath, content, 'utf8');
487
- ensureGitignored(rootDir, config_files_js_1.STACK_LOCAL_FILENAME);
488
- ensureGitignored(rootDir, 'factiii.local.yml');
489
- fixed.push('Created ' + config_files_js_1.STACK_LOCAL_FILENAME + ' (dev_os: ' + devOS + ')');
490
- }
491
- // Report results
492
- if (fixed.length === 0 && warnings.length === 0) {
493
- console.log('Everything up to date.');
494
- }
495
- else {
496
- if (fixed.length > 0) {
497
- console.log('Auto-fixed:\n');
498
- for (const f of fixed) {
499
- console.log(' [OK] ' + f);
500
- }
501
- console.log('');
502
- }
503
- if (warnings.length > 0) {
504
- for (const w of warnings) {
505
- console.log(' [!] ' + w);
506
- }
507
- console.log('');
508
- }
509
- }
510
- }
511
350
  exports.default = init;
512
351
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
@@ -61,6 +61,6 @@ import type { ScanOptions, ScanProblems } from '../types/index.js';
61
61
  /**
62
62
  * Main scan function
63
63
  */
64
- export declare function scan(options?: ScanOptions): Promise<ScanProblems>;
64
+ export declare function scan(options?: ScanOptions, _isRerun?: boolean): Promise<ScanProblems>;
65
65
  export default scan;
66
66
  //# sourceMappingURL=scan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../src/cli/scan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AASH,OAAO,KAAK,EAA2C,WAAW,EAAE,YAAY,EAAY,MAAM,mBAAmB,CAAC;AAiWtH;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,CA6J3E;AAED,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../src/cli/scan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0DG;AASH,OAAO,KAAK,EAA2C,WAAW,EAAE,YAAY,EAAY,MAAM,mBAAmB,CAAC;AA+YtH;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,GAAE,WAAgB,EAAE,QAAQ,UAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,CA6L7F;AAED,eAAe,IAAI,CAAC"}