こんにちは。よっしーです(^^)
今日は、asdfコマンドを使用したterraformコマンドのインストール方法をご紹介します。
背景
これまで、terraformコマンドはHomebrewを利用してインストールしていました。具体的なインストール手順は、下記の記事に従ってください。
Homebrewだとバージョンを切り替えて使用するのが手間だと思い、下記の理由からasdfコマンドを使用してterraformコマンドをインストールして、使用する方法に切り替えました。
asdf
は、複数のプログラミング言語やツールのバージョン管理を効率的に行うためのツールです。一方、 Terraform
は、クラウドインフラストラクチャをコード化するためのツールで、AWSやAzure、Google Cloud Platformなどのクラウドプロバイダで使用されます。
asdf
を使用して Terraform
をインストールすることで、簡単に複数の Terraform
のバージョンを切り替えたり、プロジェクトごとに異なるバージョンの Terraform
を使用したりすることができます。
具体的には、以下の手順に従って asdf
で Terraform
をインストールし、使用することができます。
asdf
のインストールTerraform
プラグインの追加Terraform
のインストールTerraform
の使用
asdf
を使用することで、複数のプロジェクトで異なるバージョンの Terraform
を使用する場合でも、簡単に切り替えることができます。また、新しい Terraform
のバージョンがリリースされた場合でも、 asdf
を使用して簡単にアップグレードすることができます。
terraformコマンドのインストール
下記の手順でインストールしました。
asdf plugin list all | grep terraform
asdf plugin add terraform
asdf list-all terraform
asdf install terraform 1.4.6
asdf list terraform
terraformコマンドの確認
terraformコマンドのインストールが完了したら、terraformコマンドを使用したいディレクトリに移動して、下記のコマンドを実施します。
cd terraformコマンドを使用したいディレクトリ
asdf local terraform 1.4.6
terraform --version
解説
asdf コマンド
asdf plugin list all | grep terraform
asdf
で利用可能なすべてのプラグインのリストを表示し、その中からterraform
という文字列を含むプラグインのみをフィルタリングして表示します。これにより、terraform
のプラグインが既にインストールされているかどうかを確認できます。
asdf plugin add terraform
asdf
にterraform
のプラグインを追加します。これにより、terraform
のバージョンをインストールできるようになります。
asdf list-all terraform
asdf
で利用可能なすべてのterraform
のバージョンのリストを表示します。これにより、利用可能なterraform
のバージョンを確認できます。
asdf install terraform 1.4.6
asdf
を使用して、指定されたバージョン(ここでは1.4.6
)のterraform
をインストールします。このコマンドを実行するには、terraform
プラグインが必要なため、この前にasdf plugin add terraform
を使用してterraform
プラグインを追加しています。
asdf list terraform
asdf
でインストールされたすべてのterraform
のバージョンを表示します。
asdf local terraform 1.4.6
- ローカルディレクトリにある
.tool-versions
ファイルに、現在のディレクトリで使用するterraform
のバージョンを設定します。asdf
を使用して複数のバージョンのterraform
を管理している場合、このコマンドを使用して特定のバージョンを選択できます。
- ローカルディレクトリにある
asdfについては、下記の記事を御覧ください。
おわりに
今日は、asdfを使用したTerraformコマンドのインストール方法をご紹介しました。
ソフトウェアをインストールする際は、asdfでインストールできるかを確認するとよいと思います。バージョン依存のコマンドを使用しないといけない場面を考えると、asdfでバージョン切り替えをできるようにしておくと開発体験の向上が見込めると思います。
何か質問や相談があれば、遠慮なくコメントしてください。また、エンジニア案件についても、いつでも相談にのっていますので、お気軽にお問い合わせください。
それでは、また明日お会いしましょう(^^)
コメント