3.0 KiB
3.0 KiB
GITEA 工作流說明
總覽
目前專案內有 2 條 workflow 與 1 份 workflow README 文件:
| Workflow 名稱 | 檔案位置 | 觸發條件 | 用途 |
|---|---|---|---|
| CI | .gitea/workflows/ci.yaml |
pull_request 到 master、develop,事件類型為 opened、synchronize |
在 PR 階段建立版本、發佈 release,並在 beta 情境下執行工具鏈與清理動作 |
| CD | .gitea/workflows/master.yaml |
push 到 master |
在主分支推送後取得 commit tag,作為部署或版本追蹤依據 |
| WORKFLOW README | .gitea/workflows/readme.md |
文件檔,無觸發條件 | 整理 workflow 名稱、觸發條件與注意事項,方便維護與查閱 |
CI
- 檔案位置:
.gitea/workflows/ci.yaml - 用途:在 pull request 階段先建立版本、發佈 release,並在 beta 情境下執行後續工具鏈與清理動作。
- 觸發條件:PR 指向
master或develop,且事件為opened或synchronize。 - 主要參數:
vars.ACTION_CALCULATE_VERSION:版本計算 action 版本。vars.ACTION_GITEA_RELEASE_VERSION:release action 版本。vars.ACTION_SETUP_LLM_CLI:LLM CLI 設定 action 名稱或版本識別。vars.ACTION_AI_CODE_REVIEW_VERSION:AI code review action 版本。vars.LLM_NAME:模型名稱。secrets.LLM_OAUTH:LLM CLI OAuth 憑證。secrets.TOKEN:Gitea API token。gitea.run_number、gitea.base_ref、gitea.sha:版本號、beta 判斷與 release target commit。
- 重要注意事項:
buildjob 先計算版本,再發佈 release;Publishing Release這個 step 的env.VERSION是否能被後續表達式正確使用,需人工確認。testjob 目前有outputs.message指向steps.docker-template.outputs.message,但現有 steps 中沒有docker-templatestep,這一點需人工確認。Run Cleanup Release目前使用env.VERSION組 action 版本字串,實際是否與預期發布版本一致,需人工確認。resultjob 只輸出版本號,不再輸出訊息內容,與舊版流程不同。
CD
- 檔案位置:
.gitea/workflows/master.yaml - 用途:在
master分支推送後 checkout 原始碼並顯示對應 commit tag。 - 觸發條件:
push到master。 - 主要參數:
vars.ACTION_CHECKOUT_VERSION:checkout action 版本。gitea.event.commits[1].id:用於git describe --contains的 commit SHA。GITEA_OUTPUT:job step 輸出檔案。
- 重要注意事項:
gitea.event.commits[1]的索引是否一定存在,需人工確認,避免 push 內容少於兩筆 commit 時出錯。fetch-depth: 0是為了讓git describe能讀取完整歷史,不能省略。
readme
- 檔案位置:
.gitea/workflows/readme.md - 用途:整理 workflow 名稱、觸發條件與注意事項,方便快速查閱。
- 觸發條件:無,這是文件檔。
- 主要參數:無。
- 重要注意事項:此文件不改動任何 workflow 設定,只負責說明與彙整。