ブログ

読んで思い出す。忘れるために書く

外部ファイルをダウンロードして展開するスクリプトを直した

Terraform の最新版があることを terraform -v が教えてくれるので、その情報を元に URL を組み立てて 最新版に更新する Bash の関数を作った

そのときに cut でバージョン番号の抜き出しをしていたが 上手く動いてなかったので 正規表現 ( egrep -o ) に切り替えた

差分: Fix to work terraform_update function · gouf/dotfiles@efe7252 · GitHub

現時点最新: dotfiles/.bash_functions at efe72520c8ccf5d25cc363c45a7dfa70dd258899 · gouf/dotfiles · GitHub

function update_terraform {
  ARCH=linux_amd64
  VERSION="$(terraform -v | tail -n 1 | egrep -o '[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,2}')"

  URL="https://releases.hashicorp.com/terraform/${VERSION}/terraform_${VERSION}_${ARCH}.zip"

  if [[ -z "$VERSION" ]]; then
    echo "Nothing to do."
  else
    cd /tmp
    wget $URL
    unzip terraform_${VERSION}_${ARCH}.zip -d ~/.terraform
  fi
}

Link

Terraform by HashiCorp