- 将单引号字符串改为双引号字符串 - 正确转义内部的双引号(\"代替") - 修复所有rsync命令和复杂shell命令 问题根因: YAML单引号字符串与shell命令中的引号嵌套导致解析错误 修复方案: 使用YAML双引号字符串:"rsync -avz -e \"ssh ...\" ..." 这样YAML解析器会将\"解释为字面字符\",传递给shell的命令就是正确的格式
This commit is contained in:
+9
-9
@@ -145,15 +145,15 @@ steps:
|
||||
- echo "Testing SSH connection..."
|
||||
- ssh -o StrictHostKeyChecking=no root@139.155.109.62 "echo Server connection OK"
|
||||
- ssh -o StrictHostKeyChecking=no root@139.155.109.62 "df -h / /home | head -3"
|
||||
- 'echo "Syncing build artifacts to production server"'
|
||||
- 'rsync -avz --delete -e "ssh -o StrictHostKeyChecking=no" dist/ root@139.155.109.62:/home/novalon/docker-app/novalon-website/dist/'
|
||||
- 'rsync -avz -e "ssh -o StrictHostKeyChecking=no" public/ root@139.155.109.62:/home/novalon/docker-app/novalon-website/public/'
|
||||
- 'rsync -avz -e "ssh -o StrictHostKeyChecking=no" package.json package-lock.json root@139.155.109.62:/home/novalon/docker-app/novalon-website/'
|
||||
- 'rsync -avz -e "ssh -o StrictHostKeyChecking=no" Dockerfile.prod docker-compose.server.yml root@139.155.109.62:/home/novalon/docker-app/novalon-website/'
|
||||
- 'rsync -avz -e "ssh -o StrictHostKeyChecking=no" scripts/deploy-production.sh root@139.155.109.62:/home/novalon/docker-app/novalon-website/scripts/'
|
||||
- 'if [ -f .env.production ]; then rsync -avz -e "ssh -o StrictHostKeyChecking=no" .env.production root@139.155.109.62:/home/novalon/docker-app/novalon-website/; else echo "No .env.production file"; fi'
|
||||
- 'ssh -o StrictHostKeyChecking=no root@139.155.109.62 "cd /home/novalon/docker-app/novalon-website && [ -f docker-compose.server.yml ] && mv docker-compose.server.yml docker-compose.yml; chmod +x scripts/deploy-production.sh && ./scripts/deploy-production.sh"'
|
||||
- 'echo "Production deployment completed"'
|
||||
- echo "Syncing build artifacts to production server"
|
||||
- "rsync -avz --delete -e \"ssh -o StrictHostKeyChecking=no\" dist/ root@139.155.109.62:/home/novalon/docker-app/novalon-website/dist/"
|
||||
- "rsync -avz -e \"ssh -o StrictHostKeyChecking=no\" public/ root@139.155.109.62:/home/novalon/docker-app/novalon-website/public/"
|
||||
- "rsync -avz -e \"ssh -o StrictHostKeyChecking=no\" package.json package-lock.json root@139.155.109.62:/home/novalon/docker-app/novalon-website/"
|
||||
- "rsync -avz -e \"ssh -o StrictHostKeyChecking=no\" Dockerfile.prod docker-compose.server.yml root@139.155.109.62:/home/novalon/docker-app/novalon-website/"
|
||||
- "rsync -avz -e \"ssh -o StrictHostKeyChecking=no\" scripts/deploy-production.sh root@139.155.109.62:/home/novalon/docker-app/novalon-website/scripts/"
|
||||
- "if [ -f .env.production ]; then rsync -avz -e \"ssh -o StrictHostKeyChecking=no\" .env.production root@139.155.109.62:/home/novalon/docker-app/novalon-website/; else echo \"No .env.production file\"; fi"
|
||||
- "ssh -o StrictHostKeyChecking=no root@139.155.109.62 \"cd /home/novalon/docker-app/novalon-website && [ -f docker-compose.server.yml ] && mv docker-compose.server.yml docker-compose.yml; 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
|
||||
|
||||
Reference in New Issue
Block a user