CI/CD 优化:前端构建产物上传 artifact,VPS 跳过二次 npm run build

This commit is contained in:
2569718930@qq.com
2026-05-26 02:39:02 +08:00
parent 58cc82f520
commit d088ff389a
2 changed files with 43 additions and 8 deletions
+21 -8
View File
@@ -54,25 +54,38 @@ jobs:
- name: Build
run: npm run build
docker-build:
- name: Upload frontend build artifact
uses: actions/upload-artifact@v4
with:
name: frontend-next
path: |
frontend/.next
frontend/package.json
frontend/package-lock.json
frontend/next.config.mjs
frontend/public
!frontend/.next/cache
deploy:
needs: [python-quality, frontend-quality]
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build Docker image
run: docker build -t polyweather-ci .
- name: Download frontend build artifact
uses: actions/download-artifact@v4
with:
name: frontend-next
path: frontend
deploy:
needs: [python-quality, frontend-quality, docker-build]
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- name: Deploy to VPS
run: |
mkdir -p ~/.ssh
echo "${{ secrets.VPS_SSH_KEY }}" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
scp -o StrictHostKeyChecking=accept-new -r frontend/.next frontend/package.json frontend/package-lock.json frontend/next.config.mjs ${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }}:/root/PolyWeather/frontend/
ssh -o StrictHostKeyChecking=accept-new ${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }} "
cd /root/PolyWeather
git fetch origin main && git reset --hard origin/main