くりにっき

フルスタックキュアエンジニアです

terraform-version-updaterを作った

これ何?

https://github.com/tfutils/tfenv で使われる .terraform-version を自動でバージョンアップするためのツールです。(制作期間2日)

github.com

最初の構想

最初は 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