github.com/bradfeehan/terraform@v0.7.0-rc3.0.20170529055808-34b45c5ad841/examples/azure-vm-custom-image-new-storage-account/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    --workdir=/data \
    12    --entrypoint "/bin/sh" \
    13    hashicorp/terraform:light \
    14    -c "/bin/terraform get; \
    15        /bin/terraform validate; \
    16        /bin/terraform plan -out=out.tfplan \
    17          -var source_img_uri=$EXISTING_IMAGE_URI \
    18          -var hostname=$KEY \
    19          -var resource_group=$KEY \
    20          -var existing_resource_group=$EXISTING_RESOURCE_GROUP \
    21          -var admin_password=$PASSWORD \
    22          -var existing_storage_acct=$EXISTING_STORAGE_ACCOUNT_NAME \
    23          -var custom_image_name=$CUSTOM_IMAGE_NAME; \
    24        /bin/terraform apply out.tfplan; \
    25        /bin/terraform show;"
    26  
    27  # cleanup deployed azure resources via azure-cli
    28  docker run --rm -it \
    29    azuresdk/azure-cli-python \
    30    sh -c "az login --service-principal -u $ARM_CLIENT_ID -p $ARM_CLIENT_SECRET --tenant $ARM_TENANT_ID > /dev/null; \
    31           az vm show -g $KEY -n myvm; \
    32           az storage account show -g $KEY -n $KEY;"
    33  
    34  # cleanup deployed azure resources via terraform
    35  docker run --rm -it \
    36    -e ARM_CLIENT_ID \
    37    -e ARM_CLIENT_SECRET \
    38    -e ARM_SUBSCRIPTION_ID \
    39    -e ARM_TENANT_ID \
    40    -v $(pwd):/data \
    41    --workdir=/data \
    42    --entrypoint "/bin/sh" \
    43    hashicorp/terraform:light \
    44    -c "/bin/terraform destroy -force \
    45          -var source_img_uri=$EXISTING_IMAGE_URI \
    46          -var hostname=$KEY \
    47          -var resource_group=$KEY \
    48          -var existing_resource_group=$EXISTING_RESOURCE_GROUP \
    49          -var admin_password=$PASSWORD \
    50          -var existing_storage_acct=$EXISTING_STORAGE_ACCOUNT_NAME \
    51          -var custom_image_name=$CUSTOM_IMAGE_NAME \
    52          -target=azurerm_virtual_machine.myvm \
    53          -target=azurerm_virtual_machine.transfer \
    54          -target=azurerm_network_interface.transfernic \
    55          -target=azurerm_network_interface.mynic \
    56          -target=azurerm_virtual_network.vnet \
    57          -target=azurerm_public_ip.mypip \
    58          -target=azurerm_public_ip.transferpip \
    59          -target=azurerm_storage_account.stor;"