#!/bin/bash

set -euo pipefail

version=1.3.6

basedir="${0%/*}"

s=$(uname -s)
case "$s"
in
  Darwin) s=darwin ;;
  Linux) s=linux ;;
  *) echo "Unsupported system: $s" >/dev/stderr ;;
esac

m=$(uname -m)
case "$m"
in
  x86_64) m=amd64 ;;
  arm64) ;;
  *) echo "Unsupported machine: $m" >/dev/stderr ;;
esac

url=https://releases.hashicorp.com/terraform/${version}/terraform_${version}_${s}_${m}.zip

bin="$basedir/.tmp/$version/terraform"

if [[ ! -x "$bin" ]]
then
  mkdir -p $(dirname "$bin")
  wget -O "$bin.zip" "$url"
  cd $(dirname "$bin")
  unzip "$bin.zip" terraform
  chmod +x terraform
  cd -
fi

exec "$bin" "${@}"