noeFly's profile picture

在 GitLab 上部署 Renovate Bot

讓套件更新交給專人處理,自己專注在專案開發!

GitLabCI

12/25/2025

機器人帳號

  1. GitLab 創立另一個 GitLab 帳號。
  2. 新增個人存取令牌,並在選取範圍勾選以下權限:
    • [x] read_repository
    • [x] read_registry
    • [x] read_api
    • [x] write_repository
    • [x] api
  3. 複製創建好的令牌

設定 Renovate 專案

tip
注意這裡是在 主要的 GitLab 帳號 繼續操作喔!不是在機器人帳號,別搞混了!
  1. 建立一個 GitLab 專案。

    • 專案名稱:一個自己喜歡的名稱,為了利於辨識,我這裡命名為「Renovate Runner」。
    • 可見性級別:設定為 「私有」,避免操作失誤,重要的存取資訊洩漏!
  2. 複製專案至本地。 SSH

    $ git clone git@gitlab.com:<user>/<repo>.git

    HTTPS

    $ git clone https://gitlab.com/<user>/<repo>.git
    tip

    若不知道網址,可以點開右上角「程式碼」,裡面有資訊可以複製。

  3. 開啟專案,新增 .gitlab-ci.yml

  4. 設定 .gitlab-ci.yml

    include:
        - project: 'renovate-bot/renovate-runner'
        file: '/templates/renovate.gitlab-ci.yml'
        ref: 'v25.0.0'
    renovate:
        rules:
            - if: '$CI_PIPELINE_SOURCE == "schedule"'
            - if: '$CI_PIPELINE_SOURCE == "push"'
  5. 推送變更至遠端專案。

  6. 設定流水線排程。

    1. 回到專案頁面。
    2. 點擊側邊欄「建置」→「流水線排程」。
    3. 點擊「建立新的流水線排程」。
    4. 調整相關設定:- 描述:一個自己喜歡的名稱,為了利於辨識,我這裡命名為「Renovate」。- 間隔模式:設定多久運行一次,官方建議為每小時一次,因此設定為 0 * * * *
    5. 點選「建立」。

設定 Renovate 相關變數

設定位置

  1. 在側邊欄點擊 「設定」→「CI/CD」

  2. 在「變數」區塊中點擊「新增變數」即可新增一個新的變數。

RENOVATE_TOKEN

  • 用途:負責檢查並開啟 MR[^1]。
  • 取得:參考「#機器人帳號」。

RENOVATE_GITHUB_COM_TOKEN

參考資料

[^1]: Merge Request,在 GitLab 中的合併請求。