Files
star-erp/.gitea/workflows/deploy-demo.yaml
sky121113 c40e331f2b
All checks were successful
Koori-ERP-Demo-Deploy / sync-update (push) Successful in 1m7s
demo
2026-01-05 23:50:51 +08:00

54 lines
1.8 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: Koori-ERP-Demo-Deploy
on:
push:
branches:
- demo
jobs:
sync-update:
runs-on: ubuntu-latest
steps:
- name: 1. Checkout New Code
uses: actions/checkout@v3
with:
github-server-url: http://192.168.0.103:3000
repository: ${{ gitea.repository }}
# - name: 1. Checkout New Code
# run: |
# # 進入工作目錄並直接用 git 抓 code完全不需要 Node
# rm -rf ./*
# git clone -b main http://server:3000/${{ gitea.repository }}.git .
- name: 2. Sync Files to Running Container
run: |
# A. 執行複製
cp .env.example .env
sed -i "s|APP_KEY=.*|APP_KEY=${{ secrets.APP_KEY }}|g" .env
# B. 確保容器環境是最新的
# --wait 會確保容器真的跑起來了才執行下一步
docker compose up -d --build --force-recreate --wait
# C. 執行精簡化複製 (關鍵優化!)
# 排除 .git, node_modules, vendor 這三大黑洞
tar --exclude='.git' \
--exclude='node_modules' \
--exclude='vendor' \
-cf - . | docker exec -i koori-erp-laravel tar -xf - -C /var/www/html
docker exec koori-erp-laravel chown -R 1000:1000 /var/www/html
- name: 3. Backend & Frontend Build
run: |
docker exec -u 1000:1000 -w /var/www/html koori-erp-laravel sh -c "
composer install --optimize-autoloader &&
npm install &&
npm run build &&
php artisan migrate --force &&
php artisan optimize:clear
"
- name: 4. Final Permission Fix
run: |
# 統一修正權限
docker exec koori-erp-laravel chmod -R 775 /var/www/html/storage /var/www/html/bootstrap/cache