X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=resources%2Flibraries%2Fbash%2Ffunction%2Fterraform.sh;h=1766381f75c221e1d141886448e986ea844a53a8;hb=eea1611300a7e80694173b0c448865a772746434;hp=23da8ae734aed8f0a44c3e924743d8587f1063ca;hpb=ddd2cc047694396928086482339588966a858fba;p=csit.git diff --git a/resources/libraries/bash/function/terraform.sh b/resources/libraries/bash/function/terraform.sh index 23da8ae734..1766381f75 100644 --- a/resources/libraries/bash/function/terraform.sh +++ b/resources/libraries/bash/function/terraform.sh @@ -32,9 +32,12 @@ function terraform_apply () { fi pushd "${CSIT_DIR}"/fdio.infra.terraform || die "Pushd failed!" - pushd "${NODENESS}_${FLAVOR}_c5n" || die "Pushd failed!" + pushd "terraform-aws-${NODENESS}-${FLAVOR}-c5n" || die "Pushd failed!" export TF_LOG=INFO - terraform apply -auto-approve || die "Failed to run terraform apply!" + trap 'terraform_destroy' ERR || { + die "Trap attempt failed, please cleanup manually. Aborting!" + } + terraform apply -no-color -auto-approve || die "Terraform apply failed!" popd || die "Popd failed!" popd || die "Popd failed!" } @@ -55,9 +58,9 @@ function terraform_destroy () { fi pushd "${CSIT_DIR}"/fdio.infra.terraform || die "Pushd failed!" - pushd "${NODENESS}_${FLAVOR}_c5n" || die "Pushd failed!" + pushd "terraform-aws-${NODENESS}-${FLAVOR}-c5n" || die "Pushd failed!" export TF_LOG=INFO - terraform destroy -auto-approve || die "Failed to run terraform destroy!" + terraform destroy -auto-approve -no-color || die "Terraform destroy failed!" popd || die "Popd failed!" popd || die "Popd failed!" } @@ -75,13 +78,17 @@ function terraform_init () { set -exuo pipefail if ! installed terraform; then + curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - + os="$(lsb_release -cs)" || die "Failed to get OS release!" + repo="deb [arch=amd64] https://apt.releases.hashicorp.com ${os} main" + sudo apt-add-repository "${repo}" || die "Failed to add repo!" apt update -y apt install -y terraform #die "Please install terraform!" fi pushd "${CSIT_DIR}"/fdio.infra.terraform || die "Pushd failed!" - pushd "${NODENESS}_${FLAVOR}_c5n" || die "Pushd failed!" + pushd "terraform-aws-${NODENESS}-${FLAVOR}-c5n" || die "Pushd failed!" plugin_url="https://github.com/radekg/terraform-provisioner-ansible/" plugin_url+="releases/download/v2.5.0/"