45 lines
1.3 KiB
YAML
45 lines
1.3 KiB
YAML
name: deploy-userbase-front
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
paths:
|
|
- 'front/**'
|
|
- '.gitea/workflows/deploy-front.yml'
|
|
|
|
jobs:
|
|
build-and-deploy:
|
|
runs-on: ubuntu-latest
|
|
# node:20 自带 npm;通过已配置的 registry-mirrors 拉取
|
|
container:
|
|
image: node:20
|
|
# 显式把宿主静态目录挂进 job 容器(act_runner 会校验 valid_volumes 白名单)
|
|
volumes:
|
|
- /data/www/userbase:/data/www/userbase
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Use npm mirror (npmmirror)
|
|
working-directory: front
|
|
run: npm config set registry https://registry.npmmirror.com
|
|
|
|
- name: Install dependencies
|
|
working-directory: front
|
|
run: npm ci
|
|
|
|
- name: Build (prod -> dist/prod)
|
|
working-directory: front
|
|
run: npm run build:prod
|
|
|
|
- name: Deploy to static dir (/data/www/userbase/front)
|
|
# /data/www/userbase 已由 job container.volumes 挂入本容器
|
|
run: |
|
|
rm -rf /data/www/userbase/front
|
|
mkdir -p /data/www/userbase/front
|
|
cp -r front/dist/prod/. /data/www/userbase/front/
|
|
echo "deployed front -> /data/www/userbase/front"
|
|
|
|
- name: Done
|
|
run: ls -la /data/www/userbase/front | head
|