@factiii/stack 0.1.2 → 0.1.8

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 (89) hide show
  1. package/bin/factiii +13 -0
  2. package/dist/cli/pr-check.d.ts +24 -0
  3. package/dist/cli/pr-check.d.ts.map +1 -0
  4. package/dist/cli/pr-check.js +153 -0
  5. package/dist/cli/pr-check.js.map +1 -0
  6. package/dist/plugins/addons/server-mode/index.d.ts.map +1 -1
  7. package/dist/plugins/addons/server-mode/index.js +3 -0
  8. package/dist/plugins/addons/server-mode/index.js.map +1 -1
  9. package/dist/plugins/addons/server-mode/scanfix/mac.d.ts +20 -3
  10. package/dist/plugins/addons/server-mode/scanfix/mac.d.ts.map +1 -1
  11. package/dist/plugins/addons/server-mode/scanfix/mac.js +304 -177
  12. package/dist/plugins/addons/server-mode/scanfix/mac.js.map +1 -1
  13. package/dist/plugins/addons/server-mode/scanfix/tart.d.ts +19 -0
  14. package/dist/plugins/addons/server-mode/scanfix/tart.d.ts.map +1 -0
  15. package/dist/plugins/addons/server-mode/scanfix/tart.js +350 -0
  16. package/dist/plugins/addons/server-mode/scanfix/tart.js.map +1 -0
  17. package/dist/plugins/pipelines/aws/configs/free-tier.d.ts.map +1 -1
  18. package/dist/plugins/pipelines/aws/configs/free-tier.js +3 -38
  19. package/dist/plugins/pipelines/aws/configs/free-tier.js.map +1 -1
  20. package/dist/plugins/pipelines/aws/index.d.ts +4 -1
  21. package/dist/plugins/pipelines/aws/index.d.ts.map +1 -1
  22. package/dist/plugins/pipelines/aws/index.js +101 -29
  23. package/dist/plugins/pipelines/aws/index.js.map +1 -1
  24. package/dist/plugins/pipelines/aws/scanfix/credentials.d.ts +9 -0
  25. package/dist/plugins/pipelines/aws/scanfix/credentials.d.ts.map +1 -0
  26. package/dist/plugins/pipelines/aws/scanfix/credentials.js +196 -0
  27. package/dist/plugins/pipelines/aws/scanfix/credentials.js.map +1 -0
  28. package/dist/plugins/pipelines/aws/scanfix/db-replication.d.ts +13 -0
  29. package/dist/plugins/pipelines/aws/scanfix/db-replication.d.ts.map +1 -0
  30. package/dist/plugins/pipelines/aws/scanfix/db-replication.js +136 -0
  31. package/dist/plugins/pipelines/aws/scanfix/db-replication.js.map +1 -0
  32. package/dist/plugins/pipelines/aws/scanfix/ec2.d.ts +10 -0
  33. package/dist/plugins/pipelines/aws/scanfix/ec2.d.ts.map +1 -0
  34. package/dist/plugins/pipelines/aws/scanfix/ec2.js +279 -0
  35. package/dist/plugins/pipelines/aws/scanfix/ec2.js.map +1 -0
  36. package/dist/plugins/pipelines/aws/scanfix/ecr.d.ts +9 -0
  37. package/dist/plugins/pipelines/aws/scanfix/ecr.d.ts.map +1 -0
  38. package/dist/plugins/pipelines/aws/scanfix/ecr.js +100 -0
  39. package/dist/plugins/pipelines/aws/scanfix/ecr.js.map +1 -0
  40. package/dist/plugins/pipelines/aws/scanfix/iam.d.ts +10 -0
  41. package/dist/plugins/pipelines/aws/scanfix/iam.d.ts.map +1 -0
  42. package/dist/plugins/pipelines/aws/scanfix/iam.js +255 -0
  43. package/dist/plugins/pipelines/aws/scanfix/iam.js.map +1 -0
  44. package/dist/plugins/pipelines/aws/scanfix/rds.d.ts +10 -0
  45. package/dist/plugins/pipelines/aws/scanfix/rds.d.ts.map +1 -0
  46. package/dist/plugins/pipelines/aws/scanfix/rds.js +261 -0
  47. package/dist/plugins/pipelines/aws/scanfix/rds.js.map +1 -0
  48. package/dist/plugins/pipelines/aws/scanfix/s3.d.ts +9 -0
  49. package/dist/plugins/pipelines/aws/scanfix/s3.d.ts.map +1 -0
  50. package/dist/plugins/pipelines/aws/scanfix/s3.js +134 -0
  51. package/dist/plugins/pipelines/aws/scanfix/s3.js.map +1 -0
  52. package/dist/plugins/pipelines/aws/scanfix/security-groups.d.ts +10 -0
  53. package/dist/plugins/pipelines/aws/scanfix/security-groups.d.ts.map +1 -0
  54. package/dist/plugins/pipelines/aws/scanfix/security-groups.js +225 -0
  55. package/dist/plugins/pipelines/aws/scanfix/security-groups.js.map +1 -0
  56. package/dist/plugins/pipelines/aws/scanfix/ses.d.ts +9 -0
  57. package/dist/plugins/pipelines/aws/scanfix/ses.d.ts.map +1 -0
  58. package/dist/plugins/pipelines/aws/scanfix/ses.js +174 -0
  59. package/dist/plugins/pipelines/aws/scanfix/ses.js.map +1 -0
  60. package/dist/plugins/pipelines/aws/scanfix/vpc.d.ts +9 -0
  61. package/dist/plugins/pipelines/aws/scanfix/vpc.d.ts.map +1 -0
  62. package/dist/plugins/pipelines/aws/scanfix/vpc.js +237 -0
  63. package/dist/plugins/pipelines/aws/scanfix/vpc.js.map +1 -0
  64. package/dist/plugins/pipelines/aws/utils/aws-helpers.d.ts +50 -0
  65. package/dist/plugins/pipelines/aws/utils/aws-helpers.d.ts.map +1 -0
  66. package/dist/plugins/pipelines/aws/utils/aws-helpers.js +137 -0
  67. package/dist/plugins/pipelines/aws/utils/aws-helpers.js.map +1 -0
  68. package/dist/plugins/pipelines/factiii/index.d.ts.map +1 -1
  69. package/dist/plugins/pipelines/factiii/index.js +11 -0
  70. package/dist/plugins/pipelines/factiii/index.js.map +1 -1
  71. package/dist/plugins/pipelines/factiii/pr-check.d.ts +35 -0
  72. package/dist/plugins/pipelines/factiii/pr-check.d.ts.map +1 -0
  73. package/dist/plugins/pipelines/factiii/pr-check.js +202 -0
  74. package/dist/plugins/pipelines/factiii/pr-check.js.map +1 -0
  75. package/dist/plugins/pipelines/factiii/utils/workflows.d.ts.map +1 -1
  76. package/dist/plugins/pipelines/factiii/utils/workflows.js +1 -0
  77. package/dist/plugins/pipelines/factiii/utils/workflows.js.map +1 -1
  78. package/dist/plugins/pipelines/factiii/workflows/factiii-cicd-staging.yml +8 -3
  79. package/dist/plugins/pipelines/factiii/workflows/factiii-pr-check.yml +103 -0
  80. package/dist/plugins/servers/mac/staging.d.ts.map +1 -1
  81. package/dist/plugins/servers/mac/staging.js +304 -52
  82. package/dist/plugins/servers/mac/staging.js.map +1 -1
  83. package/dist/types/config.d.ts +11 -0
  84. package/dist/types/config.d.ts.map +1 -1
  85. package/dist/utils/github-status.d.ts +39 -0
  86. package/dist/utils/github-status.d.ts.map +1 -0
  87. package/dist/utils/github-status.js +172 -0
  88. package/dist/utils/github-status.js.map +1 -0
  89. package/package.json +3 -3
@@ -49,6 +49,7 @@ const js_yaml_1 = __importDefault(require("js-yaml"));
49
49
  const ssh_helper_js_1 = require("../../../utils/ssh-helper.js");
50
50
  const config_helpers_js_1 = require("../../../utils/config-helpers.js");
51
51
  const index_js_1 = require("../../../scripts/index.js");
52
+ const github_status_js_1 = require("../../../utils/github-status.js");
52
53
  /**
53
54
  * Execute a command on a remote server via SSH
54
55
  */
@@ -559,6 +560,160 @@ async function updateComposeForStagingImage(envConfig, config) {
559
560
  await sshExecCommand(envConfig, `cat > ~/.factiii/docker-compose.yml << 'EOF'\n${updatedContent}\nEOF`);
560
561
  }
561
562
  }
563
+ // ============================================================
564
+ // MIGRATION / BACKUP / ROLLBACK HELPERS
565
+ // ============================================================
566
+ // Reusable for staging and production deploy flows.
567
+ // These run LOCALLY on whatever machine they're called on.
568
+ // ============================================================
569
+ const DEPLOY_PATH_PREFIX = '/opt/homebrew/bin:/usr/local/bin:';
570
+ /**
571
+ * Get DATABASE_URL from the stage-specific .env file
572
+ */
573
+ function getDatabaseUrl(repoDir, stage) {
574
+ const envFile = stage === 'dev' ? '.env' : '.env.' + stage;
575
+ const envPath = path.join(repoDir, envFile);
576
+ if (!fs.existsSync(envPath))
577
+ return process.env.DATABASE_URL ?? null;
578
+ try {
579
+ const content = fs.readFileSync(envPath, 'utf8');
580
+ for (const line of content.split('\n')) {
581
+ const trimmed = line.trim();
582
+ if (trimmed.startsWith('DATABASE_URL=')) {
583
+ return trimmed.slice('DATABASE_URL='.length).replace(/^["']|["']$/g, '');
584
+ }
585
+ }
586
+ }
587
+ catch {
588
+ // Ignore
589
+ }
590
+ return process.env.DATABASE_URL ?? null;
591
+ }
592
+ /**
593
+ * Check if there are pending Prisma migrations
594
+ * Returns true if there ARE pending migrations that need to run
595
+ */
596
+ function checkPendingMigrations(repoDir, pathEnv) {
597
+ try {
598
+ const output = (0, child_process_1.execSync)('npx prisma migrate status', {
599
+ cwd: repoDir,
600
+ encoding: 'utf8',
601
+ stdio: ['pipe', 'pipe', 'pipe'],
602
+ shell: '/bin/bash',
603
+ env: { ...process.env, PATH: pathEnv },
604
+ });
605
+ // Prisma outputs "Following migration(s) have not yet been applied:" when pending
606
+ // Or "Database schema is up to date!" when no pending migrations
607
+ if (output.includes('have not yet been applied') || output.includes('not yet been applied')) {
608
+ return true;
609
+ }
610
+ return false;
611
+ }
612
+ catch (error) {
613
+ // migrate status exits with non-zero if there are pending migrations or issues
614
+ const errOutput = error instanceof Error ? error.stderr ?? '' : '';
615
+ if (typeof errOutput === 'string' && (errOutput.includes('have not yet been applied') || errOutput.includes('not yet been applied'))) {
616
+ return true;
617
+ }
618
+ // If we can't determine, assume there might be migrations (safer)
619
+ console.log(' ⚠️ Could not check migration status, will attempt migrate deploy');
620
+ return true;
621
+ }
622
+ }
623
+ /**
624
+ * Create a .tar.gz database backup using pg_dump
625
+ * Returns the backup file path or null on failure
626
+ */
627
+ function backupDatabase(dbUrl, stage, backupDir) {
628
+ const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
629
+ const backupPath = path.join(backupDir, 'backup-' + stage + '-' + timestamp + '.tar.gz');
630
+ try {
631
+ // Ensure backup dir exists
632
+ if (!fs.existsSync(backupDir)) {
633
+ fs.mkdirSync(backupDir, { recursive: true });
634
+ }
635
+ console.log(' 💾 Creating database backup: ' + backupPath);
636
+ (0, child_process_1.execSync)('pg_dump -Ft "' + dbUrl + '" > "' + backupPath + '"', {
637
+ stdio: ['pipe', 'pipe', 'pipe'],
638
+ shell: '/bin/bash',
639
+ env: {
640
+ ...process.env,
641
+ PATH: DEPLOY_PATH_PREFIX + (process.env.PATH ?? ''),
642
+ },
643
+ });
644
+ // Verify the backup file was created and has content
645
+ if (fs.existsSync(backupPath) && fs.statSync(backupPath).size > 0) {
646
+ console.log(' ✅ Database backup created');
647
+ return backupPath;
648
+ }
649
+ console.log(' ⚠️ Backup file is empty or missing');
650
+ return null;
651
+ }
652
+ catch (error) {
653
+ const msg = error instanceof Error ? error.message : String(error);
654
+ console.log(' ❌ Database backup failed: ' + msg);
655
+ return null;
656
+ }
657
+ }
658
+ /**
659
+ * Restore database from a .tar.gz backup
660
+ * Returns true on success
661
+ */
662
+ function restoreDatabase(dbUrl, backupPath) {
663
+ try {
664
+ console.log(' 🔄 Restoring database from backup: ' + backupPath);
665
+ (0, child_process_1.execSync)('pg_restore --clean --if-exists -d "' + dbUrl + '" "' + backupPath + '"', {
666
+ stdio: 'inherit',
667
+ shell: '/bin/bash',
668
+ env: {
669
+ ...process.env,
670
+ PATH: DEPLOY_PATH_PREFIX + (process.env.PATH ?? ''),
671
+ },
672
+ });
673
+ console.log(' ✅ Database restored from backup');
674
+ return true;
675
+ }
676
+ catch (error) {
677
+ const msg = error instanceof Error ? error.message : String(error);
678
+ console.log(' ❌ Database restore failed: ' + msg);
679
+ return false;
680
+ }
681
+ }
682
+ /**
683
+ * Health check containers after deploy
684
+ * Waits a few seconds then checks if containers are running
685
+ * Returns true if containers are healthy
686
+ */
687
+ function healthCheckContainers(containerName, factiiiDir, pathEnv) {
688
+ try {
689
+ // Wait for containers to stabilize
690
+ (0, child_process_1.execSync)('sleep 5', { stdio: 'pipe', shell: '/bin/bash' });
691
+ const output = (0, child_process_1.execSync)('docker ps --filter name=' + containerName + ' --format "{{.Status}}"', {
692
+ cwd: factiiiDir,
693
+ encoding: 'utf8',
694
+ stdio: ['pipe', 'pipe', 'pipe'],
695
+ shell: '/bin/bash',
696
+ env: { ...process.env, PATH: pathEnv },
697
+ });
698
+ // Check for running containers (Status contains "Up")
699
+ if (!output.trim()) {
700
+ console.log(' ❌ No container found with name: ' + containerName);
701
+ return false;
702
+ }
703
+ const lines = output.trim().split('\n');
704
+ for (const line of lines) {
705
+ if (line.includes('Exited') || line.includes('Restarting')) {
706
+ console.log(' ❌ Container unhealthy: ' + line);
707
+ return false;
708
+ }
709
+ }
710
+ return true;
711
+ }
712
+ catch {
713
+ console.log(' ⚠️ Could not check container health');
714
+ return false;
715
+ }
716
+ }
562
717
  /**
563
718
  * Deploy to staging environment
564
719
  *
@@ -575,17 +730,25 @@ async function deployStaging(config, environment = 'staging') {
575
730
  if (!envConfig?.domain) {
576
731
  return { success: false, error: `${environment} domain not configured` };
577
732
  }
578
- console.log(` 🚀 Deploying on staging (${envConfig.domain})...`);
733
+ console.log(' 🚀 Deploying on staging (' + envConfig.domain + ')...');
734
+ // GitHub status reporting
735
+ const sha = process.env.COMMIT_HASH ?? process.env.GITHUB_SHA ?? '';
736
+ if (sha) {
737
+ await (0, github_status_js_1.reportCommitStatus)(sha, 'pending', 'Deploying to staging...', 'factiii/deploy');
738
+ }
579
739
  try {
580
740
  const repoName = config.name ?? 'app';
581
- const repoDir = `~/.factiii/${repoName}`;
741
+ const repoDir = '~/.factiii/' + repoName;
582
742
  // Determine if we're running ON the server or remotely
583
- // When GITHUB_ACTIONS=true, we're executing on the server itself
584
- const isOnServer = process.env.GITHUB_ACTIONS === 'true';
585
- console.log(` 📍 Deployment mode: ${isOnServer ? 'on-server' : 'remote'}`);
743
+ // When GITHUB_ACTIONS=true or FACTIII_ON_SERVER=true, we're executing on the server itself
744
+ const isOnServer = process.env.GITHUB_ACTIONS === 'true' || process.env.FACTIII_ON_SERVER === 'true';
745
+ console.log(' 📍 Deployment mode: ' + (isOnServer ? 'on-server' : 'remote'));
746
+ const pathEnv = DEPLOY_PATH_PREFIX + (process.env.PATH ?? '');
747
+ let backupPath = null;
586
748
  if (isOnServer) {
587
749
  // We're on the server - run commands directly
588
750
  const factiiiDir = path.join(process.env.HOME ?? '/Users/jon', '.factiii');
751
+ const expandedRepoDir = repoDir.replace('~', process.env.HOME ?? '/Users/jon');
589
752
  // Step 1: Regenerate unified docker-compose.yml
590
753
  console.log(' 🔄 Regenerating unified docker-compose.yml...');
591
754
  const repos = (0, index_js_1.scanRepos)();
@@ -601,6 +764,8 @@ async function deployStaging(config, environment = 'staging') {
601
764
  // Step 3: Deploy using unified docker-compose.yml
602
765
  const unifiedCompose = path.join(factiiiDir, 'docker-compose.yml');
603
766
  if (!fs.existsSync(unifiedCompose)) {
767
+ if (sha)
768
+ await (0, github_status_js_1.reportCommitStatus)(sha, 'failure', 'docker-compose.yml not found', 'factiii/deploy');
604
769
  return {
605
770
  success: false,
606
771
  error: 'Unified docker-compose.yml not found. Run generate-all.js first.',
@@ -608,35 +773,55 @@ async function deployStaging(config, environment = 'staging') {
608
773
  }
609
774
  // Step 4: Start postgres first and wait for it to be ready
610
775
  console.log(' 🔄 Starting postgres container...');
611
- (0, child_process_1.execSync)(`cd ${factiiiDir} && docker compose up -d postgres`, {
776
+ (0, child_process_1.execSync)('cd ' + factiiiDir + ' && docker compose up -d postgres', {
612
777
  stdio: 'inherit',
613
778
  shell: '/bin/bash',
614
- env: {
615
- ...process.env,
616
- PATH: `/opt/homebrew/bin:/usr/local/bin:${process.env.PATH}`,
617
- },
779
+ env: { ...process.env, PATH: pathEnv },
618
780
  });
619
- // Wait for postgres to be ready
620
781
  console.log(' ⏳ Waiting for postgres to be ready...');
621
- (0, child_process_1.execSync)(`sleep 3`, { stdio: 'inherit', shell: '/bin/bash' });
622
- // Step 5: Run Prisma migrations if prisma schema exists
623
- const expandedRepoDir = repoDir.replace('~', process.env.HOME ?? '/Users/jon');
782
+ (0, child_process_1.execSync)('sleep 3', { stdio: 'inherit', shell: '/bin/bash' });
783
+ // Step 5: Check and run Prisma migrations with backup/rollback
624
784
  const prismaSchemaPath = path.join(expandedRepoDir, config.prisma_schema ?? 'prisma/schema.prisma');
625
785
  if (fs.existsSync(prismaSchemaPath)) {
626
- console.log(' 📦 Running Prisma migrations...');
627
- try {
628
- (0, child_process_1.execSync)(`cd ${expandedRepoDir} && npx prisma migrate deploy`, {
629
- stdio: 'inherit',
630
- shell: '/bin/bash',
631
- env: {
632
- ...process.env,
633
- PATH: `/opt/homebrew/bin:/usr/local/bin:${process.env.PATH}`,
634
- },
635
- });
636
- console.log(' ✅ Prisma migrations complete');
786
+ console.log(' 📋 Checking migration status...');
787
+ const hasPending = checkPendingMigrations(expandedRepoDir, pathEnv);
788
+ if (hasPending) {
789
+ console.log(' 📦 Pending migrations detected');
790
+ // Step 5a: Backup database before migration
791
+ const dbUrl = getDatabaseUrl(expandedRepoDir, 'staging');
792
+ if (dbUrl) {
793
+ backupPath = backupDatabase(dbUrl, 'staging', factiiiDir);
794
+ if (!backupPath) {
795
+ console.log(' ⚠️ Could not create backup, proceeding with migration anyway...');
796
+ }
797
+ }
798
+ else {
799
+ console.log(' ⚠️ DATABASE_URL not found, skipping backup');
800
+ }
801
+ // Step 5b: Run migrations
802
+ console.log(' 📦 Running Prisma migrations...');
803
+ try {
804
+ (0, child_process_1.execSync)('cd ' + expandedRepoDir + ' && npx prisma migrate deploy', {
805
+ stdio: 'inherit',
806
+ shell: '/bin/bash',
807
+ env: { ...process.env, PATH: pathEnv },
808
+ });
809
+ console.log(' ✅ Prisma migrations complete');
810
+ }
811
+ catch (error) {
812
+ // Step 5c: Migration failed - restore backup
813
+ console.log(' ❌ Prisma migration failed');
814
+ if (backupPath && dbUrl) {
815
+ restoreDatabase(dbUrl, backupPath);
816
+ }
817
+ const msg = error instanceof Error ? error.message : String(error);
818
+ if (sha)
819
+ await (0, github_status_js_1.reportCommitStatus)(sha, 'failure', 'Migration failed', 'factiii/deploy');
820
+ return { success: false, error: 'Migration failed: ' + msg };
821
+ }
637
822
  }
638
- catch (error) {
639
- console.log(' ⚠️ Prisma migration failed, continuing anyway...');
823
+ else {
824
+ console.log(' No pending migrations');
640
825
  }
641
826
  }
642
827
  // Step 6: Manage SSL certificates
@@ -645,14 +830,33 @@ async function deployStaging(config, environment = 'staging') {
645
830
  await setupCertbotRenewal(envConfig);
646
831
  // Step 7: Start all containers
647
832
  console.log(' 🚀 Starting containers with unified docker-compose.yml...');
648
- (0, child_process_1.execSync)(`cd ${factiiiDir} && docker compose up -d`, {
833
+ (0, child_process_1.execSync)('cd ' + factiiiDir + ' && docker compose up -d', {
649
834
  stdio: 'inherit',
650
835
  shell: '/bin/bash',
651
- env: {
652
- ...process.env,
653
- PATH: `/opt/homebrew/bin:/usr/local/bin:${process.env.PATH}`,
654
- },
836
+ env: { ...process.env, PATH: pathEnv },
655
837
  });
838
+ // Step 8: Health check
839
+ console.log(' 🏥 Running health check...');
840
+ const containerName = repoName;
841
+ const isHealthy = healthCheckContainers(containerName, factiiiDir, pathEnv);
842
+ if (!isHealthy) {
843
+ console.log(' ❌ Containers are unhealthy after deploy');
844
+ // Restore backup if we have one
845
+ if (backupPath) {
846
+ const dbUrl = getDatabaseUrl(expandedRepoDir, 'staging');
847
+ if (dbUrl) {
848
+ restoreDatabase(dbUrl, backupPath);
849
+ }
850
+ }
851
+ if (sha)
852
+ await (0, github_status_js_1.reportCommitStatus)(sha, 'failure', 'Deploy failed - containers unhealthy', 'factiii/deploy');
853
+ return { success: false, error: 'Containers unhealthy after deploy' };
854
+ }
855
+ // Step 9: Cleanup backup on success
856
+ if (backupPath && fs.existsSync(backupPath)) {
857
+ console.log(' 🗑️ Removing backup (deploy succeeded)');
858
+ fs.unlinkSync(backupPath);
859
+ }
656
860
  }
657
861
  else {
658
862
  // We're remote - SSH to the server
@@ -670,35 +874,83 @@ async function deployStaging(config, environment = 'staging') {
670
874
  await updateComposeForStagingImage(envConfig, config);
671
875
  // Step 3: Start postgres first and wait
672
876
  console.log(' 🔄 Starting postgres container on remote server...');
673
- await sshExecCommand(envConfig, `export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH" && \
674
- cd ~/.factiii && \
675
- docker compose up -d postgres && \
676
- sleep 3`);
677
- // Step 4: Run Prisma migrations if prisma schema exists
678
- console.log(' 📦 Running Prisma migrations on remote server...');
679
- await sshExecCommand(envConfig, `export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH" && \
680
- if [ -f ${repoDir}/${config.prisma_schema ?? 'prisma/schema.prisma'} ]; then \
681
- cd ${repoDir} && npx prisma migrate deploy || echo "⚠️ Prisma migration failed, continuing anyway..."; \
682
- fi`);
877
+ await sshExecCommand(envConfig, 'export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH" && ' +
878
+ 'cd ~/.factiii && ' +
879
+ 'docker compose up -d postgres && ' +
880
+ 'sleep 3');
881
+ // Step 4: Check migrations, backup, migrate, deploy - all via SSH
882
+ const prismaSchema = config.prisma_schema ?? 'prisma/schema.prisma';
883
+ console.log(' 📋 Checking migrations and deploying on remote server...');
884
+ await sshExecCommand(envConfig, 'export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH" && ' +
885
+ 'REPO_DIR=' + repoDir + ' && ' +
886
+ 'FACTIII_DIR=~/.factiii && ' +
887
+ 'PRISMA_SCHEMA=$REPO_DIR/' + prismaSchema + ' && ' +
888
+ 'if [ -f "$PRISMA_SCHEMA" ]; then ' +
889
+ ' echo " Checking migration status..." && ' +
890
+ ' cd $REPO_DIR && ' +
891
+ ' MIGRATE_OUTPUT=$(npx prisma migrate status 2>&1 || true) && ' +
892
+ ' if echo "$MIGRATE_OUTPUT" | grep -q "have not yet been applied"; then ' +
893
+ ' echo " Pending migrations detected" && ' +
894
+ ' ENV_FILE=$REPO_DIR/.env.staging && ' +
895
+ ' if [ -f "$ENV_FILE" ]; then ' +
896
+ ' DB_URL=$(grep "^DATABASE_URL=" "$ENV_FILE" | sed "s/^DATABASE_URL=//" | sed "s/^[\\\"\\x27]//;s/[\\\"\\x27]$//") && ' +
897
+ ' if [ -n "$DB_URL" ]; then ' +
898
+ ' BACKUP_FILE=$FACTIII_DIR/backup-staging-$(date +%Y-%m-%dT%H-%M-%S).tar.gz && ' +
899
+ ' echo " Creating database backup..." && ' +
900
+ ' pg_dump -Ft "$DB_URL" > "$BACKUP_FILE" && ' +
901
+ ' echo " Backup created: $BACKUP_FILE" && ' +
902
+ ' echo " Running migrations..." && ' +
903
+ ' if npx prisma migrate deploy; then ' +
904
+ ' echo " Migrations complete" && ' +
905
+ ' rm -f "$BACKUP_FILE" && ' +
906
+ ' echo " Backup cleaned up"; ' +
907
+ ' else ' +
908
+ ' echo " Migration failed - restoring backup..." && ' +
909
+ ' pg_restore --clean --if-exists -d "$DB_URL" "$BACKUP_FILE" && ' +
910
+ ' echo " Database restored" && ' +
911
+ ' exit 1; ' +
912
+ ' fi; ' +
913
+ ' else echo " DATABASE_URL not found, skipping backup"; npx prisma migrate deploy || true; fi; ' +
914
+ ' else echo " .env.staging not found, skipping backup"; npx prisma migrate deploy || true; fi; ' +
915
+ ' else ' +
916
+ ' echo " No pending migrations"; ' +
917
+ ' fi; ' +
918
+ 'fi');
683
919
  // Step 5: Manage SSL certificates
684
920
  console.log(' 🔐 Managing SSL certificates on remote server...');
685
921
  await runCertbot(envConfig, config);
686
922
  await setupCertbotRenewal(envConfig);
687
- // Step 6: Deploy using unified docker-compose.yml
688
- console.log(' 🚀 Starting containers with unified docker-compose.yml on remote server...');
689
- await sshExecCommand(envConfig, `export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH" && \
690
- if [ ! -f ~/.factiii/docker-compose.yml ]; then \
691
- echo "❌ Unified docker-compose.yml not found. Run generate-all.js first." && \
692
- exit 1; \
693
- fi && \
694
- cd ~/.factiii && \
695
- docker compose up -d`);
923
+ // Step 6: Deploy and health check
924
+ console.log(' 🚀 Starting containers on remote server...');
925
+ await sshExecCommand(envConfig, 'export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH" && ' +
926
+ 'if [ ! -f ~/.factiii/docker-compose.yml ]; then ' +
927
+ ' echo "docker-compose.yml not found" && exit 1; ' +
928
+ 'fi && ' +
929
+ 'cd ~/.factiii && ' +
930
+ 'docker compose up -d && ' +
931
+ 'sleep 5 && ' +
932
+ 'echo "Health check..." && ' +
933
+ 'docker ps --filter name=' + repoName + ' --format "{{.Status}}" | ' +
934
+ 'while read status; do ' +
935
+ ' if echo "$status" | grep -qE "Exited|Restarting"; then ' +
936
+ ' echo "Container unhealthy: $status" && exit 1; ' +
937
+ ' fi; ' +
938
+ 'done && ' +
939
+ 'echo "Containers healthy"');
940
+ }
941
+ // Report success to GitHub
942
+ if (sha) {
943
+ await (0, github_status_js_1.reportCommitStatus)(sha, 'success', 'Staging deploy succeeded', 'factiii/deploy');
696
944
  }
697
945
  return { success: true, message: 'Staging deployment complete' };
698
946
  }
699
947
  catch (error) {
700
948
  const errorMessage = error instanceof Error ? error.message : String(error);
701
- console.error(` ❌ Deployment failed: ${errorMessage}`);
949
+ console.error(' ❌ Deployment failed: ' + errorMessage);
950
+ // Report failure to GitHub
951
+ if (sha) {
952
+ await (0, github_status_js_1.reportCommitStatus)(sha, 'failure', 'Staging deploy failed', 'factiii/deploy');
953
+ }
702
954
  return {
703
955
  success: false,
704
956
  error: errorMessage,
@@ -1 +1 @@
1
- {"version":3,"file":"staging.js","sourceRoot":"","sources":["../../../../src/plugins/servers/mac/staging.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"staging.js","sourceRoot":"","sources":["../../../../src/plugins/servers/mac/staging.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,17 @@ export interface FactiiiAutoConfig {
63
63
  prisma_schema?: string;
64
64
  prisma_version?: string;
65
65
  aws_cli_installed?: boolean;
66
+ aws_vpc_id?: string;
67
+ aws_subnet_public_id?: string;
68
+ aws_subnet_private_ids?: string[];
69
+ aws_sg_ec2_id?: string;
70
+ aws_sg_rds_id?: string;
71
+ aws_ec2_instance_id?: string;
72
+ aws_ec2_public_ip?: string;
73
+ aws_rds_endpoint?: string;
74
+ aws_rds_db_name?: string;
75
+ aws_s3_bucket?: string;
76
+ aws_ecr_registry?: string;
66
77
  }
67
78
  /**
68
79
  * Schema field definition for config validation
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/types/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,GAAG,cAAc,GAAG,QAAQ,CAAC;AAEtF;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAEhC,MAAM,EAAE,cAAc,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IAGf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,WAAW,CAAC,EAAE,OAAO,CAAC;IAGtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,KAAK,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;IACzD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAIhB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACnD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAE5B,IAAI,EAAE,MAAM,CAAC;IAGb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAGhC,OAAO,CAAC,EAAE;QACR,UAAU,EAAE,MAAM,CAAC;QACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;KAC9B,CAAC;IAMF,CAAC,eAAe,EAAE,MAAM,GAAG,GAAG,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAG5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,EAAE,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,eAAe,CAAC;IAC3B,iBAAiB,EAAE,uBAAuB,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1D,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * GitHub Status Reporting Utility
3
+ *
4
+ * Reports commit statuses and PR comments for CI/CD (e.g. pr-check).
5
+ * Uses Octokit (already a dependency) for GitHub API.
6
+ *
7
+ * Auth: GITHUB_TOKEN environment variable
8
+ */
9
+ export type CommitStatusState = 'pending' | 'success' | 'failure' | 'error';
10
+ export interface RepoInfo {
11
+ owner: string;
12
+ repo: string;
13
+ }
14
+ /**
15
+ * Get repo info from git remote (reuses GitHubSecretsStore pattern)
16
+ */
17
+ export declare function getRepoInfo(): RepoInfo | null;
18
+ /**
19
+ * Report commit status to GitHub (appears on PR/commit in GitHub UI)
20
+ *
21
+ * @param sha - Commit SHA
22
+ * @param state - pending | success | failure | error
23
+ * @param description - Short status description
24
+ * @param context - Status context (e.g. 'factiii/pr-check', 'factiii/server-build')
25
+ */
26
+ export declare function reportCommitStatus(sha: string, state: CommitStatusState, description: string, context?: string): Promise<boolean>;
27
+ /**
28
+ * Post a comment on a pull request
29
+ *
30
+ * @param prNumber - Pull request number
31
+ * @param body - Comment body (Markdown)
32
+ */
33
+ export declare function reportPRComment(prNumber: number, body: string): Promise<boolean>;
34
+ /**
35
+ * Get current PR number from environment (when running in GitHub Actions)
36
+ * or from gh CLI
37
+ */
38
+ export declare function getPRNumber(): number | null;
39
+ //# sourceMappingURL=github-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-status.d.ts","sourceRoot":"","sources":["../../src/utils/github-status.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAE5E,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,QAAQ,GAAG,IAAI,CAE7C;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,iBAAiB,EACxB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,MAA2B,GACnC,OAAO,CAAC,OAAO,CAAC,CA6BlB;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA2BtF;AAED;;;GAGG;AACH,wBAAgB,WAAW,IAAI,MAAM,GAAG,IAAI,CAsC3C"}