とことんDevOps | 日本仮想化技術のDevOps技術情報メディア

DevOpsに関連する技術情報を幅広く提供していきます。

日本仮想化技術がお届けする「とことんDevOps」では、DevOpsに関する技術情報や、日々のDevOps業務の中での検証結果、TipsなどDevOpsのお役立ち情報をお届けします。
主なテーマ: DevOps、CI/CD、コンテナ開発、IaCなど
読者登録と各種SNSのフォローもよろしくお願いいたします。

OpenTofuが使いやすくなっていた

OpenTofuはTerraformを含めたHashiCorp製品の実質的なクローズソース化をきっかけとして、 オープンソースで開発が継続しているTerraformのフォークです。

現在はLinux Foundationのプロジェクトの一つとして活動されています。 以前もこのブログの方で取り上げました。

devops-blog.virtualtech.jp

最近ドキュメントを見たところ、各OS向けのパッケージが充実してきていて使いやすくなっていました。以前はGolangのビルド環境を用意して自分でビルドしないといけなかったのが、簡単にセットアップできるようになったのでユーザーとしては嬉しい限りです。

macOSの場合はHomebrewを使ってkbrew install opentofuと実行することで導入できるようです。普段使いのApple SiliconなMacでも問題なくインストールできました(こういうのってamd64しかサポートしてないとか良くあるので)。

% brew install opentofu
% tofu --version
OpenTofu v1.6.0
on darwin_arm64

opentofuからtofuになったんですね。コマンドが長いみたいな意見でも上がったのでしょうか。 tofuだとキーボードの真ん中あたりにすべてのキーが配置されているので、打ちやすくて良いですね。

Linuxの場合はいくつかのディストリビューション向けにパッケージが提供されていますが、 LinuxにSnapdをセットアップすれば、大抵のLinuxディストリビューションでもOpenTofuが使えるようです。

とりあえず、こちらもアーキテクチャー問わず(arm64/amd64)インストールできそうです。

$ snap info opentofu
name:      opentofu
summary:   OpenTofu lets you declaratively manage your cloud infrastructure.
publisher: OpenTofu Core Team
store-url: https://snapcraft.io/opentofu
contact:   https://github.com/opentofu/opentofu/issues
license:   MPL-2.0
description: |
  OpenTofu is an OSS tool for building, changing, and versioning infrastructure
  safely and efficiently. OpenTofu can manage existing and popular service
  providers as well as custom in-house solutions.
snap-id: CgDJ4iyv7tkysyBgZhHkJNQYolAYWB9H
channels:
  latest/stable:    1.6.0 2024-01-10 (82) 16MB classic
  latest/candidate: 1.6.0 2024-01-10 (82) 16MB classic
  latest/beta:      1.6.0 2024-01-10 (82) 16MB classic
  latest/edge:      1.6.0 2024-01-10 (82) 16MB classic

$ sudo snap install --classic opentofu

登場の経緯からプロジェクト名称が変わっていったOpenTofuですが、プロジェクト名称のほかコマンドも変わっていったようで、 opentfopentofutofuのように、現在はtofuというコマンドになっているようです。 コマンドは変わりましたが、使い勝手は変わらないようです。

ちなみにOpenTofuのパッケージ配布はBuildkiteがスポンサーになったようで、BuildkiteのCI/CDサービスもちょっと気になっています。 そのうち試してみたいと思います。