diff --git a/.gitea/workflows/deploy.yaml b/.gitea/workflows/deploy.yaml new file mode 100644 index 0000000..887d12c --- /dev/null +++ b/.gitea/workflows/deploy.yaml @@ -0,0 +1,31 @@ +name: Koori-ERP-Deploy +on: + push: + branches: + - main + +jobs: + auto-deploy: + runs-on: ubuntu-latest + steps: + - name: 1. Checkout Code + uses: actions/checkout@v3 + + - name: 2. Create .env from Secrets + run: echo "${{ secrets.DOT_ENV }}" > .env + + - name: 3. Build and Start Docker + run: | + # 這裡會直接在 Linux 宿主機上啟動容器 + docker compose up -d --build + + - name: 4. Initialize Laravel + run: | + # 由於是第一次部署,我們需要安裝套件與跑 Migration + # 容器名稱通常是: 專案資料夾名-laravel.test-1 + # 我們用 'docker ps' 可以確認,這裡先抓關鍵字執行 + CONTAINER_NAME=$(docker ps --filter "name=laravel.test" --format "{{.Names}}") + docker exec $CONTAINER_NAME composer install --no-dev --optimize-autoloader + docker exec $CONTAINER_NAME php artisan migrate --force + docker exec $CONTAINER_NAME npm install + docker exec $CONTAINER_NAME npm run build \ No newline at end of file