🤖
actions/setup-goでgo.modを参照してGoのバージョン利用する
概要
教えて貰ったのでメモ。
Github Actions で actions/setup-go で利用する Go を準備していました。利用する Go のバージョンを設定ファイルに記載していましたが、利用する Go のバージョンが変わったときにこの設定も変えるのは面倒でした。
actions/setup-go
には特定のバージョンをバシッと設定する方法と、利用している go.mod から Go のバージョンを決めてくれる方法があります。
go.mod から Go のバージョンを決めるようにしておけば、利用する Go のバージョンを変更し忘れて古くなってしまうということもなくなります。
go.mod ファイルから Go のバージョンを設定する
解説があります。
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v3
with:
go-version-file: 'path/to/go.mod'
- run: go version
path/to/go.mod
はリポジトリのルードに go.mod があれば、単に go.mod
と書いておけばいいです。例えば、go.mod に指定されているバージョンが 1.18 である場合は、その時点でパッチバージョンが最新のものが version-manifest.json から選ばれます。
ちなみに、go-version
と go-version-file
の両方が設定されている場合は、go-version
が優先されます。
Happy hacking!
Discussion