#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"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"-
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
-
(Optional) First create the project. To do that, run the corresponding TF Module
tf apply -auto-approve -var-file=dev.tfvars -target=module.project
-
Then create the repository. To do that, run the corresponding TF Module
tf apply -auto-approve -var-file=dev.tfvars
| Name | Version |
|---|---|
| terraform | >= 1.9.8 |
| ~> 6.0 | |
| google-beta | ~> 6.0 |
| helm | ~> 2.0 |
| kubernetes | ~> 2.0 |
| Name | Version |
|---|---|
| 6.26.0 |
| 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 |
| Name | Type |
|---|---|
| google_client_config.default | data source |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| api_enabled_services | The list of apis necessary for the project | list(string) |
[ |
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 |
| Name | Description |
|---|---|
| dns_ns | The Zone NS |