Files
digital-me-history/.gitea/workflows/sync-assets.yml
T
2026-10-10 16:39:40 +08:00

48 lines
1.5 KiB
YAML

name: sync-assets
# 手动触发:全量同步(含图片 / 音频 / 字体等素材)。
# 平时 push 只同步代码;改了素材后用这个跑一次。
on:
workflow_dispatch: {}
jobs:
sync:
runs-on: ubuntu-latest
env:
TZ: Asia/Shanghai
GITEA_URL: http://192.168.110.4:3000
REPO_PATH: admin/digital-me-history
TARGET_DIR: /volume1/docker/digital-me
NAS: 18702851751@192.168.110.4
steps:
- name: 拉取代码
run: |
set -e
git config --global --add safe.directory '*'
git clone --depth 1 "${GITEA_URL}/${REPO_PATH}.git" .
- name: 拉取全部 LFS 素材
run: |
set -e
apt-get update -qq
apt-get install -y -qq git-lfs
git lfs install
git lfs pull
- name: 全量同步到 NAS 并重建
run: |
set -e
tar czf - \
--exclude=.git \
--exclude='战役素材' \
--exclude='水墨遮罩' \
--exclude='客户成片' \
--exclude='artifacts' \
digital-me-web digital-me-backend compose.yaml \
| ssh -i /root/.ssh/nas_ci \
-o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=ERROR \
"${NAS}" \
"mkdir -p $TARGET_DIR && tar xzf - -C $TARGET_DIR && cd $TARGET_DIR && sudo -n /usr/local/bin/docker compose up -d --build"
echo "全量同步完成"