Files
jinshen-website/.gitea/workflows/deploy.yml
R2m1liA ef6877768a
All checks were successful
deploy to server / build-and-deploy (push) Successful in 8m8s
ci: 调整workflow
- 只有master分支更新时执行项目部署操作
2025-09-26 14:33:45 +08:00

49 lines
1.4 KiB
YAML

name: deploy to server
on: push
jobs:
build-and-deploy:
runs-on: node22-build
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10
- name: Setup node 22
uses: actions/setup-node@v5
with:
node-version: '22'
cache: 'pnpm'
- name: Cache pnpm store
uses: actions/cache@v4
with:
path: ~/.pnpm-store
key: ${{ runner.os }}-pnpm-${{ hashFiles('pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-
- name: Install dependencies
run: pnpm install
- name: Cache Nuxt build
uses: actions/cache@v4
with:
path: .nuxt
key: ${{ runner.os }}-nuxt-${{ hashFiles('pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-nuxt-
- name: Build project
run: pnpm run build
- name: Deploy to server
if: github.ref == 'refs/heads/master'
uses: easingthemes/ssh-deploy@main
with:
ARGS: "-rlgoDzvc -i --delete"
REMOTE_HOST: ${{ secrets.rsync_host }}
REMOTE_USER: ${{ secrets.rsync_username }}
SOURCE: ${{ secrets.rsync_source }}
TARGET: ${{ secrets.rsync_destination }}
SSH_PRIVATE_KEY: ${{ secrets.rsync_key }}
SCRIPT_AFTER: ${{ secrets.script_after_rsync }}