在Linux上安装tfswitch

我还为Mac版本进行了编写。
我认为这篇文章的使用方法比较参考。
将tfswitch安装到Mac上。

tfswitch 是什么?

可以使用tfswitch工具轻松切换terraform的版本。
只需使用tfswitch命令选择升级到最新版本!非常方便!!

安装步骤

环境

$ cat /etc/system-release
Amazon Linux 2

步驟

执行公式中的步骤。

$ sudo su -
# curl -L https://raw.githubusercontent.com/warrensbox/terraform-switcher/release/install.sh | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  9159  100  9159    0     0   9159      0  0:00:01 --:--:--  0:00:01 88922
warrensbox/terraform-switcher info checking GitHub for latest tag
warrensbox/terraform-switcher info found version: 0.7.737 for 0.7.737/linux/amd64
warrensbox/terraform-switcher info installed /usr/local/bin/tfswitch

使用方式

只需输入命令并选择所需的版本。

$ terraform --version
Terraform v0.12.18
[gitlab-runner@prod-gitlab-runner terraform]$ tfswitch
Use the arrow keys to navigate: ↓ ↑ → ← 
? Select Terraform version: 
  ▸ 0.12.19 ←選ぶ
    0.12.18
    0.12.17
    0.12.16
↓   0.12.15
✔ 0.12.19
Switched terraform to version "0.12.19" 
$ terraform --version
Terraform v0.12.19

故障排解

刚刚安装后运行命令时出现权限错误。

$ tfswitch
2020/01/09 04:13:50 Creating directory for terraform: /home/ec2-user/.terraform.versions/
✔ 0.12.19
Downloading https://releases.hashicorp.com/terraform/0.12.19/terraform_0.12.19_linux_amd64.zip to terraform_0.12.19_linux_amd64.zip
Downloading ...
16530635 bytes downloaded.
2020/01/09 04:13:52 
                Unable to create new symlink.
                Maybe symlink already exist. Try removing existing symlink manually.
                Try running "unlink /usr/local/bin/terraform" to remove existing symlink.
                If error persist, you may not have the permission to create a symlink at /usr/local/bin/terraform.
                Error: symlink /home/ec2-user/.terraform.versions/terraform_0.12.19 /usr/local/bin/terraform: permission denied

在安全方面可能存在问题,但通过以下命令已经能够运行了。

$ sudo chmod 777 /usr/local/bin
bannerAds