2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ZOZOAdvent Calendar 2023

Day 15

M1 MacbookでAMD版terraformをtfenvで管理する

Last updated at Posted at 2023-12-15

概要

terraformでarm版で使えないproviderがあったので、M1 Macbookにamd版terraformをインストールを行い、tfenvで管理できるようにします。

amd版terraformをインストール

今回は1.3.9をダウンロードしたいので、こちらをダウンロードしていきます。

$ wget https://releases.hashicorp.com/terraform/1.3.9/terraform_1.3.9_darwin_amd64.zip

直接ダウンロードしたい場合は以下のURLをクリックすると、versionごとのterraformをダウンロードすることができるサイトに飛びます。

zipファイルがダウンロードされるので、こちらを解凍します。

$ unzip terraform_1.3.9_darwin_amd64.zip

一応実行してみると、amd版だと表示されます

$ ./terraform version

Terraform v1.3.9
on darwin_amd64

Your version of Terraform is out of date! The latest version
is 1.6.6. You can update by downloading from https://www.terraform.io/downloads.html

tfenvで管理する

上記でダウンロードしたamd版terraformだけでなく、arm版のterraformを使いたいケースがありました。
なのでamd版terraformをtfenvで管理するようにします。
tfenvは以下はApple silliconのMacbookの場合、/opt/homebrew/Cellar/tfenv/${tfenv version}/versions/配下で異なるversionのterraformを管理しています。
自分の環境の場合は以下になります。

$ pwd

/opt/homebrew/Cellar/tfenv/3.0.0/versions

その場でlsを実行するとこれまでtfenvでインストールしたversionごとのterraformが見れます。

$ ls
1.0.10/    1.1.0/     1.2.0/     1.5.4/

なのでこのディレクトリ内でamd版terraformのディレクトリを作成し、terraformのバイナリファイルを移動させればtfenvで管理することができます。

なのでこちらにディレクトリを作成します。

$ mkdir amd1.3.9

$ ls
1.0.10/    1.1.0/     1.2.0/     1.5.4/     amd1.3.9/

この段階でtfenv listを実行してみます。

$ tfenv list
  1.5.4
  1.2.0 (set by /opt/homebrew/Cellar/tfenv/3.0.0/version)
  1.1.0
  1.0.10
* amd1.3.9

まだterraformのバイナリファイルを移動させてきていませんが、この段階で表示させることができます。もちろんtfenv useでamd1.3.9を指定すると、エラーになります。

$ tfenv use amd1.3.9
Version directory for amd1.4.0 is present, but the terraform binary is not! Manual intervention required.

ここで、amd版terraaformのバイナリファイルを移動させます。

mv ~/Desktop/test-terraform/terraform amd1.3.9

これで再度tfenv useを実行します。

$ tfenv use amd1.3.9
Switching default version to vamd1.3.9
Default version (when not overridden by .terraform-version or TFENV_TERRAFORM_VERSION) is now: amd1.3.9

terraformのバイナリファイルを格納したことで、無事にtfenv useが実行できました!
またterraformのversionも確認します。

$ terraform version
Terraform v1.3.9
on darwin_amd64

Your version of Terraform is out of date! The latest version
is 1.6.6. You can update by downloading from https://www.terraform.io/downloads.html

ダウンロードしたamd版であることが確認できました。
これでtfenvで管理することができるため、arm版とamd版のterraformを使い分けることができます。

終わりに

今回はかなり特殊な事例ですが、もし困っている方がいたら参考になればと思います。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?