Commit c63c39db by yiling.shen

修复CI/CD配置:添加强制克隆策略和详细调试信息,确保Runner获取最新文件

parent 0d28dd2b
Pipeline #3167 failed in 0 seconds
...@@ -12,13 +12,34 @@ variables: ...@@ -12,13 +12,34 @@ variables:
DB_USER: "callback_user" DB_USER: "callback_user"
DB_PASSWORD: "dev_password_123" DB_PASSWORD: "dev_password_123"
DB_NAME: "callback_system" DB_NAME: "callback_system"
# 强制使用clone策略,确保获取最新代码
GIT_STRATEGY: "clone"
GIT_DEPTH: "0"
# 测试阶段 - 极简版本 # 测试阶段 - 极简版本
test: test:
stage: test stage: test
image: python:3.9-slim image: python:3.9-slim
variables:
GIT_STRATEGY: "clone" # 强制克隆
script: script:
- echo "=========================================="
- echo "开始基础测试..." - echo "开始基础测试..."
- echo "=========================================="
- echo "CI/CD Job运行分支: $CI_COMMIT_REF_NAME"
- echo "当前工作目录: $(pwd)"
- echo "项目目录: $CI_PROJECT_DIR"
- echo "提交SHA: $CI_COMMIT_SHA"
- echo "=========================================="
- echo "列出项目目录所有文件(递归):"
- ls -laR
- echo "=========================================="
- echo "检查迁移脚本目录:"
- ls -la db/migrations/ || echo "迁移目录不存在"
- echo "=========================================="
- echo "检查迁移执行脚本:"
- ls -la run-migrations.sh || echo "迁移脚本不存在"
- echo "=========================================="
- python --version - python --version
- echo "✅ 测试完成" - echo "✅ 测试完成"
only: only:
...@@ -33,6 +54,8 @@ deploy_production: ...@@ -33,6 +54,8 @@ deploy_production:
- docker:dind - docker:dind
variables: variables:
COMPOSE_PROJECT_NAME: "patient_callback_${CI_COMMIT_REF_SLUG}" COMPOSE_PROJECT_NAME: "patient_callback_${CI_COMMIT_REF_SLUG}"
GIT_STRATEGY: "clone" # 强制克隆
GIT_DEPTH: "0"
before_script: before_script:
- apk add --no-cache openssh-client mysql-client - apk add --no-cache openssh-client mysql-client
- eval $(ssh-agent -s) - eval $(ssh-agent -s)
...@@ -42,7 +65,23 @@ deploy_production: ...@@ -42,7 +65,23 @@ deploy_production:
- echo "$PROD_SSH_KNOWN_HOSTS" >> ~/.ssh/known_hosts - echo "$PROD_SSH_KNOWN_HOSTS" >> ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts - chmod 644 ~/.ssh/known_hosts
script: script:
- echo "=========================================="
- echo "开始生产环境部署..." - echo "开始生产环境部署..."
- echo "=========================================="
- echo "CI/CD Job运行分支: $CI_COMMIT_REF_NAME"
- echo "当前工作目录: $(pwd)"
- echo "项目目录: $CI_PROJECT_DIR"
- echo "提交SHA: $CI_COMMIT_SHA"
- echo "=========================================="
- echo "列出项目目录所有文件(递归):"
- ls -laR
- echo "=========================================="
- echo "检查迁移脚本目录:"
- ls -la db/migrations/ || echo "迁移目录不存在"
- echo "=========================================="
- echo "检查迁移执行脚本:"
- ls -la run-migrations.sh || echo "迁移脚本不存在"
- echo "=========================================="
# 1. 数据库备份 # 1. 数据库备份
- echo "执行数据库备份..." - echo "执行数据库备份..."
...@@ -103,6 +142,8 @@ deploy_production: ...@@ -103,6 +142,8 @@ deploy_production:
rollback_production: rollback_production:
stage: deploy stage: deploy
image: alpine:latest image: alpine:latest
variables:
GIT_STRATEGY: "clone" # 强制克隆
before_script: before_script:
- apk add --no-cache openssh-client - apk add --no-cache openssh-client
- eval $(ssh-agent -s) - eval $(ssh-agent -s)
...@@ -133,10 +174,18 @@ rollback_production: ...@@ -133,10 +174,18 @@ rollback_production:
check_migrations: check_migrations:
stage: deploy stage: deploy
image: alpine:latest image: alpine:latest
variables:
GIT_STRATEGY: "clone" # 强制克隆
before_script: before_script:
- apk add --no-cache mysql-client - apk add --no-cache mysql-client
script: script:
- echo "检查数据库迁移状态..." - echo "检查数据库迁移状态..."
- echo "当前工作目录: $(pwd)"
- echo "项目目录: $CI_PROJECT_DIR"
- echo "列出迁移相关文件:"
- ls -la db/migrations/ || echo "迁移目录不存在"
- ls -la run-migrations.sh || echo "迁移脚本不存在"
- echo "=========================================="
- mysql -h $PROD_DB_HOST -P $PROD_DB_PORT -u $PROD_DB_USER -p$PROD_DB_PASSWORD \ - mysql -h $PROD_DB_HOST -P $PROD_DB_PORT -u $PROD_DB_USER -p$PROD_DB_PASSWORD \
$PROD_DB_NAME -e "SELECT script_name, description, applied_at FROM schema_migrations ORDER BY applied_at;" $PROD_DB_NAME -e "SELECT script_name, description, applied_at FROM schema_migrations ORDER BY applied_at;"
- echo "迁移状态检查完成" - echo "迁移状态检查完成"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment