The following items need to be setup for the Playground cluster deployment on GCP:
gcloud
command-line tool and required setup i.e. login$ gsutil mb -p ${PROJECT_ID} gs://state-bucket-name $ gsutil versioning set on gs://state-bucket-name
To provide information about the terraform backend, run the following commands
mkdir /path/to/beam/playground/terraform/environment/{env-name}
echo 'bucket = "put your state bucket name here"' > /path/to/beam/playground/terraform/environment/{env-name}/state.tfbackend
touch /path/to/beam/playground/terraform/environment/{env-name}/terraform.tfvars
Then provide necessary variables.
To deploy Playground infrastructure run gradle task:
./gradlew playground:terraform:InitInfrastructure -Pproject_environment="env-name"
To deploy application run following steps:
gcloud auth configure-docker us-central1-docker.pkg.dev
./gradlew playground:terraform:deployBackend -Pproject_environment="env-name" -Pdocker-tag="tag"
./gradlew playground:terraform:deployFrontend -Pproject_environment="env-name" -Pdocker-tag="tag" ```