Templated Terraform module to implement VPC on AWS
- existing CMK in AWS KMS
- generated keys pair
Example of ../environments/dev/dev.tfvars
file:
export ENVIRONMENT="dev"
export AWS_REGION="ca-central-1"
export AWS_PROFILE="default"
export AWS_STATE_BUCKET="tf-state-bucket"
export AWS_KMS_ARN="arn:aws:kms:ca-central-1:4545454545:key/xxxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx"
export TF_VAR_kms_key_id=${AWS_KMS_ARN}
Init terraform:
# example of usage is located under ./test directory
cd test
terraform init \
-backend-config="bucket=ca-central-1.aws-terraform-state-bucket" \
-backend-config="key=terraform/bastionbox.tfstate" \
-backend-config="region=ca-central-1" \
-backend-config="profile=dev" \
-var-file=../environments/dev/dev.tfvars
Plan terraform:
terraform plan -var-file=../environments/dev/dev.tfvars -out=./terraform
Apply terraform:
terraform apply -var-file=../environments/dev/dev.tfvars