Skip to content

Commit 72f1e2d

Browse files
committed
Setup codezero.build as domain for the landing page
1 parent 2e9cb77 commit 72f1e2d

4 files changed

Lines changed: 62 additions & 17 deletions

File tree

modules/docker/cygnus/cygnus.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ locals {
3131
"NEXT_PUBLIC_GA_MEASUREMENT_ID=${sensitive(data.gitlab_project_variable.ga_measurement_id.value)}",
3232

3333
# Proxy
34-
"VIRTUAL_HOST=${var.web_url}"
34+
"VIRTUAL_HOST=${join(",", var.web_urls)}"
3535
]
3636
}
3737

modules/docker/cygnus/variables.tf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@ variable "docker_proxy_network_id" {
22
type = string
33
}
44

5-
variable "web_url" {
6-
type = string
5+
variable "web_urls" {
6+
type = list(string)
77
}

system/administration/main.tf

Lines changed: 29 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,27 @@ terraform {
1111
}
1212
}
1313

14-
data "cloudflare_zones" "main_domain" {
14+
data "cloudflare_zones" "code0_tech_domain" {
1515
account = {
1616
id = var.cloudflare_account_id
1717
}
1818
name = "code0.tech"
1919
}
2020

21+
data "cloudflare_zones" "codezero_build_domain" {
22+
account = {
23+
id = var.cloudflare_account_id
24+
}
25+
name = "codezero.build"
26+
}
27+
2128
module "proxy" {
2229
source = "../../modules/docker/proxy"
2330

2431
certificate_hostnames = [
2532
"outline.code0.tech",
26-
"code0.tech"
33+
"code0.tech",
34+
"codezero.build"
2735
]
2836
}
2937

@@ -37,7 +45,7 @@ module "outline" {
3745
module "cygnus" {
3846
source = "../../modules/docker/cygnus"
3947

40-
web_url = "code0.tech"
48+
web_urls = ["code0.tech", "codezero.build"]
4149
docker_proxy_network_id = module.proxy.docker_proxy_network_id
4250
}
4351

@@ -49,14 +57,14 @@ resource "cloudflare_dns_record" "server_ip" {
4957
name = "server_administration.code0.tech"
5058
type = "A"
5159
ttl = 1
52-
zone_id = data.cloudflare_zones.main_domain.result[0].id
60+
zone_id = data.cloudflare_zones.code0_tech_domain.result[0].id
5361
content = var.server_administration_ip
5462
proxied = true
5563

5664
comment = "Managed by Terraform"
5765
}
5866

59-
resource "cloudflare_dns_record" "server_cname" {
67+
resource "cloudflare_dns_record" "server_cname_code0_tech" {
6068
for_each = toset([
6169
"code0.tech",
6270
"outline.code0.tech",
@@ -65,7 +73,22 @@ resource "cloudflare_dns_record" "server_cname" {
6573
name = each.value
6674
type = "CNAME"
6775
ttl = 1
68-
zone_id = data.cloudflare_zones.main_domain.result[0].id
76+
zone_id = data.cloudflare_zones.code0_tech_domain.result[0].id
77+
content = cloudflare_dns_record.server_ip.name
78+
proxied = true
79+
80+
comment = "Managed by Terraform"
81+
}
82+
83+
resource "cloudflare_dns_record" "server_cname_codezero_build" {
84+
for_each = toset([
85+
"codezero.build",
86+
])
87+
88+
name = each.value
89+
type = "CNAME"
90+
ttl = 1
91+
zone_id = data.cloudflare_zones.codezero_build_domain.result[0].id
6992
content = cloudflare_dns_record.server_ip.name
7093
proxied = true
7194

system/domain/main.tf

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,36 @@ terraform {
1111
}
1212
}
1313

14-
data "cloudflare_zones" "main_domain" {
14+
data "cloudflare_zones" "code0_tech_domain" {
1515
account = {
1616
id = var.cloudflare_account_id
1717
}
1818
name = "code0.tech"
1919
}
2020

21-
resource "cloudflare_zone_setting" "zone_settings" {
21+
data "cloudflare_zones" "codezero_build_domain" {
22+
account = {
23+
id = var.cloudflare_account_id
24+
}
25+
name = "codezero.build"
26+
}
27+
28+
resource "cloudflare_zone_setting" "zone_settings_code0_tech" {
29+
for_each = {
30+
ssl = "strict"
31+
}
32+
33+
zone_id = data.cloudflare_zones.code0_tech_domain.result[0].id
34+
setting_id = each.key
35+
value = each.value
36+
}
37+
38+
resource "cloudflare_zone_setting" "zone_settings_codezero_build" {
2239
for_each = {
2340
ssl = "strict"
2441
}
2542

26-
zone_id = data.cloudflare_zones.main_domain.result[0].id
43+
zone_id = data.cloudflare_zones.codezero_build_domain.result[0].id
2744
setting_id = each.key
2845
value = each.value
2946
}
@@ -32,7 +49,7 @@ module "docs_pages" {
3249
source = "../../modules/gitlab/pages_domain"
3350

3451
cloudflare_domain_name = "docs.code0.tech"
35-
cloudflare_zone_id = data.cloudflare_zones.main_domain.result[0].id
52+
cloudflare_zone_id = data.cloudflare_zones.code0_tech_domain.result[0].id
3653
gitlab_project_path = "code0-tech/development/telescopium"
3754
gitlab_unique_pages_url = "docs-code0-tech-c91f18c0d2259c041bf05138b194e6bb082059fe38eff2e.gitlab.io"
3855
}
@@ -41,7 +58,7 @@ resource "cloudflare_dns_record" "github_verification" {
4158
name = "_github-challenge-code0-tech-org.code0.tech"
4259
type = "TXT"
4360
ttl = 1
44-
zone_id = data.cloudflare_zones.main_domain.result[0].id
61+
zone_id = data.cloudflare_zones.code0_tech_domain.result[0].id
4562
content = "e3447326f4"
4663
comment = "Managed by Terraform"
4764
}
@@ -50,7 +67,7 @@ resource "cloudflare_dns_record" "strato_spf" {
5067
name = "code0.tech"
5168
type = "TXT"
5269
ttl = 1
53-
zone_id = data.cloudflare_zones.main_domain.result[0].id
70+
zone_id = data.cloudflare_zones.code0_tech_domain.result[0].id
5471
content = "v=spf1 redirect=smtp.strato.de"
5572
comment = "Managed by Terraform"
5673
}
@@ -59,16 +76,21 @@ resource "cloudflare_dns_record" "strato_dkim" {
5976
name = "strato-dkim-0002._domainkey.code0.tech"
6077
type = "CNAME"
6178
ttl = 1
62-
zone_id = data.cloudflare_zones.main_domain.result[0].id
79+
zone_id = data.cloudflare_zones.code0_tech_domain.result[0].id
6380
content = "strato-dkim-0002._domainkey.strato.de"
6481
comment = "Managed by Terraform"
6582
}
6683

6784
resource "cloudflare_ruleset" "force_https" {
85+
for_each = toset([
86+
data.cloudflare_zones.code0_tech_domain.result[0].id,
87+
data.cloudflare_zones.codezero_build_domain.result[0].id
88+
])
89+
6890
kind = "zone"
6991
name = "force_https"
7092
phase = "http_request_dynamic_redirect"
71-
zone_id = data.cloudflare_zones.main_domain.result[0].id
93+
zone_id = each.value
7294

7395
rules = [
7496
{

0 commit comments

Comments
 (0)