diff --git a/terraform/.terraform.lock.hcl b/terraform/.terraform.lock.hcl index 15f0a411..b73849c8 100644 --- a/terraform/.terraform.lock.hcl +++ b/terraform/.terraform.lock.hcl @@ -2,38 +2,18 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/cloudflare/cloudflare" { - version = "4.52.7" - constraints = "4.52.7" + version = "5.20.0" hashes = [ - "h1:+O72J3QYiZtYmYYZM/Eh0f4NNfl1BvjX1eju43qTQsQ=", - "h1:0oqjYIPXcXh7XiDiKI085cHDYQQ5mh8kDl9dmBtvtog=", - "h1:4b4ESb87MGv5bnadgYe7sK5rEkKMZhbkQcwPubQTsR4=", - "h1:6mTr3eA1Ddb348lLmJuyvn98z4KF+ejqaUEJ76D1rzQ=", - "h1:9/3YH+9k9HqsvFtbmBf7SO2+xqZeZrXNKzLkjNuhUEA=", - "h1:Jcq4tBWgyH4/2JsojNBSRaN0mcItVMchO+lynonrlqc=", - "h1:Y4Vv/2RdP0Q+uxqhOxzOdKxuuEMjXPDcU0vPc5bCQzI=", - "h1:a0gW8FBKsbP9Fi0HEDoy49WIbEWVHk9+BR4/iwuBdDQ=", - "h1:gElv6iqJtg8OKN77gbw+MjrkrQmJHPkkMEi1J+0xkpU=", - "h1:oslXUugD/NQ+duJgT4BhKQyfGbuFOANknMvR73fiOeM=", - "h1:pPItIWii5oymR+geZB219ROSPuSODPLTlM4S/u8xLvM=", - "h1:u67GWw8GwD9NDlDzp9Y5VRnSQGcCrE8rSpkGPaBpDl0=", - "h1:uUUa9dY0XQOycI8pxg16PFFtL0WCTi9uEJz8trTQ7pU=", - "h1:y3rV8KF2q6GEMANNlf5EkKJurlfbKlIKpjGcdxoy7pQ=", - "zh:0c904ce31a4c6c4a5b3bf7ff1560e77c0cc7e2450c8553ded8e8c90398e1418b", - "zh:36183d310c36373fe4cb936b83c595c6fd3b0a94bc7827f28e5789ccbf59752e", - "zh:556a568a6f0235e8f41647de9e4d3a1e7b1d6502df8b19b54ec441f1c653ea10", - "zh:633ebbd5b0245e75e500ef9be4d9e62288f97e8da3baaa51323892a786d90285", - "zh:6acfe60cf52a65ba8f044f748548d2119e7f4fd7f8ebcb14698960d87c68f529", - "zh:890df766e9b839623b1f0437355032a3c006226a6c200cd911e15ee1a9014e9f", - "zh:904acc31ebb9d6ef68c792074b30532ee61bf515f19e0a3c75b46f126cca1f13", - "zh:a1d0a81246afc8750286d3f6fe7a8fbe6460dd2662407b28dbfbabb612e5fa9d", - "zh:a41a36fe253fc365fe2b7ffc749624688b2693b4634862fda161179ab100029f", - "zh:a7ef269e77ffa8715c8945a2c14322c7ff159ea44c15f62505f3cbb2cae3b32d", - "zh:b01aa3bed30610633b762df64332b26f8844a68c3960cebcb30f04918efc67fe", - "zh:b069cc2cd18cae10757df3ae030508eac8d55de7e49eda7a5e3e11f2f7fe6455", - "zh:b2d2c6313729ebb7465dceece374049e2d08bda34473901be9ff46a8836d42b2", - "zh:db0e114edaf4bc2f3d4769958807c83022bfbc619a00bdf4c4bd17faa4ab2d8b", - "zh:ecc0aa8b9044f664fd2aaf8fa992d976578f78478980555b4b8f6148e8d1a5fe", + "h1:nmveOYLys78FN79BbuVwrM2D/9TI1BRb7KtelEyUK7o=", + "zh:33f8b477009d88603ea9db6380a01be902478f2132ba4bc0f32120af4794e848", + "zh:37b2e6b3e25436d26863720a97c8620c16551a8748d954c887776e3647548138", + "zh:6a592e20f925548fe5bbdac87c9b5f244eaaaa57d8da29c585a92f19b2459d4c", + "zh:860bfc66eec97ec5c25ddf54d6c4dc6b0a5b07e97532faeab338549bd6867292", + "zh:91f6140b583e5b1e707d91a02cda676ed7ae0f49ec67a92e035b0e3c08cec7e4", + "zh:9db34266400425f4644563be35b4791e7e126664b5eaeee52379043da7841b15", + "zh:c05f332434164f35bd4366a7550184fd1fbbb57d0522dfe7fdf16898e9e5611b", + "zh:f809ab383cca0a5f83072981c64208cbd7fa67e986a86ee02dd2c82333221e32", + "zh:f8da53035b40c4df1258d7cf564d93a6289c2f55554d0dd05a681f25a0c67f8c", ] } diff --git a/terraform/main.tf b/terraform/main.tf index 11a1716c..108bfd40 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -17,8 +17,7 @@ terraform { source = "heroku/heroku" } cloudflare = { - source = "cloudflare/cloudflare" - version = "4.52.7" + source = "cloudflare/cloudflare" } } } diff --git a/terraform/www.tf b/terraform/www.tf index f1ad6868..15623072 100644 --- a/terraform/www.tf +++ b/terraform/www.tf @@ -4,53 +4,69 @@ locals { } } -data "cloudflare_accounts" "this" { - name = "Kitware" +data "cloudflare_account" "this" { + # Kitware + account_id = "b7ba799b50a979650d3362e965257042" } resource "cloudflare_pages_project" "www" { - account_id = data.cloudflare_accounts.this.accounts[0].id + account_id = data.cloudflare_account.this.id name = "geodatalytics" production_branch = "master" - source { + source = { type = "github" - config { + config = { production_branch = "master" owner = "OpenGeoscience" repo_name = "geodatalytics" + path_includes = ["web/*"] } } - build_config { + build_config = { build_caching = true root_dir = "web" build_command = "npm run build" destination_dir = "dist" } - deployment_configs { - preview { - environment_variables = local.www_env_vars + deployment_configs = { + preview = { + env_vars = { + for k, v in local.www_env_vars : k => { + type = "plain_text" + value = v + } + } } - production { - environment_variables = merge( - local.www_env_vars, + production = { + env_vars = merge( + { + for k, v in local.www_env_vars : k => { + type = "plain_text" + value = v + } + }, { - VITE_SENTRY_DSN = "https://648b9234b2fc2df0dd59192ddb0111f7@o267860.ingest.us.sentry.io/4511108704501760" + VITE_SENTRY_DSN = { + type = "plain_text" + value = "https://648b9234b2fc2df0dd59192ddb0111f7@o267860.ingest.us.sentry.io/4511108704501760" + } + SENTRY_AUTH_TOKEN = { + type = "secret_text" + value = var.SENTRY_AUTH_TOKEN + } }, ) - secrets = { - SENTRY_AUTH_TOKEN = var.SENTRY_AUTH_TOKEN - } } } } resource "cloudflare_pages_domain" "www" { - account_id = data.cloudflare_accounts.this.accounts[0].id + account_id = data.cloudflare_account.this.id project_name = cloudflare_pages_project.www.name - domain = aws_route53_record.www.fqdn + name = aws_route53_record.www.fqdn } resource "aws_route53_record" "www" {