fix(ci): 修复YAML解析错误

问题:
- YAML解析失败: cannot unmarshal type map into string
- 中文字符和多行字符串导致解析错误

修复:
- 移除中文字符,使用英文
- 将多行SSH命令改为单行命令
- 简化echo输出
This commit is contained in:
张翔
2026-03-30 07:23:26 +08:00
parent f1ff06d268
commit d37b5b0fec
+5 -20
View File
@@ -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