Files
CFDivePlatform/.gitea/workflows/deploy.yml
T
a620906209 b218fa0964
Run Tests / test (pull_request) Successful in 33s
fix(swagger): 修正 VPS 無法顯示 Swagger UI 的問題
問題根因:
1. deploy.yml 未執行 l5-swagger:generate,VPS 上不存在 api-docs.json
2. @OA\Server 使用相對路徑 "/api",Swagger UI Try it out 無法正確打到 VPS API

修正:
- @OA\Server 改用 L5_SWAGGER_CONST_HOST 常數,透過 .env 各環境設定
- deploy.yml 在 config:cache 後補上 l5-swagger:generate 步驟
- .env.example 補上 L5_SWAGGER_CONST_HOST 與 L5_SWAGGER_GENERATE_ALWAYS 說明

VPS .env 需手動加入:
L5_SWAGGER_CONST_HOST=https://api.hank-space.com/api

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-23 15:23:18 +08:00

53 lines
1.5 KiB
YAML

name: Deploy Production
on:
push:
branches:
- master
jobs:
deploy:
runs-on: self-hosted
steps:
- name: Pull latest code
run: |
cd /root/myproject/CFDivePlatform
flock /tmp/cfdive-deploy.lock git fetch origin
git reset --hard origin/master
- name: Install Composer dependencies
run: |
cd /root/myproject/CFDivePlatform
docker compose exec -T app composer install --no-dev --optimize-autoloader
- name: Run migrations
run: |
cd /root/myproject/CFDivePlatform
docker compose exec -T app php artisan migrate --force
- name: Cache configs
run: |
cd /root/myproject/CFDivePlatform
docker compose exec -T app php artisan config:cache
docker compose exec -T app php artisan route:cache
docker compose exec -T app php artisan view:cache
docker compose exec -T app php artisan event:cache
- name: Generate Swagger docs
run: |
cd /root/myproject/CFDivePlatform
docker compose exec -T app php artisan l5-swagger:generate
- name: Restart queue worker
run: |
cd /root/myproject/CFDivePlatform
docker compose restart queue-worker
- name: Rebuild frontend (if changed)
run: |
cd /root/myproject/CFDivePlatform
if git diff --name-only HEAD~1 HEAD | grep -q '^frontend/'; then
docker compose build frontend
docker compose up -d frontend
fi