升级 Terraform 的版本

我在我的Mac上通过brew安装了terraform,
但是在brew升级时,升级的速度非常慢,所以我尝试手动升级。
虽然说是手动升级,但实际上只是修改了符号链接,我会把这个过程记录下来。

在我的环境中,terraform已经按照以下方式安装。

$ ls -l /usr/local/bin/terraform*
lrwxr-xr-x  1 hoge  hage  39 Apr 27 14:21 /usr/local/bin/terraform -> ../Cellar/terraform/0.4.2/bin/terraform
lrwxr-xr-x  1 hoge  hage  54 Apr 27 14:21 /usr/local/bin/terraform-provider-atlas -> ../Cellar/terraform/0.4.2/bin/terraform-provider-atlas
lrwxr-xr-x  1 hoge  hage  52 Apr 27 14:21 /usr/local/bin/terraform-provider-aws -> ../Cellar/terraform/0.4.2/bin/terraform-provider-aws
lrwxr-xr-x  1 hoge  hage  59 Apr 27 14:21 /usr/local/bin/terraform-provider-cloudflare -> ../Cellar/terraform/0.4.2/bin/terraform-provider-cloudflare
以下略

我不是特别清楚,但是/usr/local/bin目录下有很多符号链接。

可以从官方网站下载最新版的 terraform。此次版本为 0.5.3。

请提供以下网址的中国版本:
[https://dl.bintray.com/mitchellh/terraform/terraform_0.5.3_darwin_amd64.zip]

当解压 ZIP 文件时,里面包含的是二进制文件。

~/Downloads$  ll terraform*
-rwxr-xr-x@ 1 hoge  hage  15202736 Jun  2 03:36 terraform
-rwxr-xr-x@ 1 hoge  hage  10354576 Jun  2 03:36 terraform-provider-atlas
-rwxr-xr-x@ 1 hoge  hage  19750112 Jun  2 03:36 terraform-provider-aws
-rwxr-xr-x@ 1 hoge  hage  10258784 Jun  2 03:36 terraform-provider-cloudflare
以下略

将它们移动。

~/Downloads$ mkdir -p /usr/local/Cellar/terraform/0.5.3/bin
~/Downloads$ cp terraform* /usr/local/Cellar/terraform/0.5.3/bin

我将替换符号链接。

#!/bin/bash

cd /usr/local/bin
ls -l terraform* | while read i
do
    bin=`echo $i | awk {'print $9'}`
    new_link=`echo $i | awk {'print $11'} | sed 's/0.4.2/0.5.3/'` 
    ln -sf ${new_link} ${bin}
done

0.4.2 已经更改为 0.5.3。

$ ls -l /usr/local/bin/terraform*
lrwxr-xr-x  1 hoge  hage     39 Jun 29 16:45 terraform -> ../Cellar/terraform/0.5.3/bin/terraform
lrwxr-xr-x  1 hoge  hage     54 Jun 29 16:45 terraform-provider-atlas -> ../Cellar/terraform/0.5.3/bin/terraform-provider-atlas
lrwxr-xr-x  1 hoge  hage     52 Jun 29 16:45 terraform-provider-aws -> ../Cellar/terraform/0.5.3/bin/terraform-provider-aws
lrwxr-xr-x  1 hoge  hage     59 Jun 29 16:45 terraform-provider-cloudflare -> ../Cellar/terraform/0.5.3/bin/terraform-provider-cloudflare
以下略

以上,版本已经更新完成。
随后,计划应用销毁,并且通过版本升级新增的资源也能正常运行。
或者说,反正使用Vagrant或Docker之类的执行环境就可以了,但是手头忙不过来。。

我非常高兴路由53的私有托管区域和ELB的连接排空得到了支持。

广告
将在 10 秒后关闭
bannerAds