This folder contains a simple Terraform module that deploys resources in GCP to demonstrate
how you can use Terratest to write automated tests for your GCP Terraform code. This module deploys a Compute
Instance and gives that Instance a Name
with the value specified in the
instance_name
variable. It also creates a Cloud Storage Bucket using the bucket_name
and bucket_location
variables.
Check out test/terraform_gcp_example_test.go to see how you can write automated tests for this module.
Note that the Compute Instance in this module doesn't actually do anything; it just runs a Vanilla Ubuntu 16.04 Image for demonstration purposes. For slightly more complicated, real-world examples of Terraform modules, see terraform-http-example and terraform-ssh-example.
WARNING: This module and the automated tests for it deploy real resources into your GCP account which can cost you money. The resources are all part of the GCP Free Tier, so if you haven't used that up, it should be free, but you are completely responsible for all GCP charges.
- Sign up for GCP.
- Configure your GCP credentials using one of the supported methods for GCP CLI tools.
- Install Terraform and make sure it's in your
PATH
. - Ensure the desired Project ID is set:
export GOOGLE_CLOUD_PROJECT=terratest-ABCXYZ
. - Run
terraform init
. - Run
terraform apply
. - When you're done, run
terraform destroy
.
- Sign up for GCP.
- Configure your GCP credentials using the GCP CLI tools.
- Install Terraform and make sure it's on your
PATH
. - Install Golang and make sure this code is checked out into your
GOPATH
. - Set
GOOGLE_CLOUD_PROJECT
environment variable to your project name. cd test
dep ensure
go test -v -run TestTerraformGcpExample