0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHub Actions バージョンアプデ自動化めちゃ楽だった 〜はじめての Dependabot〜

Posted at

ある日

あるリポジトリを久々に更新して、そのついでにワークフローで使用している Action のバージョンアップをしていました。

    steps:
      - name: Source checkout
-       uses: actions/checkout@v4
+       uses: actions/checkout@v6
      - name: Setup environment
        run: sudo apt install -y doxygen
      - name: Build
        run: |
          cd c-cpp
          doxygen
      - name: Upload artifact
-       uses: actions/upload-artifact@v4
+       uses: actions/upload-artifact@v6
        with:
          name: build-doxygen
          path: c-cpp/doxygen/html/
          retention-days: 1

そして思いました。

「うーん、なんだか効率が悪い・・・けど、そんな高頻度にやることでもないしなぁ。まぁたまにやる分には我慢なるけど」

ふと Dependabot について調べて

前々から名前は知っていたけど触れてこなかった Dependabot。有名なリポジトリなんかでも見かけるあのアイコンのヤツ。

それについて調べていたところ、気になるものを発見。

「自身の actions を最新に保つ、だと!?やりたかったことじゃないか!」

セットアップは超簡単

リポジトリの Settings > Advanced Security > Dependabot version updates で Enable ボタンを押下。

image.png

すると、所定のファイル名とテンプレートの設定 YAML コードと共にエディタが開きます。

ブラウザ上のエディタでなく、ローカルリポジトリから下の通りのファイル名、コードで commit & push しても OK。

image.png

package-ecosystemgithub-actions に設定、他はお好みで。

dependabot.yml
version: 2
updates:
  - package-ecosystem: "github-actions"
    directory: "/" # Location of package manifests
    schedule:
      interval: "weekly" # daily, weekly, monthly に設定可

以上、終了。たったこれだけ。

発動例

上を設定したところ、早速発動してくれました

image.png

    steps:
    - name: Source checkout
-     uses: actions/checkout@v4
+     uses: actions/checkout@v6

あとは作ってくれた Pull Request を確認して、問題なさそうなら Merge してアップデート完了。

たったあれだけの設定でコレをやってくれるんだから、こりゃ便利。食わず嫌いしていた自分がバカみたい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?