From 2b2b5d30c746aa55532f0ca84d26b5a07529e8e4 Mon Sep 17 00:00:00 2001 From: Romain Paquet Date: Wed, 31 Dec 2025 00:32:37 +0100 Subject: [PATCH] migrate rpqt.fr domain to OVH --- infra/dns.tf | 58 +++++++++++------------------------- infra/templates/rpqt.fr.zone | 31 +++++++++++++++++++ 2 files changed, 49 insertions(+), 40 deletions(-) create mode 100644 infra/templates/rpqt.fr.zone diff --git a/infra/dns.tf b/infra/dns.tf index ae472b9..a2f3ca7 100644 --- a/infra/dns.tf +++ b/infra/dns.tf @@ -1,47 +1,17 @@ -data "gandi_livedns_domain" "rpqt_fr" { - name = "rpqt.fr" -} - -resource "gandi_livedns_record" "rpqt_fr_radicle_a" { - zone = data.gandi_livedns_domain.rpqt_fr.id - name = "radicle" - type = "A" - ttl = 10800 - values = [ - hcloud_server.crocus_server.ipv4_address, - ] -} - -resource "gandi_livedns_record" "rpqt_fr_radicle_aaaa" { - zone = data.gandi_livedns_domain.rpqt_fr.id - name = "radicle" - type = "AAAA" - ttl = 10800 - values = [ - hcloud_server.crocus_server.ipv6_address, - ] -} - -resource "gandi_livedns_record" "rpqt_fr_cloud_a" { - zone = data.gandi_livedns_domain.rpqt_fr.id - name = "cloud" - type = "A" - ttl = 10800 - values = local.verbena_ipv4_addresses -} - -resource "gandi_livedns_record" "rpqt_fr_cloud_aaaa" { - zone = data.gandi_livedns_domain.rpqt_fr.id - name = "cloud" - type = "AAAA" - ttl = 10800 - values = local.verbena_ipv6_addresses -} - data "ovh_vps" "verbena_vps" { service_name = "vps-7e78bac2.vps.ovh.net" } +data "ovh_domain_zone" "rpqt_fr" { + name = "rpqt.fr" +} + +resource "ovh_domain_zone_import" "rpqt_fr_import" { + zone_name = "rpqt.fr" + zone_file = local.rpqt_fr_zone_file +} + + data "ovh_domain_zone" "turifer_dev" { name = "turifer.dev" } @@ -62,5 +32,13 @@ locals { verbena_ipv4_addresses = local.verbena_ipv4_addresses verbena_ipv6_addresses = local.verbena_ipv6_addresses }) + + rpqt_fr_zone_file = templatefile("./templates/turifer.dev.zone", { + crocus_ipv4_address = hcloud_server.crocus_server.ipv4_address + crocus_ipv6_address = hcloud_server.crocus_server.ipv6_address + + verbena_ipv4_addresses = local.verbena_ipv4_addresses + verbena_ipv6_addresses = local.verbena_ipv6_addresses + }) } diff --git a/infra/templates/rpqt.fr.zone b/infra/templates/rpqt.fr.zone new file mode 100644 index 0000000..99a7834 --- /dev/null +++ b/infra/templates/rpqt.fr.zone @@ -0,0 +1,31 @@ +$TTL 3600 +@ IN SOA dns100.ovh.net. tech.ovh.net. (2026010123 86400 3600 3600000 60) + IN NS dns100.ovh.net. + IN NS ns100.ovh.net. + +rpqt.fr. 3000 IN TXT "hosted-email-verify=pgeaq3bp" +rpqt.fr. 3000 IN MX 10 aspmx1.migadu.com. +rpqt.fr. 3000 IN MX 20 aspmx2.migadu.com. +rpqt.fr. 3000 IN TXT "v=spf1 include:spf.migadu.com -all" +key1._domainkey.rpqt.fr. 3000 IN CNAME key1.rpqt.fr._domainkey.migadu.com. +key2._domainkey.rpqt.fr. 3000 IN CNAME key2.rpqt.fr._domainkey.migadu.com. +key3._domainkey.rpqt.fr. 3000 IN CNAME key3.rpqt.fr._domainkey.migadu.com. +_dmarc.rpqt.fr. 3000 IN TXT "v=DMARC1; p=quarantine;" +autoconfig.rpqt.fr. 3000 IN CNAME autoconfig.migadu.com. +_autodiscover._tcp.rpqt.fr. 3000 IN SRV 0 1 443 autodiscover.migadu.com. +_submissions._tcp.rpqt.fr. 3000 IN SRV 0 1 465 smtp.migadu.com. +_imaps._tcp.rpqt.fr. 3000 IN SRV 0 1 993 imap.migadu.com. +_pop3s._tcp.rpqt.fr. 3000 IN SRV 0 1 995 pop.migadu.com. + +@ 10800 IN A 46.23.81.157 +@ 10800 IN AAAA 2a03:6000:1813:1337::157 + +%{ for addr in verbena_ipv4_addresses ~} +cloud 10800 IN A ${addr} +%{ endfor ~} +%{ for addr in verbena_ipv6_addresses ~} +cloud 10800 IN AAAA ${addr} +%{ endfor ~} + +radicle 10800 IN A ${crocus_ipv4_address} +radicle 10800 IN AAAA ${crocus_ipv6_address}