fix(token 注入): action.yml 以 env 傳入 gitea.token 供容器讀取 #3

Merged
admin merged 1 commits from develop into master 2026-07-17 05:03:38 +00:00
Member

變更摘要

修正 Clean Old Release action 執行時因找不到 GITHUB_TOKENGITEA_TOKEN 而中止的問題。在 action.ymlruns.env 補上 token 注入,讓 runner 啟動容器時把 ${{ gitea.token }} 賦值給 GITHUB_TOKEN,供 src/index.jsreadEnvironment() 讀取。

問題原因

Docker container action 只會自動注入 GITHUB_REPOSITORYGITHUB_API_URL 等 context 變數,不會自動把 token 帶進容器;原本 action.yml 未宣告任何 token env,導致 process.env.GITHUB_TOKEN || process.env.GITEA_TOKEN 皆為空而 fail-fast 結束。

影響範圍

  • action.ymlruns 區塊新增 env,設定 GITHUB_TOKEN: ${{ gitea.token }}
  • 不動 src/entrypoint.shdockerfile 的既有行為。

注意事項

  • token 由 Gitea 自動提供,內容不會輸出至 log。
  • 此 action 需刪除 release 與 tag,使用它的 workflow 仍須具備 contents: write 權限,否則 token 雖傳入仍可能收到 403。
## 變更摘要 修正 Clean Old Release action 執行時因找不到 `GITHUB_TOKEN`/`GITEA_TOKEN` 而中止的問題。在 `action.yml` 的 `runs.env` 補上 token 注入,讓 runner 啟動容器時把 `${{ gitea.token }}` 賦值給 `GITHUB_TOKEN`,供 `src/index.js` 的 `readEnvironment()` 讀取。 ## 問題原因 Docker container action 只會自動注入 `GITHUB_REPOSITORY`、`GITHUB_API_URL` 等 context 變數,**不會**自動把 token 帶進容器;原本 `action.yml` 未宣告任何 token env,導致 `process.env.GITHUB_TOKEN || process.env.GITEA_TOKEN` 皆為空而 fail-fast 結束。 ## 影響範圍 - `action.yml`:`runs` 區塊新增 `env`,設定 `GITHUB_TOKEN: ${{ gitea.token }}`。 - 不動 `src/`、`entrypoint.sh`、`dockerfile` 的既有行為。 ## 注意事項 - token 由 Gitea 自動提供,內容不會輸出至 log。 - 此 action 需刪除 release 與 tag,使用它的 workflow 仍須具備 `contents: write` 權限,否則 token 雖傳入仍可能收到 403。
jiantw83 added 1 commit 2026-07-17 04:57:16 +00:00
fix(token 注入): action.yml 以 env 傳入 gitea.token 供容器讀取
docker-actions/template: CI / BUILD (pull_request) Successful in 4s
676cd825bf
admin scheduled this pull request to auto merge when all checks succeed 2026-07-17 05:03:31 +00:00
admin approved these changes 2026-07-17 05:03:36 +00:00
admin merged commit 10b32b858c into master 2026-07-17 05:03:38 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: docker-actions/clean-old-release#3