これ何?
https://github.com/tfutils/tfenv で使われる .terraform-version を自動でバージョンアップするためのツールです。(制作期間2日)
最初の構想
最初は https://github.com/minamijoyo/tfupdate にパッチを送ろうと思っていました。
しかしtfupdateはHCL形式のファイルを扱うことに特化しているため、.terraform-versionのようなプレーンテキストを対応させるのは難しそうな気がしたので別物として作ることにしました。 (できないことはないのだが、結構広範囲に改修する必要がありそうだったり、自分の書いたコードがツールの既存コードとは明らかに異質なものになりそうなので尻込みした)
GitHub Actionsで動かす
DependabotだとTerraformのproviderを自動バージョンアップできますが、Terraformの本体のバージョンは自動バージョンアップできません。
そのためGitHub Actionsでterraform-version-updaterを定期実行することにより、Dependabotのような感じで自動バージョンアップができるようになります
実際に使ったworkflowファイルはリポジトリのREADMEに貼っています。
https://github.com/sue445/terraform-version-updater?tab=readme-ov-file#github-actions-example