mise-actionのワークフロー間でmise本体のバージョンを揃えたい
jdx/mise-actionはversionを指定しない場合、実行のたびにmise本体の最新リリースをダウンロードする。miseの新しいリリースで挙動が変わった場合、あるワークフローの実行だけ結果が変わってしまう可能性がある。jdx/mise-actionのversion入力を使うと、mise本体のバージョンをワークフロー間で固定できる。
versionを指定しない場合は最新版を使う
何も指定せずに実行すると、そのときのmise本体の最新リリースがインストールされる。
- uses: actions/checkout@v4
- uses: jdx/mise-action@v4
- run: mise --version
上記のワークフローを実行すると、次のように実行時点の最新リリースがインストールされる。
Run mise --version
2026.9.1 linux-x64 (2026-09-02)
versionでmise本体のバージョンを固定する
versionにバージョン番号を指定すると、そのバージョンのmiseをインストールする。
- uses: actions/checkout@v4
- uses: jdx/mise-action@v4
with:
version: "2026.8.11"
- run: mise --version
最新版が2026.9.1の状態でも、指定した2026.8.11がインストールされる。
Run mise --version
2026.8.11 linux-x64 (2026-08-23)
バージョンを固定するメリット
versionでバージョンを固定すると、次のような場面で役立つ。
- mise本体の新しいリリースで挙動が変わっても、ワークフローの実行結果への影響を避ける
- 複数のワークフローやジョブで同じmiseのバージョンを使い、実行環境を揃える
- ローカル開発環境のmiseバージョンとCI上のバージョンを一致させる
一方、バージョンを固定したままにすると、mise本体のセキュリティ修正やバグ修正を自動で取り込めなくなる。更新を追従させたい場合は、minimum_release_ageを使う方法もある。7dのような相対的な期間を指定すると、指定した期間より前にリリースされた安定版だけを自動的に選ぶようになり、リリース直後の不具合を避けつつ最新版へ追従できる。
mise.tomlに書いたツールのバージョンとmise自体のバージョンは別々に管理されている。versionが固定するのはmise本体のバージョンだけである。
\第一線のプログラマーの行動原理を学べる!/
