Skip to content

ADORSYS-GIS/observability

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GIS Apps Deployment

Terraform Deployment

Non-Sensitive informations

#export TF_VAR_project_id="your_digital_ocean_token" ## Only if we wanna fix on this project
export TF_VAR_org_id="your_digital_ocean_token"
export TF_VAR_folder_id="your_digital_ocean_token"

Sensitive informations

export TF_VAR_credentials="./dev.json"
export TF_VAR_billing_account="some-secret"
export TF_VAR_repository_username="some-secret"
export TF_VAR_repository_password="some-secret"
export TF_VAR_db_username="some-secret"
export TF_VAR_db_password="some-secret"

Setup

  1. Backend config: You'll need to have an external backend for better security.

    export BACKEND_BUCKET_STATE="your-backend-bucket"
    export BACKEND_CREDENTIAL_FILE_PATH="./credentials.json"

    Then, run the following command to initialize the backend:

    tf init -var-file=dev.tfvars \
     -backend-config="bucket=$BACKEND_BUCKET_STATE" \
     -backend-config="prefix=terraform/state" \
     -backend-config="credentials=$BACKEND_CREDENTIAL_FILE_PATH" \
     -reconfigure
  2. (Optional) First create the project. To do that, run the corresponding TF Module

    tf apply -auto-approve -var-file=dev.tfvars -target=module.project
  3. Then create the repository. To do that, run the corresponding TF Module

    tf apply -auto-approve -var-file=dev.tfvars

Terraform modules

Requirements

Name Version
terraform >= 1.9.8
google ~> 6.0
google-beta ~> 6.0
helm ~> 2.0
kubernetes ~> 2.0

Providers

Name Version
google 6.26.0

Modules

Name Source Version
db ./modules/db/ n/a
dns ./modules/dns/ n/a
helm ./modules/helm/ n/a
k8s ./modules/k8s/ n/a
project ./modules/project n/a
redis ./modules/redis/ n/a
storage ./modules/storage/ n/a
vpc ./modules/vpc/ n/a

Resources

Name Type
google_client_config.default data source

Inputs

Name Description Type Default Required
api_enabled_services The list of apis necessary for the project list(string)
[
"compute.googleapis.com",
"gkehub.googleapis.com",
"cloudresourcemanager.googleapis.com",
"serviceusage.googleapis.com",
"servicenetworking.googleapis.com",
"cloudkms.googleapis.com",
"logging.googleapis.com",
"cloudbilling.googleapis.com",
"iam.googleapis.com",
"admin.googleapis.com",
"storage-api.googleapis.com",
"monitoring.googleapis.com",
"securitycenter.googleapis.com",
"billingbudgets.googleapis.com",
"vpcaccess.googleapis.com",
"dns.googleapis.com",
"containerregistry.googleapis.com",
"eventarc.googleapis.com",
"run.googleapis.com",
"container.googleapis.com",
"dns.googleapis.com",
"deploymentmanager.googleapis.com",
"artifactregistry.googleapis.com",
"cloudbuild.googleapis.com",
"file.googleapis.com",
"certificatemanager.googleapis.com",
"domains.googleapis.com",
"redis.googleapis.com"
]
no
billing_account Billing account id for the project string n/a yes
credentials File path to the credentials file. Keep in mind that the user or service account associated to this credentials file must have the necessary permissions to create the resources defined in this module. string n/a yes
db_password DB password string n/a yes
db_username DB username string n/a yes
environment n/a string n/a yes
folder_id Folder ID in the folder in which project string null no
gis_application_auth_secret GIS Application auth secret string n/a yes
gis_application_chart_version GIS Application Helm chart version string n/a yes
gis_application_dns_prefix GIS Application DNS prefix. Final DNS name will be .<root_domain_name> string n/a yes
gis_application_oauth_client_id GIS Application OAuth client ID string n/a yes
gis_application_oauth_client_secret GIS Application OAuth client secret string n/a yes
iam_principals List of role (key) names to grant permissions to list(string) n/a yes
machine_type Machine type string n/a yes
name base name of this deployment string "learn" no
openai_key OpenAI application Secure Key string n/a yes
openai_url OpenAI provider url string n/a yes
org_id Google Organization ID string null no
project_id The ID of the project where this VPC will be created string "" no
region The region where to deploy resources string n/a yes
repository_password Helm chart Repository Password string n/a yes
repository_username Helm chart Repository Username string n/a yes
root_domain_name n/a string "learn.adorsys.team" no
sschool_auth_secret SSchool auth secret string n/a yes
sschool_chart_version SSchool Helm chart version string n/a yes
sschool_dns_prefix SSchool DNS prefix. Final DNS name will be .<root_domain_name> string n/a yes
sschool_oauth_client_id SSchool OAuth client ID string n/a yes
sschool_oauth_client_secret SSchool OAuth client secret string n/a yes

Outputs

Name Description
dns_ns The Zone NS

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published