diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9a786e6dfb750d0af377ffe02537b4ceb83c0513..882de1e0556e5a044d515aaa3ab37a12c0528247 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -25,11 +25,11 @@ variables: - $API_DOMAIN_PATH name: "${CI_JOB_NAME}_${CI_JOB_ID}" #when: on_failure - expire_in: 1 month + expire_in: 1 week script: - export GOOGLE_APPLICATION_CREDENTIALS=${GOOGLE_CLOUD_SERVICE_ACCOUNT} - terraform/environments/scripts/create-or-update-env.sh $ENVIRONMENT_ID $CI_COMMIT_SHA - - echo "$(terraform/environments/scripts/get-api-domain.sh)" > $API_DOMAIN_PATH + - echo "$(terraform/environments/scripts/get-output.sh api_domain)" > $API_DOMAIN_PATH resource_group: $ENVIRONMENT_ID # never execute terraform in parallel on the same environment interruptible: false diff --git a/terraform/common/init.tf b/terraform/common/init.tf index 93d6ec7e6346c7294812a0610d3d6ddca1526d07..817551e91120a67bf80ac464c6ee4a7b9eab4e6a 100644 --- a/terraform/common/init.tf +++ b/terraform/common/init.tf @@ -15,9 +15,9 @@ data "terraform_remote_state" "holi_infra_state" { # provider google including beta features provider "google" { - region = "europe-north1" + region = local.default_region } provider "google-beta" { - region = "europe-north1" + region = local.default_region } diff --git a/terraform/common/vars.tf b/terraform/common/vars.tf new file mode 100644 index 0000000000000000000000000000000000000000..1c12ce4019d313359dfe5c31ca6df20b8d0cd440 --- /dev/null +++ b/terraform/common/vars.tf @@ -0,0 +1,3 @@ +locals { + default_region = data.terraform_remote_state.holi_infra_state.outputs.default_region +} diff --git a/terraform/environments/deployment.tf b/terraform/environments/deployment.tf index ae1416c7541bc50ec07c460a962a4339f7e65b16..db00dbe8ee765b3adb1e335227a2cc77ad84095f 100644 --- a/terraform/environments/deployment.tf +++ b/terraform/environments/deployment.tf @@ -33,7 +33,7 @@ variable "image_tag" { resource "google_cloud_run_service" "geo_api" { project = data.terraform_remote_state.holi_infra_state.outputs.shared_project_id name = random_id.main.hex - location = "europe-north1" # finland, low CO2 emissions + location = local.default_region # finland, low CO2 emissions # https://github.com/hashicorp/terraform-provider-google/issues/5898 autogenerate_revision_name = true diff --git a/terraform/environments/init.tf b/terraform/environments/init.tf index 3e00eead9686a00ede5736c0501fba5e403f295b..bfce8573c6da5c0d9d87f40eec646caef05ce8ef 100644 --- a/terraform/environments/init.tf +++ b/terraform/environments/init.tf @@ -23,9 +23,9 @@ data "terraform_remote_state" "holi_geo_api_common_state" { # provider google including beta features provider "google" { - region = "europe-north1" + region = local.default_region } provider "google-beta" { - region = "europe-north1" + region = local.default_region } diff --git a/terraform/environments/scripts/get-api-domain.sh b/terraform/environments/scripts/get-api-domain.sh deleted file mode 100755 index 63451fcec2e41baf24a5d48a5abfbdf076891c69..0000000000000000000000000000000000000000 --- a/terraform/environments/scripts/get-api-domain.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env sh - -# exit when any command fails -set -ex - -cd terraform/environments > /dev/null - -terraform output -raw api_domain diff --git a/terraform/environments/scripts/get-output.sh b/terraform/environments/scripts/get-output.sh new file mode 100755 index 0000000000000000000000000000000000000000..2e1d9b65003d2dd4e752e54bd1cf2234384af85a --- /dev/null +++ b/terraform/environments/scripts/get-output.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env sh + +# exit when any command fails +set -ex + +: "${1?"Usage: $0 OUTPUT_NAME"}" + +cd "$(dirname "$0")"/.. > /dev/null + +terraform output -raw "$1" diff --git a/terraform/environments/vars.tf b/terraform/environments/vars.tf index 750dfce7bebd96d2a0397a0e01fc6e74b780a4a8..f7e2e18edab88a24999ccf39486b28863c108ea9 100644 --- a/terraform/environments/vars.tf +++ b/terraform/environments/vars.tf @@ -5,4 +5,6 @@ locals { # the dns name can be at most 64 chars in total dns_name = "${trimsuffix(substr(local.environment, 0, 34), ".-")}.${data.terraform_remote_state.holi_geo_api_common_state.outputs.dns_geo_api_domain}" + + default_region = data.terraform_remote_state.holi_infra_state.outputs.default_region }