123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- name: Deploy
- on:
- # 推送时执行
- push:
- branches: [dev]
- # 可手动执行
- workflow_dispatch:
- jobs:
- deploy-web:
- runs-on: ubuntu-latest
- steps:
- # 1、检出源码
- - name: Checkout
- uses: actions/checkout@master
- # 2、安装 PNPM
- - name: Setup PNPM
- uses: pnpm/action-setup@v2
- with:
- version: latest
- # 3、安装 Node 环境
- - name: Setup Node
- uses: actions/setup-node@v3
- with:
- node-version: 18
- cache: pnpm
- cache-dependency-path: ./pnpm-lock.yaml
- # 4、安装依赖
- - name: Install Dependencies
- run: pnpm i --frozen-lockfile
- # 5、打包
- - name: Build
- run: pnpm build
- # 6、拷贝到服务器
- - name: Copy
- uses: appleboy/scp-action@v0.1.7
- with:
- host: ${{ secrets.SERVER_HOST }}
- port: ${{ secrets.SERVER_PORT }}
- username: ${{ secrets.SERVER_USERNAME }}
- password: ${{ secrets.SERVER_PASSWORD }}
- source: ./dist/*
- target: /tmp/html
- strip_components: 1
- # 7、重启 Nginx
- - name: Restart
- uses: appleboy/ssh-action@master
- with:
- host: ${{ secrets.SERVER_HOST }}
- port: ${{ secrets.SERVER_PORT }}
- username: ${{ secrets.SERVER_USERNAME }}
- password: ${{ secrets.SERVER_PASSWORD }}
- script: |
- rm -rf ${{ secrets.SERVER_PATH }}/*
- mv /tmp/html/* ${{ secrets.SERVER_PATH }}
- chmod -R 777 ${{ secrets.SERVER_PATH }}
|