clouddreamai-cicd-setup 1.5.49 → 1.5.50

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.
@@ -53,6 +53,18 @@ export declare class PromptCollector {
53
53
  * 收集数据库迁移配置
54
54
  */
55
55
  private collectMigrationConfig;
56
+ /**
57
+ * 解析 .env 文件内容为键值对
58
+ */
59
+ private parseEnvContent;
60
+ /**
61
+ * 查找 .env 中的数据库变量(支持多种命名方式)
62
+ */
63
+ private findDbVars;
64
+ /**
65
+ * 验证数据库配置与 .env 文件的一致性
66
+ */
67
+ private validateDbConfigConsistency;
56
68
  /**
57
69
  * 收集环境变量文件(必需)
58
70
  */
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAA6C,MAAM,eAAe,CAAC;AAgCtF;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAsB;;IAMnC;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAKhB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAuF1C;;OAEG;YACW,mBAAmB;IAiCjC;;OAEG;YACW,oBAAoB;IA0KlC;;OAEG;YACW,mBAAmB;IAyBjC;;OAEG;YACW,kBAAkB;IAsBhC;;OAEG;YACW,kBAAkB;IAuGhC;;OAEG;YACW,iBAAiB;IAgB/B;;OAEG;YACW,qBAAqB;IA4DnC;;OAEG;YACW,sBAAsB;IAkCpC;;OAEG;YACW,eAAe;IA4B7B;;OAEG;YACW,WAAW;CAkD1B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,eAAe,CAEvD"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAA6C,MAAM,eAAe,CAAC;AAgCtF;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAsB;;IAMnC;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAKhB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IAuF1C;;OAEG;YACW,mBAAmB;IAiCjC;;OAEG;YACW,oBAAoB;IA0KlC;;OAEG;YACW,mBAAmB;IAyBjC;;OAEG;YACW,kBAAkB;IAsBhC;;OAEG;YACW,kBAAkB;IAqHhC;;OAEG;YACW,iBAAiB;IAgB/B;;OAEG;YACW,qBAAqB;IA4DnC;;OAEG;YACW,sBAAsB;IAkCpC;;OAEG;IACH,OAAO,CAAC,eAAe;IAgBvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAmBlB;;OAEG;IACH,OAAO,CAAC,2BAA2B;IA2BnC;;OAEG;YACW,eAAe;IA0F7B;;OAEG;YACW,WAAW;CAkD1B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,eAAe,CAEvD"}
@@ -488,14 +488,27 @@ class PromptCollector {
488
488
  if (serverHost && sshPassword) {
489
489
  const exists = await this.checkDbUserExists(serverHost, sshPassword, dbType, answers.username);
490
490
  if (exists) {
491
+ // 醒目警告:已存在的用户需要确保密码正确
492
+ console.log('\n ╔════════════════════════════════════════════════════════════════╗');
493
+ console.log(' ║ ⚠️ 警告:数据库用户已存在 ║');
494
+ console.log(' ╠════════════════════════════════════════════════════════════════╣');
495
+ console.log(` ║ 用户 "${answers.username}" 已存在于服务器数据库中`);
496
+ console.log(' ║ ║');
497
+ console.log(' ║ 如果您不知道该用户的密码,请勿使用此用户名! ║');
498
+ console.log(' ║ 错误的密码将导致部署后应用无法连接数据库(502 错误) ║');
499
+ console.log(' ║ ║');
500
+ console.log(' ║ 请确保: ║');
501
+ console.log(` ║ 1. 您输入的密码 "${answers.password}" 是该用户的正确密码`);
502
+ console.log(` ║ 2. .env.dev / .env.prod 文件中的 DB_PASSWORD 与此一致 ║`);
503
+ console.log(' ╚════════════════════════════════════════════════════════════════╝\n');
491
504
  const { action } = await inquirer_1.default.prompt([
492
505
  {
493
506
  type: 'list',
494
507
  name: 'action',
495
- message: `用户 "${answers.username}" 已存在于服务器,如何处理?`,
508
+ message: `如何处理用户 "${answers.username}"?`,
496
509
  choices: [
497
- { name: '复用该用户(确保密码正确)', value: 'reuse' },
498
- { name: '修改用户名', value: 'rename' },
510
+ { name: '✓ 我确认密码正确,继续使用该用户', value: 'reuse' },
511
+ { name: '✎ 修改用户名(将创建新用户)', value: 'rename' },
499
512
  ],
500
513
  },
501
514
  ]);
@@ -512,7 +525,7 @@ class PromptCollector {
512
525
  console.log(` ✓ 将使用新用户名 "${newUsername}",部署时自动创建`);
513
526
  }
514
527
  else {
515
- console.log(` ✓ 将复用已存在的用户 "${answers.username}"`);
528
+ console.log(` ✓ 将复用已存在的用户 "${answers.username}",请确保密码正确`);
516
529
  }
517
530
  }
518
531
  else {
@@ -633,6 +646,66 @@ class PromptCollector {
633
646
  migrationCommand: answers.migrationCommand || 'npm run migration:run',
634
647
  };
635
648
  }
649
+ /**
650
+ * 解析 .env 文件内容为键值对
651
+ */
652
+ parseEnvContent(content) {
653
+ const result = {};
654
+ content.split('\n').forEach(line => {
655
+ const trimmed = line.trim();
656
+ if (trimmed && !trimmed.startsWith('#')) {
657
+ const eqIndex = trimmed.indexOf('=');
658
+ if (eqIndex > 0) {
659
+ const key = trimmed.substring(0, eqIndex).trim();
660
+ const value = trimmed.substring(eqIndex + 1).trim();
661
+ result[key] = value;
662
+ }
663
+ }
664
+ });
665
+ return result;
666
+ }
667
+ /**
668
+ * 查找 .env 中的数据库变量(支持多种命名方式)
669
+ */
670
+ findDbVars(envVars) {
671
+ const usernameKeys = ['DB_USERNAME', 'DB_USER', 'DATABASE_USER', 'POSTGRES_USER', 'MYSQL_USER'];
672
+ const passwordKeys = ['DB_PASSWORD', 'DB_PASS', 'DATABASE_PASSWORD', 'POSTGRES_PASSWORD', 'MYSQL_PASSWORD'];
673
+ const databaseKeys = ['DB_DATABASE', 'DB_NAME', 'DATABASE_NAME', 'POSTGRES_DB', 'MYSQL_DATABASE'];
674
+ const find = (keys) => {
675
+ for (const key of keys) {
676
+ if (envVars[key])
677
+ return envVars[key];
678
+ }
679
+ return undefined;
680
+ };
681
+ return {
682
+ username: find(usernameKeys),
683
+ password: find(passwordKeys),
684
+ database: find(databaseKeys),
685
+ };
686
+ }
687
+ /**
688
+ * 验证数据库配置与 .env 文件的一致性
689
+ */
690
+ validateDbConfigConsistency(envName, envContent, dbConfig) {
691
+ const envVars = this.parseEnvContent(envContent);
692
+ const dbVars = this.findDbVars(envVars);
693
+ const mismatches = [];
694
+ // 如果找不到任何数据库变量,无法自动检查
695
+ if (!dbVars.username && !dbVars.password && !dbVars.database) {
696
+ return { canCheck: false, mismatches: [] };
697
+ }
698
+ if (dbVars.username && dbVars.username !== dbConfig.username) {
699
+ mismatches.push(`用户名: .env="${dbVars.username}" vs 交互输入="${dbConfig.username}"`);
700
+ }
701
+ if (dbVars.password && dbVars.password !== dbConfig.password) {
702
+ mismatches.push(`密码: .env="${dbVars.password}" vs 交互输入="${dbConfig.password}"`);
703
+ }
704
+ if (dbVars.database && dbVars.database !== dbConfig.dbName) {
705
+ mismatches.push(`数据库名: .env="${dbVars.database}" vs 交互输入="${dbConfig.dbName}"`);
706
+ }
707
+ return { canCheck: true, mismatches };
708
+ }
636
709
  /**
637
710
  * 收集环境变量文件(必需)
638
711
  */
@@ -659,6 +732,63 @@ class PromptCollector {
659
732
  console.log('\n提示: 可以从 .env.example 复制并修改\n');
660
733
  process.exit(1);
661
734
  }
735
+ // 验证数据库配置一致性
736
+ if (databaseConfig?.enabled && databaseConfig.dev && databaseConfig.prod) {
737
+ console.log('\n🔍 验证数据库配置一致性...\n');
738
+ const devValidation = this.validateDbConfigConsistency('开发环境', devEnvFile, databaseConfig.dev);
739
+ const prodValidation = this.validateDbConfigConsistency('生产环境', prodEnvFile, databaseConfig.prod);
740
+ // 检查是否有不一致
741
+ const hasMismatch = devValidation.mismatches.length > 0 || prodValidation.mismatches.length > 0;
742
+ // 检查是否无法自动检查
743
+ const cannotCheck = !devValidation.canCheck || !prodValidation.canCheck;
744
+ if (hasMismatch || cannotCheck) {
745
+ console.log('╔════════════════════════════════════════════════════════════════╗');
746
+ if (hasMismatch) {
747
+ console.log('║ ⚠️ 警告:数据库配置不一致 ║');
748
+ console.log('╠════════════════════════════════════════════════════════════════╣');
749
+ console.log('║ 交互阶段填写的数据库配置与 .env 文件中的配置不一致! ║');
750
+ console.log('║ 这可能导致部署后应用无法连接数据库(502 错误) ║');
751
+ console.log('╠════════════════════════════════════════════════════════════════╣');
752
+ if (devValidation.mismatches.length > 0) {
753
+ console.log('║ 开发环境 (.env.dev):');
754
+ devValidation.mismatches.forEach(m => console.log(`║ - ${m}`));
755
+ }
756
+ if (prodValidation.mismatches.length > 0) {
757
+ console.log('║ 生产环境 (.env.prod):');
758
+ prodValidation.mismatches.forEach(m => console.log(`║ - ${m}`));
759
+ }
760
+ }
761
+ // 提示无法自动检查的环境
762
+ if (!devValidation.canCheck || !prodValidation.canCheck) {
763
+ if (hasMismatch)
764
+ console.log('╠════════════════════════════════════════════════════════════════╣');
765
+ console.log('║ ⚠️ 以下环境无法自动检测,请手动确认配置正确: ║');
766
+ if (!devValidation.canCheck)
767
+ console.log('║ - 开发环境 (.env.dev)');
768
+ if (!prodValidation.canCheck)
769
+ console.log('║ - 生产环境 (.env.prod)');
770
+ }
771
+ console.log('╚════════════════════════════════════════════════════════════════╝\n');
772
+ const { action } = await inquirer_1.default.prompt([
773
+ {
774
+ type: 'list',
775
+ name: 'action',
776
+ message: hasMismatch ? '如何处理配置不一致?' : '请确认已手动检查配置',
777
+ choices: [
778
+ { name: '✓ 我已确认配置正确,继续', value: 'continue' },
779
+ { name: '✗ 退出,手动修改后重试', value: 'exit' },
780
+ ],
781
+ },
782
+ ]);
783
+ if (action === 'exit') {
784
+ console.log('\n已退出,请修改配置后重新运行\n');
785
+ process.exit(0);
786
+ }
787
+ }
788
+ else {
789
+ console.log('✓ 数据库配置一致性验证通过\n');
790
+ }
791
+ }
662
792
  return { devEnvFile, prodEnvFile };
663
793
  }
664
794
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/utils/prompts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "clouddreamai-cicd-setup",
3
- "version": "1.5.49",
3
+ "version": "1.5.50",
4
4
  "description": "CloudDreamAI GitLab CI/CD 自动配置工具 - 支持 NestJS/Vue/React 项目的一键 CI/CD 配置",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -606,15 +606,110 @@ else
606
606
  fi
607
607
  fi
608
608
 
609
+ # 健康检测函数
610
+ health_check() {
611
+ echo ""
612
+ echo "╔════════════════════════════════════════════════════════════════╗"
613
+ echo "║ 🔍 部署健康检测 ║"
614
+ echo "╚════════════════════════════════════════════════════════════════╝"
615
+ echo ""
616
+
617
+ local HEALTH_OK=true
618
+ local WARNINGS=""
619
+
620
+ # 1. 检查容器是否运行
621
+ echo "1️⃣ 检查容器状态..."
622
+ if docker ps --format '{{.Names}} {{.Status}}' | grep -q "$APP_NAME.*Up"; then
623
+ echo " ✓ 容器正在运行"
624
+ else
625
+ echo " ❌ 容器未运行"
626
+ docker logs $APP_NAME --tail 30 2>&1 || true
627
+ return 1
628
+ fi
629
+
630
+ # 2. 检查容器日志中的错误
631
+ echo "2️⃣ 检查启动日志..."
632
+ local LOGS=$(docker logs $APP_NAME --tail 50 2>&1)
633
+
634
+ # 检查数据库连接错误
635
+ if echo "$LOGS" | grep -qi "password authentication failed\|ECONNREFUSED\|Unable to connect to the database\|connection refused"; then
636
+ echo " ❌ 检测到数据库连接错误"
637
+ WARNINGS="$WARNINGS\n - 数据库连接失败,请检查 DB_HOST/DB_PASSWORD 配置"
638
+ HEALTH_OK=false
639
+ fi
640
+
641
+ # 检查端口绑定错误
642
+ if echo "$LOGS" | grep -qi "EADDRINUSE\|address already in use"; then
643
+ echo " ❌ 检测到端口冲突"
644
+ WARNINGS="$WARNINGS\n - 端口 $APP_PORT 被占用"
645
+ HEALTH_OK=false
646
+ fi
647
+
648
+ # 检查模块加载错误
649
+ if echo "$LOGS" | grep -qi "Cannot find module\|MODULE_NOT_FOUND"; then
650
+ echo " ❌ 检测到模块加载错误"
651
+ WARNINGS="$WARNINGS\n - 依赖模块缺失,请检查 Dockerfile 构建"
652
+ HEALTH_OK=false
653
+ fi
654
+
655
+ if [ "$HEALTH_OK" = true ]; then
656
+ echo " ✓ 日志无明显错误"
657
+ fi
658
+
659
+ # 3. 检查 HTTP 端口响应
660
+ echo "3️⃣ 检查 HTTP 服务..."
661
+ sleep 3 # 等待服务完全启动
662
+
663
+ local HTTP_CODE=$(curl -s -o /dev/null -w "%{http_code}" --max-time 10 "http://localhost:$APP_PORT" 2>/dev/null || echo "000")
664
+
665
+ if [ "$HTTP_CODE" = "000" ]; then
666
+ echo " ❌ HTTP 服务无响应 (端口 $APP_PORT)"
667
+ WARNINGS="$WARNINGS\n - 应用未监听端口 $APP_PORT,可能启动失败"
668
+ HEALTH_OK=false
669
+ elif [ "$HTTP_CODE" = "502" ] || [ "$HTTP_CODE" = "503" ]; then
670
+ echo " ❌ HTTP 返回 $HTTP_CODE"
671
+ WARNINGS="$WARNINGS\n - 服务返回 $HTTP_CODE,应用可能未正常启动"
672
+ HEALTH_OK=false
673
+ elif [ "$HTTP_CODE" -ge 200 ] && [ "$HTTP_CODE" -lt 400 ]; then
674
+ echo " ✓ HTTP 服务正常 (状态码: $HTTP_CODE)"
675
+ elif [ "$HTTP_CODE" -ge 400 ] && [ "$HTTP_CODE" -lt 500 ]; then
676
+ echo " ✓ HTTP 服务已启动 (状态码: $HTTP_CODE,可能是根路径无路由或需要认证)"
677
+ else
678
+ echo " ⚠️ HTTP 返回 $HTTP_CODE"
679
+ fi
680
+
681
+ # 输出诊断结果
682
+ echo ""
683
+ if [ "$HEALTH_OK" = true ]; then
684
+ echo "╔════════════════════════════════════════════════════════════════╗"
685
+ echo "║ ✅ 部署成功!服务已正常启动 ║"
686
+ echo "╚════════════════════════════════════════════════════════════════╝"
687
+ return 0
688
+ else
689
+ echo "╔════════════════════════════════════════════════════════════════╗"
690
+ echo "║ ⚠️ 部署完成但检测到问题 ║"
691
+ echo "╠════════════════════════════════════════════════════════════════╣"
692
+ echo -e "║ 问题列表:$WARNINGS"
693
+ echo "╠════════════════════════════════════════════════════════════════╣"
694
+ echo "║ 排查建议: ║"
695
+ echo "║ 1. 查看完整日志: docker logs $APP_NAME"
696
+ echo "║ 2. 检查 .env 文件中的数据库配置 ║"
697
+ echo "║ 3. 确认数据库服务正常运行 ║"
698
+ echo "╚════════════════════════════════════════════════════════════════╝"
699
+ echo ""
700
+ echo "最近日志:"
701
+ docker logs $APP_NAME --tail 20 2>&1 || true
702
+ return 1
703
+ fi
704
+ }
705
+
609
706
  # 检查部署状态
610
707
  echo "检查部署状态..."
611
708
  sleep 10
612
- if docker ps --format '{{.Names}} {{.Status}}' | grep -q "$APP_NAME.*Up"; then
613
- echo "部署成功! $APP_NAME 服务已启动"
614
- else
615
- echo "部署失败! 请检查日志"
616
- docker logs $APP_NAME --tail 50 2>&1 || true
617
- exit 1
709
+ if ! health_check; then
710
+ echo ""
711
+ echo "❌ 健康检测未通过,但容器已部署。请根据上述提示排查问题。"
712
+ exit 1
618
713
  fi
619
714
 
620
715
  # 执行数据库迁移(如果启用)