たとえばGoで書かれているプロダクトのCIをGitHub Actionsでやっていて、Goのバージョンがあがるたびにこのファイルを毎回ちまちま更新しているとあまり面白味のない作業になってしまう。最近だとGo 1.18 から 1.19 にあげるときに以下の go-version に書いてる数字を 1.19 にあげる必要があった。
steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v3 with: go-version: 1.18 - run: go version
actions/setup-go@v3.1.0 からは go-version-file に go.mod のパスを指定することによってそこからバージョンを取得して使ってくれるようになった。便利。 .go-version にも対応しているようです。
github.com
steps: - uses: actions/checkout@v3 - uses: actions/setup-go@v3 with: go-version-file: "go.mod" - run: go version
同じように、actions/setup-node@v2.5.0 からは node-version-file を指定できるようになっている。
github.com
steps: - uses: actions/checkout@v3 - uses: actions/setup-node@v2 with: node-version-file: ".node-version" - run: npm install
node-version-file は .nvmrc や .tool-versions にも対応しているようだった。
github.com