github.com/loicalbertin/terraform@v0.6.15-0.20170626182346-8e2583055467/examples/azure-2-vms-loadbalancer-lbrules/deploy.ci.sh (about) 1 #!/bin/bash 2 3 set -o errexit -o nounset 4 5 docker run --rm -it \ 6 -e ARM_CLIENT_ID \ 7 -e ARM_CLIENT_SECRET \ 8 -e ARM_SUBSCRIPTION_ID \ 9 -e ARM_TENANT_ID \ 10 -v $(pwd):/data \ 11 --entrypoint "/bin/sh" \ 12 hashicorp/terraform:light \ 13 -c "cd /data; \ 14 /bin/terraform get; \ 15 /bin/terraform validate; \ 16 /bin/terraform plan -out=out.tfplan -var dns_name=$KEY -var hostname=$KEY -var lb_ip_dns_name=$KEY -var resource_group=$KEY -var admin_password=$PASSWORD; \ 17 /bin/terraform apply out.tfplan" 18 19 # cleanup deployed azure resources via azure-cli 20 docker run --rm -it \ 21 azuresdk/azure-cli-python:0.2.10 \ 22 sh -c "az login --service-principal -u $ARM_CLIENT_ID -p $ARM_CLIENT_SECRET --tenant $ARM_TENANT_ID > /dev/null; \ 23 az network lb show -g $KEY -n rglb; \ 24 az network lb rule list -g $KEY --lb-name rglb;" 25 26 # cleanup deployed azure resources via terraform 27 docker run --rm -it \ 28 -e ARM_CLIENT_ID \ 29 -e ARM_CLIENT_SECRET \ 30 -e ARM_SUBSCRIPTION_ID \ 31 -e ARM_TENANT_ID \ 32 -v $(pwd):/data \ 33 --workdir=/data \ 34 --entrypoint "/bin/sh" \ 35 hashicorp/terraform:light \ 36 -c "/bin/terraform destroy -force -var dns_name=$KEY -var hostname=$KEY -var lb_ip_dns_name=$KEY -var resource_group=$KEY -var admin_password=$PASSWORD;"