diff --git a/.woodpecker.yml b/.woodpecker.yml index 87a0654..caa0573 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -169,21 +169,18 @@ steps: - lint - type-check commands: - - echo "=== Step 1: 构建生产产物 ===" + - echo "Step 1: Building production artifacts..." - npm run build - - echo "✅ 构建完成" + - echo "Build completed" - ls -la dist/ - - - echo "=== Step 2: 部署到生产环境 ===" + - echo "Step 2: Deploying to production..." - mkdir -p ~/.ssh - echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa - chmod 600 ~/.ssh/id_rsa - ssh-keyscan -H 139.155.109.62 >> ~/.ssh/known_hosts - - echo "Pre-deployment checks..." - ssh root@139.155.109.62 "echo 'Server connection OK'" - ssh root@139.155.109.62 "df -h | grep -E '/$|/home'" - - echo "Syncing build artifacts to production server..." - rsync -avz --delete dist/ root@139.155.109.62:/home/novalon/docker-app/novalon-website/dist/ - rsync -avz public/ root@139.155.109.62:/home/novalon/docker-app/novalon-website/public/ @@ -191,20 +188,8 @@ steps: - rsync -avz Dockerfile.prod docker-compose.server.yml root@139.155.109.62:/home/novalon/docker-app/novalon-website/ - rsync -avz scripts/deploy-production.sh root@139.155.109.62:/home/novalon/docker-app/novalon-website/scripts/ - rsync -avz .env.production root@139.155.109.62:/home/novalon/docker-app/novalon-website/ 2>/dev/null || echo "No .env.production file" - - - | - ssh root@139.155.109.62 << 'EOF' - set -e - cd /home/novalon/docker-app/novalon-website - - if [ -f docker-compose.server.yml ]; then - mv docker-compose.server.yml docker-compose.yml - fi - - chmod +x scripts/deploy-production.sh - ./scripts/deploy-production.sh - EOF - - echo "✅ 生产环境部署完成!" + - ssh root@139.155.109.62 "cd /home/novalon/docker-app/novalon-website && if [ -f docker-compose.server.yml ]; then mv docker-compose.server.yml docker-compose.yml; fi && chmod +x scripts/deploy-production.sh && ./scripts/deploy-production.sh" + - echo "Production deployment completed!" volumes: - /tmp/npm-cache:/root/.npm - /tmp/node-modules-cache:/woodpecker/src/node_modules