GCP Portal Deployment Using Automation - Pratiksha-Marane/duplo-docs GitHub Wiki
- Check if the DNS is
*.duplocloud.net
.- If yes, proceed.
- If no (e.g.,
*.customdomain.com
), create a new DNS entry first.
- Pull the latest code from the repository:
git clone https://github.com/duplocloud-internal/duplo-infra/tree/release_jul_2024/terraform/gcp
Ensure the following tools and versions are installed:
- Google Cloud SDK CLI
-
Terraform: Version
1.5.2
-
Google Provider Plugin: Version
5.21
-
Python: Version
3.12
OR Above.
-
Google Cloud Account with:
a. Admin permissions in the GCP project you're deploying to.
b. Read permissions to thegcp-infra
project for reading VM images.
Before starting, collect the following details:
- DNS
- Zone
- Project ID
First, navigate to the directory:
Ensure Terraform is run from the release_jul_2024 branch.
-
Enable required GCP APIs:
./enable_gcp_apis.sh <project-id>
-
Initialize Terraform:
terraform init
-
Create a deployment plan:
./deploy_gcp_infrastructure.sh <project-id> <project-URL> [email protected] <region> <zone>
-
Apply the deployment:
./deploy_gcp_infrastructure.sh <project-id> <project-URL> [email protected] <region> <zone> --apply
Once the deployment script creates a certificate:
-
If using a non-
*.duplocloud.net
DNS:- Add the provided CNAME record to the DNS you created earlier to activate the certificate.
-
If using
*.duplocloud.net
DNS:- Add the CNAME record to the
*.duplocloud.net
DNS. - Send the CNAME record to (e.g., Raghavan) for configuration.
- Add the CNAME record to the
- Provide the Load Balancer IP and the Portal URL:
- Add them to DNS and SSO for proper configuration.
- Set the GCP project and authenticate your Google Cloud account:
gcloud config set project <project-id> gcloud auth login
- Ensure the portal is updated to the July Latest Version:
GCP_PROJECT_ID=<project-id> VERSION=branch/release_jul_2024/latest UI_VERSION=branch/release_jul_2024/latest GCP_REGION=<region> GCP_ZONE=<Zone> ./update-duplo.sh