自作したGitHub Actionsを公開するときにv1.0.0などとタグ付けをします。
こちらのドキュメントに書いてあるように、Github Actionsを利用する側は@v1
という風にメジャーバージョンだけを指定して使うといった使い方がよく使われます。
steps:
- uses: actions/setup-node@74bc508 # Reference a specific commit
- uses: actions/setup-node@v1 # Reference the major version of a release
- uses: actions/setup-node@v1.2 # Reference a minor version of a release
- uses: actions/setup-node@master # Reference a branch
この説明だけ見ると、@v1
と指定するとv1.x.x
の最新版が自動で使われそうに見えます。
しかし、GitHub Actionsを提供している側がなにもしないと@v1
と指定してもnot found
になってしまいます。GitHub Actionsが自動で最新バージョンを見つけてくれるわけではないのです!(2020/05/19現在)
GitHub Actionのversioningについてはこちらのドキュメントに記載があります。
GitHub Actionsを提供している側は、v1
, v1.1
などといったタグを用意しなければなりません。(たとえばactions/scriptはこうなっています)そして、マイナーバージョンやパッチパージョンを上げるたびにこれらのタグを付け替えなければならないのです。すごいめんどくさいですね・・
これを解決するGitHub Actionsがあり、https://github.com/nowactions/update-majorver です。
これを使うと自動でメジャーバージョンのタグを更新してくれるみたいですので、GitHub Actionsを公開している人は使うと便利かもしれません。
GitHub Actionsを使う側の人は、使おうとしているGithub ActionsのGitHubのreleaseを見て、v1とかv1.xに対応しているか確認して指定すると間違いはないです。