Files
release-cleanup/.gitea/workflows/ci.yaml
T
JefferyandClaude Opus 4.8 a9b9f95a72 ci(release-cleanup): ci.yaml 改為 PR 觸發 beta 標版 + 自我清理管線
- release-tag-version job:以 is_beta: true 標註 beta 版並輸出 version
- release-cleanup job:needs 前者,於該 beta 版本上執行 release-cleanup action(dogfooding 自我清理)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 18:18:24 +08:00

52 lines
2.5 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.
# ===================================================================
# 用途:Gitea CI workflow,於 Pull Request 開啟或更新時觸發 AI 程式碼審查。
# 透過公司 Gitea 上的 composite action `opencode-code-review`
# 對 PR 變更內容執行自動化 AI code review,並把審查結果以留言回貼到 PR。
# 更新日期(台灣時區 Asia/Taipei):2026/06/30 16:44:09
# ===================================================================
# workflow 名稱,顯示於 Gitea Actions 介面
name: CI
# 觸發事件設定
on:
# 針對 Pull Request 事件觸發
pull_request:
# 目標分支過濾:忽略以下分支(即 master 不觸發本 workflow
branches-ignore:
# 排除 master 分支,避免對正式主線的 PR 執行 AI 審查
- master
# 僅在 PR 被「開啟(opened)」或「推送新 commit 同步(synchronize)」時觸發
types: [opened, synchronize]
# 定義所有 jobs
jobs:
# 第一個 job: 釋出並標註成品版本,並將版本號往外拋給後續 job 使用。
release-tag-version:
# job 顯示名稱。
name: Release Tag Version
# 指定執行環境 (runner) 標籤為 ubuntu。
runs-on: ubuntu
# 宣告此 job 的輸出,供後續 needs 此 job 的其他 job 取用。
outputs:
# 將下方 id 為 release-tag-version 的 step 所輸出的 version,設為此 job 的對外 version 輸出 (關鍵點: 透過 outputs 把標註出的版本往外拋)。
version: ${{ steps.release-tag-version.outputs.version }}
# 此 job 依序執行的步驟。
steps:
# 步驟: 呼叫 composite action 進行釋出並標註成品版本。
- name: 釋出並標註成品版本
# 設定此 step 的 id,讓上方 outputs 可用 steps.release-tag-version.outputs.version 取得其輸出。
id: release-tag-version
# 引用 release-tag-version composite action,版本以變數 vars.ACTION_RELEASE_TAG_VERSION 釘選 (集中於 repo/org 變數管理,便於統一升版)。
uses: https://gitea.jsc.idv.tw/composite-actions/release-tag-version@${{ vars.ACTION_RELEASE_TAG_VERSION }}
# 傳遞給該 action 的輸入參數。
with:
# is_beta 設為 true 表示走 beta 標版流程 (標註的是 beta 成品版本,而非正式版)。
is_beta: true
release-cleanup:
name: Release Cleanup
runs-on: ubuntu
needs: release-tag-version
steps:
- name: 清理舊成品
uses: https://gitea.jsc.idv.tw/docker-actions/release-cleanup@v${{ needs.release-tag-version.outputs.version }}