はじめに
ふと自分の制作物のリポジトリを見に行ったときに気がついたのですが、Shields.ioのbuildバッジが下記のようになっていました。
んん、何か仕様が変わった??とりあえずバッジに表示されているissueを見に行くことに…!
結論
githubのワークフローにtest.yml
が存在する場合、バッジのURLを変更する必要がありました。
name: Run Tests
...
変更前
https://img.shields.io/github/workflow/status/<user>/<repo>/Run%20Tests
変更後
https://img.shields.io/github/actions/workflow/status/<user>/<repo>/test.yml?branch=main
具体的にどう変わった?
変更点は2つあります。
- ワークフローのパラメータがyaml で定義された
name:
ではなく、ワークフローのファイル名になった - branch パラメータを指定することが推奨されるようになった。
branch パラメータが指定されない場合は、まずデフォルトブランチのビルドを見に行き、デフォルトブランチに何も見つからない場合は任意のブランチまたは参照の最新のビルドの内容が正となるようです。
また、ワークフローが.github
下のサブディレクトリにある場合は、サブディレクトリをルートに含める必要があります。
(ワークフローのファイル名/パスは大文字と小文字が区別されるそうです。)
https://img.shields.io/github/actions/workflow/status/<user>/<repo>/sub_directory/test.yml?branch=main
おわりに
無事に置き換えが完了しました!
issue の方にこの変更の経緯とかが長々と書いてあるので、読んでみると面白いですよ。
また、この変更を済ませていないリポジトリをいくつか見かけたので、知り合いにそういう方がいたらこの記事を見せてあげてください。
良いOSS・開発ライフを!