actions/setup-go
は Go のバージョンを指定しないとデフォルトで Go1.20 が使われているっぽい挙動に出くわしたので Go のバージョンを指定する方法のメモ。
気づいたきっかけは local で使用してる Go のバージョンと CI (GitHub Actions 上)で使用してる Go のバージョンがズレていると、setup-go が落ちる、という事象に出くわしたこと。
Go のバージョン指定方法は公式の Readme に書いてあるとおり。
https://github.com/actions/setup-go?tab=readme-ov-file#basic
go-version
というディレクティブに利用したい Go のバージョンを記載すれば良い。
ただこれだと CI を 2つ以上動かしているときに Go のバージョンが上がる度毎回 CI の設定ファイルを更新する必要があり、漏れが発生しやすい。
go.mod を利用するオプションがあるのでこちらを利用しておくと local で利用してる Go のバージョンと CI で利用する Go のバージョンをあわせる事ができそう。
ドキュメントとしては以下に記載してある内容。
https://github.com/actions/setup-go?tab=readme-ov-file#getting-go-version-from-the-gomod-file