This module will create VPC in AWS region "us-east-1"
This module will create AWS Client VPN
This module will create a needed number of Consul server in AWS
This module will create a VPN connection between AWS and GCP.
This module will create VPC in GCP region "us-east4"
This module will create GCP Site to Site VPN
This module will create a needed number of Consul server in GCP
- Terraform
"~> 0.13.0"
- AWS Account
- Basic Consul knowledge
- GCP Account
Prepare you own AWS AMIs with Packer
Prepare you own GCP Image with Packer
git clone https://github.com/chavo1/gcp-aws-vpn-consul-terraform.git
cd gcp-aws-vpn-consul-terraform
terraform init
terraform apply
- After the deployment Terraform will generate a file into the root directory "config-cvpn.ovpn". So you can use it to connect to the environment in both DCs with AWS Client VPN.
- VPN client depend on your choice, in my case I use tunnelblick.
- Kitchen provides a test harness to execute infrastructure code on one or more platforms in isolation.
- Install kitchen.ci
- Install selenium and all its dependencies on Mac with brew
$ brew install selenium-server-standalone
$ brew cask install java
# GeckoDriver for firefox
$ brew install geckodriver
# Chromedriver for chrome
$ brew cask install chromedriver
Than simply execute a following commands:
bundle exec kitchen converge
bundle exec kitchen verify
bundle exec kitchen destroy