archlinux.tf 34.5 KB
Newer Older
1
terraform {
2
  backend "pg" {
3
    schema_name = "terraform_remote_state_stage1"
4
  }
5
6
}

7
8
9
10
11
12
13
data "external" "vault_hetzner" {
  program = [
    "${path.module}/../misc/get_key.py", "misc/vault_hetzner.yml",
    "hetzner_cloud_api_key",
    "hetzner_dns_api_key",
    "--format", "json"
  ]
14
}
15

16
17
data "hcloud_image" "archlinux" {
  with_selector = "custom_image=archlinux"
18
19
  most_recent   = true
  with_status   = ["available"]
20
21
22
}

provider "hcloud" {
23
24
25
26
27
28
29
30
31
  token = data.external.vault_hetzner.result.hetzner_cloud_api_key
}

provider "hetznerdns" {
  apitoken = data.external.vault_hetzner.result.hetzner_dns_api_key
}

resource "hetznerdns_zone" "archlinux" {
  name = "archlinux.org"
32
  ttl  = 86400
33
34
35
36
}

resource "hetznerdns_zone" "pkgbuild" {
  name = "pkgbuild.com"
37
  ttl  = 86400
38
39
40
41
}

resource "hetznerdns_record" "pkgbuild_com_origin_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
42
43
44
  name    = "@"
  value   = "78.46.178.133"
  type    = "A"
45
46
47
48
}

resource "hetznerdns_record" "pkgbuild_com_origin_aaaa" {
  zone_id = hetznerdns_zone.pkgbuild.id
49
50
51
  name    = "@"
  value   = "2a01:4f8:c2c:51e2::1"
  type    = "AAAA"
52
53
54
55
}

resource "hetznerdns_record" "pkgbuild_com_origin_caa" {
  zone_id = hetznerdns_zone.pkgbuild.id
56
57
58
  name    = "@"
  value   = "0 issue \"letsencrypt.org\""
  type    = "CAA"
59
60
61
62
}

resource "hetznerdns_record" "pkgbuild_com_origin_mx" {
  zone_id = hetznerdns_zone.pkgbuild.id
63
64
65
  name    = "@"
  value   = "0 ."
  type    = "MX"
66
67
68
69
}

resource "hetznerdns_record" "pkgbuild_com_origin_ns3" {
  zone_id = hetznerdns_zone.pkgbuild.id
70
71
72
  name    = "@"
  value   = "robotns3.second-ns.com."
  type    = "NS"
73
74
75
76
}

resource "hetznerdns_record" "pkgbuild_com_origin_ns2" {
  zone_id = hetznerdns_zone.pkgbuild.id
77
78
79
  name    = "@"
  value   = "robotns2.second-ns.de."
  type    = "NS"
80
81
82
83
}

resource "hetznerdns_record" "pkgbuild_com_origin_ns1" {
  zone_id = hetznerdns_zone.pkgbuild.id
84
85
86
  name    = "@"
  value   = "ns1.first-ns.de."
  type    = "NS"
87
88
}

89
90
91
92
93
94
95
96
97
# TODO: Commented currently as we have no idea how to handle SOA stuff with Terraform:
# https://github.com/timohirt/terraform-provider-hetznerdns/issues/20
# https://gitlab.archlinux.org/archlinux/infrastructure/-/merge_requests/62#note_4040
# resource "hetznerdns_record" "pkgbuild_com_origin_soa" {
#   zone_id = hetznerdns_zone.pkgbuild.id
#   name = "@"
#   value = "ns1.first-ns.de. dns.hetzner.com. 2020090604 14400 1800 604800 86400"
#   type = "SOA"
# }
98
99
100

resource "hetznerdns_record" "pkgbuild_com_origin_txt" {
  zone_id = hetznerdns_zone.pkgbuild.id
101
102
103
  name    = "@"
  value   = "\"v=spf1 -all\""
  type    = "TXT"
104
105
106
107
}

resource "hetznerdns_record" "pkgbuild_com_wildcard_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
108
109
110
  name    = "*"
  value   = "78.46.178.133"
  type    = "A"
111
112
113
114
}

resource "hetznerdns_record" "pkgbuild_com_wildcard_aaaa" {
  zone_id = hetznerdns_zone.pkgbuild.id
115
116
117
  name    = "*"
  value   = "2a01:4f8:c2c:51e2::1"
  type    = "AAAA"
118
119
120
121
}

resource "hetznerdns_record" "pkgbuild_com_mirror_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
122
123
124
  name    = "mirror"
  value   = "78.46.209.220"
  type    = "A"
125
126
127
128
}

resource "hetznerdns_record" "pkgbuild_com_mirror_aaaa" {
  zone_id = hetznerdns_zone.pkgbuild.id
129
130
131
  name    = "mirror"
  value   = "2a01:4f8:c2c:c62f::1"
  type    = "AAAA"
132
133
}

Jelle van der Waa's avatar
Jelle van der Waa committed
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
resource "hetznerdns_record" "pkgbuild_com_america_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
  name    = "america.mirror"
  value   = "143.244.34.62"
  type    = "A"
}

resource "hetznerdns_record" "pkgbuild_com_asia_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
  name    = "asia.mirror"
  value   = "84.17.57.98"
  type    = "A"
}

resource "hetznerdns_record" "pkgbuild_com_europe_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
  name    = "europe.mirror"
  value   = "89.187.191.12"
  type    = "A"
}

155
resource "hetznerdns_record" "pkgbuild_com_repro1_a" {
156
  zone_id = hetznerdns_zone.pkgbuild.id
157
  name    = "repro1"
158
159
  value   = "147.75.81.79"
  type    = "A"
160
161
}

162
resource "hetznerdns_record" "pkgbuild_com_repro1_aaaa" {
163
  zone_id = hetznerdns_zone.pkgbuild.id
164
  name    = "repro1"
165
166
  value   = "2604:1380:2001:4500::1"
  type    = "AAAA"
167
168
}

Jelle van der Waa's avatar
Jelle van der Waa committed
169
170
171
172
173
174
175
resource "hetznerdns_record" "pkgbuild_com_repro2_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
  name    = "repro2"
  value   = "212.102.38.209"
  type    = "A"
}

176
177
resource "hetznerdns_record" "pkgbuild_com_www_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
178
179
180
  name    = "www"
  value   = "78.46.178.133"
  type    = "A"
181
182
183
184
}

resource "hetznerdns_record" "pkgbuild_com_www_aaaa" {
  zone_id = hetznerdns_zone.pkgbuild.id
185
186
187
  name    = "www"
  value   = "2a01:4f8:c2c:51e2::1"
  type    = "AAAA"
188
189
190
191
}

resource "hetznerdns_record" "archlinux_org_origin_a" {
  zone_id = hetznerdns_zone.archlinux.id
192
193
194
  name    = "@"
  value   = "138.201.81.199"
  type    = "A"
195
196
197
198
}

resource "hetznerdns_record" "archlinux_org_origin_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
199
200
201
  name    = "@"
  value   = "2a01:4f8:172:1d86::1"
  type    = "AAAA"
202
203
204
205
}

resource "hetznerdns_record" "archlinux_org_origin_caa" {
  zone_id = hetznerdns_zone.archlinux.id
206
207
208
  name    = "@"
  value   = "0 issue \"letsencrypt.org\""
  type    = "CAA"
209
210
211
212
}

resource "hetznerdns_record" "archlinux_org_origin_mx" {
  zone_id = hetznerdns_zone.archlinux.id
213
  name    = "@"
214
  ttl     = 600
Frederik Schwan's avatar
Frederik Schwan committed
215
  value   = "10 mail"
216
  type    = "MX"
217
218
219
220
}

resource "hetznerdns_record" "archlinux_org_origin_ns3" {
  zone_id = hetznerdns_zone.archlinux.id
221
222
223
  name    = "@"
  value   = "robotns3.second-ns.com."
  type    = "NS"
224
225
226
227
}

resource "hetznerdns_record" "archlinux_org_origin_ns2" {
  zone_id = hetznerdns_zone.archlinux.id
228
229
230
  name    = "@"
  value   = "robotns2.second-ns.de."
  type    = "NS"
231
232
233
234
}

resource "hetznerdns_record" "archlinux_org_origin_ns1" {
  zone_id = hetznerdns_zone.archlinux.id
235
236
237
  name    = "@"
  value   = "ns1.first-ns.de."
  type    = "NS"
238
239
}

240
241
242
243
244
245
246
247
248
# TODO: Commented currently as we have no idea how to handle SOA stuff with Terraform:
# https://github.com/timohirt/terraform-provider-hetznerdns/issues/20
# https://gitlab.archlinux.org/archlinux/infrastructure/-/merge_requests/62#note_4040
#; resource "hetznerdns_record" "archlinux_org_origin_soa" {
#   zone_id = hetznerdns_zone.archlinux.id
#   name = "@"
#   value = "ns1.first-ns.de. ibiru.archlinux.org. 2020072502 7200 900 1209600 86400"
#   type = "SOA"
# }
249
250
251

resource "hetznerdns_record" "archlinux_org_origin_apollo_domainkey_txt" {
  zone_id = hetznerdns_zone.archlinux.id
252
  name    = "apollo._domainkey"
253
  ttl     = 600
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
254
  value   = "\"v=DKIM1; k=rsa; s=email; \" \"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvZIf8SbjC53RDCbMjTEpo0FCuMSShlKWdwWjY1J+RpT3CL/21z4nXqVBYF1orkUScH8Nlabocraqk8lmpNBlKCUV77lk9mRsLkWhg+XjhvQXL1xfH8zAg1CntEZuaIMLUQ+5Gkw6BlO1qDRkmXS9UtV8Jt1rhjRtSrgN5lhztOCbQLRAtzKty/nMeClqsfT3nL2hbDeh+b/rYc\" \"l2veZAqiGcR2/0bnKlt+Nb5lOBY3oZiYLmZ5g+l9UXVjGUq9jGAooIWpQvuRPmin3RX31kXfr1A+mDBEexiOL1dDST2Zx7i9puXbqYH0u0IxBpweHCO5UqWx52mdXBuhs+DCo/JoZAHU/6eRzK+Sps50LgLFSzJJNfGXk5PUKdww2GHbkK3mCYfoFCpB0SADzl42+1w6YZk1yXoPdOHtChfQpCgjtddf1W8Q09pYO1/bn4l0erdFQsWb1K\" \"4wEVOCn+hHWbV42V+J3TyGxQ4AM8KQ1OPvUEabyTyqcO4evBaH7/S2wA91Z9QDjTbKmlNovs5zoxuOM/mPGPUuQMvhjoAP+rg4AwJ3Xwd3GgUcqQflcokayUYdp7F3aKp1NWAR9ibseU/XBYsSF8Ucjqzf4DJFUfrgjHUr97st7g4HUCyXrQO4tyE0ytiX8OFjjIszWLmF+B7Vup9O7k+dNz2Vj2Vyzkq1UCAwEAAQ==\" "
255
  type    = "TXT"
256
257
258
259
}

resource "hetznerdns_record" "archlinux_org_accounts_a" {
  zone_id = hetznerdns_zone.archlinux.id
260
261
262
  name    = "accounts"
  value   = hcloud_server.accounts.ipv4_address
  type    = "A"
263
264
265
266
}

resource "hetznerdns_record" "archlinux_org_accounts_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
267
268
269
  name    = "accounts"
  value   = hcloud_server.accounts.ipv6_address
  type    = "AAAA"
270
271
272
273
}

resource "hetznerdns_record" "archlinux_org_apollo_a" {
  zone_id = hetznerdns_zone.archlinux.id
274
  name    = "apollo"
275
  ttl     = 600
276
277
  value   = "138.201.81.199"
  type    = "A"
278
279
280
281
}

resource "hetznerdns_record" "archlinux_org_apollo_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
282
  name    = "apollo"
283
  ttl     = 600
284
285
  value   = "2a01:4f8:172:1d86::1"
  type    = "AAAA"
286
287
288
289
}

resource "hetznerdns_record" "archlinux_org_archive_gemini_a" {
  zone_id = hetznerdns_zone.archlinux.id
290
291
292
  name    = "archive.gemini"
  value   = "49.12.124.107"
  type    = "A"
293
294
295
296
}

resource "hetznerdns_record" "archlinux_org_aur_a" {
  zone_id = hetznerdns_zone.archlinux.id
297
298
299
  name    = "aur"
  value   = hcloud_server.aur.ipv4_address
  type    = "A"
300
301
302
303
}

resource "hetznerdns_record" "archlinux_org_aur_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
304
305
306
  name    = "aur"
  value   = hcloud_server.aur.ipv6_address
  type    = "AAAA"
307
308
309
310
}

resource "hetznerdns_record" "archlinux_org_aur_mx" {
  zone_id = hetznerdns_zone.archlinux.id
311
  name    = "aur"
312
  ttl     = 600
313
  value   = "10 mail"
314
  type    = "MX"
315
316
317
318
}

resource "hetznerdns_record" "archlinux_org_aur_txt" {
  zone_id = hetznerdns_zone.archlinux.id
319
  name    = "aur"
320
  ttl     = 600
321
322
  value   = "\"v=spf1 a ?all\""
  type    = "TXT"
323
324
325
326
}

resource "hetznerdns_record" "archlinux_org_aur_dev_a" {
  zone_id = hetznerdns_zone.archlinux.id
327
328
329
  name    = "aur-dev"
  value   = hcloud_server.aur-dev.ipv4_address
  type    = "A"
330
331
332
333
}

resource "hetznerdns_record" "archlinux_org_aur_dev_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
334
335
336
  name    = "aur-dev"
  value   = hcloud_server.aur-dev.ipv6_address
  type    = "AAAA"
337
338
339
340
}

resource "hetznerdns_record" "archlinux_org_aur4_a" {
  zone_id = hetznerdns_zone.archlinux.id
341
342
343
  name    = "aur4"
  value   = "5.9.250.164"
  type    = "A"
344
345
346
347
}

resource "hetznerdns_record" "archlinux_org_aur4_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
348
349
350
  name    = "aur4"
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
351
352
353
354
}

resource "hetznerdns_record" "archlinux_org_bbs_a" {
  zone_id = hetznerdns_zone.archlinux.id
355
356
357
  name    = "bbs"
  value   = hcloud_server.bbs.ipv4_address
  type    = "A"
358
359
360
361
}

resource "hetznerdns_record" "archlinux_org_bbs_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
362
363
364
  name    = "bbs"
  value   = hcloud_server.bbs.ipv6_address
  type    = "AAAA"
365
366
367
368
}

resource "hetznerdns_record" "archlinux_org_bugs_a" {
  zone_id = hetznerdns_zone.archlinux.id
369
370
371
  name    = "bugs"
  value   = hcloud_server.bugs.ipv4_address
  type    = "A"
372
373
374
375
}

resource "hetznerdns_record" "archlinux_org_bugs_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
376
377
378
  name    = "bugs"
  value   = hcloud_server.bugs.ipv6_address
  type    = "AAAA"
379
380
381
382
}

resource "hetznerdns_record" "archlinux_org_dragon_a" {
  zone_id = hetznerdns_zone.archlinux.id
383
384
385
  name    = "dragon"
  value   = "195.201.167.210"
  type    = "A"
386
387
388
389
}

resource "hetznerdns_record" "archlinux_org_dragon_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
390
391
392
  name    = "dragon"
  value   = "2a01:4f8:13a:102a::2"
  type    = "AAAA"
393
394
395
396
}

resource "hetznerdns_record" "archlinux_org_gemini_a" {
  zone_id = hetznerdns_zone.archlinux.id
397
398
399
  name    = "gemini"
  value   = "49.12.124.107"
  type    = "A"
400
401
402
403
}

resource "hetznerdns_record" "archlinux_org_gemini_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
404
405
406
  name    = "gemini"
  value   = "2a01:4f8:242:5614::2"
  type    = "AAAA"
407
408
409
410
}

resource "hetznerdns_record" "archlinux_org_gitlab_a" {
  zone_id = hetznerdns_zone.archlinux.id
411
412
413
  name    = "gitlab"
  value   = hcloud_server.gitlab.ipv4_address
  type    = "A"
414
415
416
417
}

resource "hetznerdns_record" "archlinux_org_gitlab_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
418
419
420
  name    = "gitlab"
  value   = hcloud_server.gitlab.ipv6_address
  type    = "AAAA"
421
422
423
424
}

resource "hetznerdns_record" "archlinux_org_homedir_a" {
  zone_id = hetznerdns_zone.archlinux.id
425
426
427
  name    = "homedir"
  value   = hcloud_server.homedir.ipv4_address
  type    = "A"
428
429
430
431
}

resource "hetznerdns_record" "archlinux_org_homedir_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
432
433
434
  name    = "homedir"
  value   = hcloud_server.homedir.ipv6_address
  type    = "AAAA"
435
436
437
438
}

resource "hetznerdns_record" "archlinux_org_lists_a" {
  zone_id = hetznerdns_zone.archlinux.id
439
440
441
  name    = "lists"
  value   = "5.9.250.164"
  type    = "A"
442
443
444
445
}

resource "hetznerdns_record" "archlinux_org_lists_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
446
447
448
  name    = "lists"
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
449
450
451
452
}

resource "hetznerdns_record" "archlinux_org_lists_mx" {
  zone_id = hetznerdns_zone.archlinux.id
453
  name    = "lists"
454
  ttl     = 600
455
456
  value   = "10 luna"
  type    = "MX"
457
458
459
460
}

resource "hetznerdns_record" "archlinux_org_luna_a" {
  zone_id = hetznerdns_zone.archlinux.id
461
  name    = "luna"
462
  ttl     = 600
463
464
  value   = "5.9.250.164"
  type    = "A"
465
466
467
468
}

resource "hetznerdns_record" "archlinux_org_luna_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
469
  name    = "luna"
470
  ttl     = 600
471
472
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
473
474
475
476
}

resource "hetznerdns_record" "archlinux_org_luna_txt" {
  zone_id = hetznerdns_zone.archlinux.id
477
  name    = "luna._domainkey"
478
  ttl     = 600
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
479
  value   = "\"v=DKIM1; k=rsa; s=email; \" \"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvXrAPvtdX8Jrk4zmyk8w9T2zdAJGe7z0+4XHWWiuzH8Zse6S7oXiS9CVaPOsu0TZqHqhuclASU7qh0NXFwWyi2xRPyJOqH2Clu7vHS3j5F4TjURFOp4/EbA0iQu4rbItl4AU11z2pGSEj5SykUsrH+jjdqzNqAG9d4lNvkTs6RRzPF3KhhY+XljaeysEyDSS4ap4E0DYcduSIX\" \"oD1exFv4SEbXThD9PC1u81w4xusnmwmfHtR7aazeqPDP+S+FqDRy2woCaQb/VMbqMYVuWTVKJ2RxFyTKredOOV2c5kzih7GViwoetll/rTqO4aVbeir9K4f6YZg85dSQtVwEat7LV+zBnQwp3ivWkrIk8VEdSsCSaJlgattBiPHsfFFv1xw4qi3h+UvfCGgz35dtlnzd/noGhNARg0Z+kaMSTjy75V1mKx5sCH0o8nAX2XU8akJfLz58Vg\" \"kTx/sfealtwNA0gTy1t1jV8q0OF5RA0IeMRgCzeH2USOZI98W+EAUsGG5653Vzmp3FJRWp1tWJwRJ0M/aZ3ka/G1iTx3rNNcadVk+4q3gz3KnlAlun+m58y8pNWKjYuxmu9xkDRwM/33rv98j0R8HZO7HFL+1vjKkxSEuzmnTQ2O9F76/OsQoDPZ1Z6nJRvK8ts8PQr4ASKohby62+1F1M8U2Xn7u84dYLUCAwEAAQ==\" "
480
  type    = "TXT"
481
482
483
484
}

resource "hetznerdns_record" "archlinux_org_luna2_txt" {
  zone_id = hetznerdns_zone.archlinux.id
485
  name    = "luna2._domainkey"
486
  ttl     = 600
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
487
  value   = "\"v=DKIM1; k=rsa; s=email; \" \"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvXrAPvtdX8Jrk4zmyk8w9T2zdAJGe7z0+4XHWWiuzH8Zse6S7oXiS9CVaPOsu0TZqHqhuclASU7qh0NXFwWyi2xRPyJOqH2Clu7vHS3j5F4TjURFOp4/EbA0iQu4rbItl4AU11z2pGSEj5SykUsrH+jjdqzNqAG9d4lNvkTs6RRzPF3KhhY+XljaeysEyDSS4ap4E0DYcduSIX\" \"oD1exFv4SEbXThD9PC1u81w4xusnmwmfHtR7aazeqPDP+S+FqDRy2woCaQb/VMbqMYVuWTVKJ2RxFyTKredOOV2c5kzih7GViwoetll/rTqO4aVbeir9K4f6YZg85dSQtVwEat7LV+zBnQwp3ivWkrIk8VEdSsCSaJlgattBiPHsfFFv1xw4qi3h+UvfCGgz35dtlnzd/noGhNARg0Z+kaMSTjy75V1mKx5sCH0o8nAX2XU8akJfLz58Vg\" \"kTx/sfealtwNA0gTy1t1jV8q0OF5RA0IeMRgCzeH2USOZI98W+EAUsGG5653Vzmp3FJRWp1tWJwRJ0M/aZ3ka/G1iTx3rNNcadVk+4q3gz3KnlAlun+m58y8pNWKjYuxmu9xkDRwM/33rv98j0R8HZO7HFL+1vjKkxSEuzmnTQ2O9F76/OsQoDPZ1Z6nJRvK8ts8PQr4ASKohby62+1F1M8U2Xn7u84dYLUCAwEAAQ==\" "
488
  type    = "TXT"
489
490
491
492
}

resource "hetznerdns_record" "archlinux_org_mailman3_a" {
  zone_id = hetznerdns_zone.archlinux.id
493
494
495
  name    = "mailman3"
  value   = hcloud_server.mailman3.ipv4_address
  type    = "A"
496
497
498
499
}

resource "hetznerdns_record" "archlinux_org_master_key_a" {
  zone_id = hetznerdns_zone.archlinux.id
500
501
502
  name    = "master-key"
  value   = "138.201.81.199"
  type    = "A"
503
504
505
506
}

resource "hetznerdns_record" "archlinux_org_master_key_mx" {
  zone_id = hetznerdns_zone.archlinux.id
507
  name    = "master-key"
508
  ttl     = 600
509
  value   = "10 mail"
510
  type    = "MX"
511
512
513
514
}

resource "hetznerdns_record" "archlinux_org_matrix_a" {
  zone_id = hetznerdns_zone.archlinux.id
515
516
517
  name    = "matrix"
  value   = hcloud_server.matrix.ipv4_address
  type    = "A"
518
519
520
521
}

resource "hetznerdns_record" "archlinux_org_monitoring_a" {
  zone_id = hetznerdns_zone.archlinux.id
522
523
524
  name    = "monitoring"
  value   = hcloud_server.monitoring.ipv4_address
  type    = "A"
525
526
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
527
528
resource "hetznerdns_record" "archlinux_org_monitoring_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
529
530
531
  name    = "monitoring"
  value   = hcloud_server.monitoring.ipv6_address
  type    = "AAAA"
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
532
533
}

534
resource "hetznerdns_record" "archlinux_org_mail_a" {
535
  zone_id = hetznerdns_zone.archlinux.id
536
  name    = "mail"
537
  ttl     = 600
538
  value   = "95.216.189.61"
539
  type    = "A"
540
541
}

542
resource "hetznerdns_record" "archlinux_org_mail_aaaa" {
543
  zone_id = hetznerdns_zone.archlinux.id
544
  name    = "mail"
545
  ttl     = 600
546
  value   = "2a01:4f9:c010:3052::1"
547
  type    = "AAAA"
548
549
}

550
551
552
553
554
555
556
557
558
resource "hetznerdns_record" "archlinux_org_origin_txt" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "@"
  ttl     = 600
  value   = "\"v=spf1 ip4:66.211.214.132/28 ip4:5.9.250.164 ip6:2a01:4f8:160:3033::2 ip4:138.201.81.199/32 ip4:88.198.91.70/32 ip4:95.216.189.61 ip6:2a01:4f9:c010:3052::1 a:aur.archlinux.org a:apollo.archlinux.org ~all\""
  type    = "TXT"
}

resource "hetznerdns_record" "archlinux_org_mail_txt" {
559
560
561
  zone_id = hetznerdns_zone.archlinux.id
  name    = "mail"
  ttl     = 600
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
562
  value   = "\"v=spf1 include:archlinux.org -all\""
563
564
565
  type    = "TXT"
}

566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
resource "hetznerdns_record" "archlinux_org_domainkey_dkim-ed25519_txt" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "dkim-ed25519._domainkey"
  ttl     = 600
  value   = "\"v=DKIM1; k=ed25519; \" \"p=XOHB7b7V1puX+FryNIhsjXHYIFqk+q6JRu4XQ7Jc8MQ=\" "
  type    = "TXT"
}

resource "hetznerdns_record" "archlinux_org_domainkey_dkim-rsa_txt" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "dkim-rsa._domainkey"
  ttl     = 600
  value   = "\"v=DKIM1; k=rsa; \" \"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA1GjGrEczq7iHZbvT7wa4ltJz2jwSndUGdRHgfEPnGBeevOXEAlEFr4zsdkfZEaNaQLIhZNpvKAt/A+kkyalkj4u9AnxqeNsNmZflFl6TKgvh0tWNEP3+XNxfdQ7zfml4WggL/YdAjXngg42oZEUsnS/6iozOFn7bNvzqBx5PFJ21pgyuR8DWyLaeOt+p55dVed7DCKnKi11Xjiu7k\" \"H68W8rose7g8Fv9fecBatEE4jwloOXsjh+tH0iab1NSSSpIq6EdgcPrpmrllN3/n2J/kCGK6ztISB6vR7xWgvgHSMjmEL0GPWzohGPrw2UQhZhrNV8dJpiLRYmfK+rXaKF0Kqag/F0e4C4jCKFX7NYFcYXYRlN5QlDFjZvUmOILlgnZ8w/SdZUKzpLObGuwnANLG+WSOjw42p9mXVGN6AfOQPu8OjRjS1MyhcdDIbUvZiQjbmiVJ5frpYZ39BTg\" \"CIzYLJJ5932+3gnwROu1OeljWkpBkfHZXPzADus80l3Vxsk91XZVB36rN8tyuMownR/M4HNC7ZE/EBwOnn1mGH7bLd6pva8u5Qy8Y6LrDdYea5Kk7aZ2WJSSRTV+nkPvOEIx+DfsIWNfmkVWzmuVky96fRvwOCuh38w8zpmlqzhDuGSQrBaLFXwAC7LYQ6kPDHzrjQhs99ScR0ix6YclrmpimMcCAwEAAQ==\" "
  type    = "TXT"
}

582
583
584
585
586
587
588
resource "hetznerdns_record" "archlinux_org_dmarc_txt" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "_dmarc"
  value   = "\"v=DMARC1; p=none; rua=mailto:dmarc-reports@archlinux.org; ruf=mailto:dmarc-reports@archlinux.org;\""
  type    = "TXT"
}

589
590
591
592
593
594
595
596
597
598
599
600
601
602
resource "hetznerdns_record" "archlinux_org_openpgpkey_a" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "openpgpkey"
  value   = hcloud_server.openpgpkey.ipv4_address
  type    = "A"
}

resource "hetznerdns_record" "archlinux_org_openpgpkey_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "openpgpkey"
  value   = hcloud_server.openpgpkey.ipv6_address
  type    = "AAAA"
}

603
604
resource "hetznerdns_record" "archlinux_org_phrik_a" {
  zone_id = hetznerdns_zone.archlinux.id
605
606
607
  name    = "phrik"
  value   = hcloud_server.phrik.ipv4_address
  type    = "A"
608
609
610
611
}

resource "hetznerdns_record" "archlinux_org_quassel_a" {
  zone_id = hetznerdns_zone.archlinux.id
612
613
614
  name    = "quassel"
  value   = hcloud_server.quassel.ipv4_address
  type    = "A"
615
616
617
618
}

resource "hetznerdns_record" "archlinux_org_quassel_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
619
620
621
  name    = "quassel"
  value   = hcloud_server.quassel.ipv6_address
  type    = "AAAA"
622
623
624
625
}

resource "hetznerdns_record" "archlinux_org_reproducible_a" {
  zone_id = hetznerdns_zone.archlinux.id
626
627
628
  name    = "reproducible"
  value   = hcloud_server.reproducible.ipv4_address
  type    = "A"
629
630
}

Jelle van der Waa's avatar
Jelle van der Waa committed
631
632
633
634
635
636
637
resource "hetznerdns_record" "archlinux_org_runner1_a" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "runner1"
  value   = "84.17.49.250"
  type    = "A"
}

638
639
resource "hetznerdns_record" "archlinux_org_runner2_a" {
  zone_id = hetznerdns_zone.archlinux.id
640
641
642
  name    = "runner2"
  value   = "147.75.80.217"
  type    = "A"
643
644
645
646
}

resource "hetznerdns_record" "archlinux_org_runner2_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
647
648
649
  name    = "runner2"
  value   = "2604:1380:2001:4500::3"
  type    = "AAAA"
650
651
652
653
}

resource "hetznerdns_record" "archlinux_org_secure_runner1_a" {
  zone_id = hetznerdns_zone.archlinux.id
654
655
656
  name    = "secure-runner1"
  value   = "116.202.134.150"
  type    = "A"
657
658
659
660
}

resource "hetznerdns_record" "archlinux_org_secure_runner1_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
661
662
663
  name    = "secure-runner1"
  value   = "2a01:4f8:231:4e1e::2"
  type    = "AAAA"
664
665
}

666
667
resource "hetznerdns_record" "archlinux_org_svn2gittest_a" {
  zone_id = hetznerdns_zone.archlinux.id
668
669
670
  name    = "svn2gittest"
  value   = hcloud_server.svn2gittest.ipv4_address
  type    = "A"
671
672
673
674
}

resource "hetznerdns_record" "archlinux_org_svn2gittest_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
675
676
677
  name    = "svn2gittest"
  value   = hcloud_server.svn2gittest.ipv6_address
  type    = "AAAA"
678
679
}

680
681
resource "hetznerdns_record" "archlinux_org_state_a" {
  zone_id = hetznerdns_zone.archlinux.id
682
683
684
  name    = "state"
  value   = "116.203.16.252"
  type    = "A"
685
686
687
688
}

resource "hetznerdns_record" "archlinux_org_state_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
689
690
691
  name    = "state"
  value   = "2a01:4f8:c2c:474::1"
  type    = "AAAA"
692
693
694
695
}

resource "hetznerdns_record" "archlinux_org_archive_cname" {
  zone_id = hetznerdns_zone.archlinux.id
696
697
698
  name    = "archive"
  value   = "gemini"
  type    = "CNAME"
699
700
701
702
}

resource "hetznerdns_record" "archlinux_org_conf_cname" {
  zone_id = hetznerdns_zone.archlinux.id
703
704
705
  name    = "conf"
  value   = "apollo"
  type    = "CNAME"
706
707
708
709
}

resource "hetznerdns_record" "archlinux_org_dev_cname" {
  zone_id = hetznerdns_zone.archlinux.id
710
711
712
  name    = "dev"
  value   = "apollo"
  type    = "CNAME"
713
714
715
716
}

resource "hetznerdns_record" "archlinux_org_g2kjxsblac7x_cname" {
  zone_id = hetznerdns_zone.archlinux.id
717
718
719
  name    = "g2kjxsblac7x"
  value   = "gv-i5y6mnrelvpfiu.dv.googlehosted.com."
  type    = "CNAME"
720
721
722
723
}

resource "hetznerdns_record" "archlinux_org_git_cname" {
  zone_id = hetznerdns_zone.archlinux.id
724
725
726
  name    = "git"
  value   = "luna"
  type    = "CNAME"
727
728
729
730
}

resource "hetznerdns_record" "archlinux_org_grafana_cname" {
  zone_id = hetznerdns_zone.archlinux.id
731
732
733
  name    = "grafana"
  value   = "apollo"
  type    = "CNAME"
734
735
736
737
}

resource "hetznerdns_record" "archlinux_org_ipxe_cname" {
  zone_id = hetznerdns_zone.archlinux.id
738
739
740
  name    = "ipxe"
  value   = "apollo"
  type    = "CNAME"
741
742
743
744
}

resource "hetznerdns_record" "archlinux_org_luna2_domainkey_aur_cname" {
  zone_id = hetznerdns_zone.archlinux.id
745
746
747
  name    = "luna2._domainkey.aur"
  value   = "luna2._domainkey"
  type    = "CNAME"
748
749
750
751
}

resource "hetznerdns_record" "archlinux_org_luna2_domainkey_lists_cname" {
  zone_id = hetznerdns_zone.archlinux.id
752
753
754
  name    = "luna2._domainkey.lists"
  value   = "luna2._domainkey"
  type    = "CNAME"
755
756
757
758
}

resource "hetznerdns_record" "archlinux_org_mailman_cname" {
  zone_id = hetznerdns_zone.archlinux.id
759
760
761
  name    = "mailman"
  value   = "apollo"
  type    = "CNAME"
762
763
764
765
}

resource "hetznerdns_record" "archlinux_org_packages_cname" {
  zone_id = hetznerdns_zone.archlinux.id
766
767
768
  name    = "packages"
  value   = "apollo"
  type    = "CNAME"
769
770
771
772
}

resource "hetznerdns_record" "archlinux_org_patchwork_cname" {
  zone_id = hetznerdns_zone.archlinux.id
773
774
775
  name    = "patchwork"
  value   = "apollo"
  type    = "CNAME"
776
777
778
779
}

resource "hetznerdns_record" "archlinux_org_planet_cname" {
  zone_id = hetznerdns_zone.archlinux.id
780
781
782
  name    = "planet"
  value   = "apollo"
  type    = "CNAME"
783
784
785
786
}

resource "hetznerdns_record" "archlinux_org_projects_cname" {
  zone_id = hetznerdns_zone.archlinux.id
787
788
789
  name    = "projects"
  value   = "luna"
  type    = "CNAME"
790
791
792
793
}

resource "hetznerdns_record" "archlinux_org_repos_cname" {
  zone_id = hetznerdns_zone.archlinux.id
794
795
796
  name    = "repos"
  value   = "gemini"
  type    = "CNAME"
797
798
799
800
}

resource "hetznerdns_record" "archlinux_org_rsync_cname" {
  zone_id = hetznerdns_zone.archlinux.id
801
802
803
  name    = "rsync"
  value   = "gemini"
  type    = "CNAME"
804
805
806
807
}

resource "hetznerdns_record" "archlinux_org_security_cname" {
  zone_id = hetznerdns_zone.archlinux.id
808
809
810
  name    = "security"
  value   = "apollo"
  type    = "CNAME"
811
812
813
814
}

resource "hetznerdns_record" "archlinux_org_sources_cname" {
  zone_id = hetznerdns_zone.archlinux.id
815
816
817
  name    = "sources"
  value   = "gemini"
  type    = "CNAME"
818
819
820
821
}

resource "hetznerdns_record" "archlinux_org_static_cname" {
  zone_id = hetznerdns_zone.archlinux.id
822
823
824
  name    = "static"
  value   = "apollo"
  type    = "CNAME"
825
826
827
828
}

resource "hetznerdns_record" "archlinux_org_static_conf_cname" {
  zone_id = hetznerdns_zone.archlinux.id
829
830
831
  name    = "static.conf"
  value   = "apollo"
  type    = "CNAME"
832
833
834
835
}

resource "hetznerdns_record" "archlinux_org_status_cname" {
  zone_id = hetznerdns_zone.archlinux.id
836
837
838
  name    = "status"
  value   = "stats.uptimerobot.com."
  type    = "CNAME"
839
840
841
842
}

resource "hetznerdns_record" "archlinux_org_svn_cname" {
  zone_id = hetznerdns_zone.archlinux.id
843
844
845
  name    = "svn"
  value   = "gemini"
  type    = "CNAME"
846
847
848
849
}

resource "hetznerdns_record" "archlinux_org_wiki_cname" {
  zone_id = hetznerdns_zone.archlinux.id
850
851
852
  name    = "wiki"
  value   = "apollo"
  type    = "CNAME"
853
854
855
856
}

resource "hetznerdns_record" "archlinux_org_www_cname" {
  zone_id = hetznerdns_zone.archlinux.id
857
858
859
  name    = "www"
  value   = "apollo"
  type    = "CNAME"
860
861
862
863
}

resource "hetznerdns_record" "archlinux_org_matrix_tcp_srv" {
  zone_id = hetznerdns_zone.archlinux.id
864
865
866
  name    = "_matrix._tcp"
  value   = "10 0 8448 matrix"
  type    = "SRV"
867
868
869
870
}

resource "hetznerdns_record" "archlinux_org_github_challenge_archlinux" {
  zone_id = hetznerdns_zone.archlinux.id
871
872
873
  name    = "_github-challenge-archlinux"
  value   = "\"824af4446e\""
  type    = "TXT"
874
875
876
877
}

resource "hetznerdns_record" "archlinux_org_github_challenge_archlinux_www" {
  zone_id = hetznerdns_zone.archlinux.id
878
879
880
  name    = "_github-challenge-archlinux.www"
  value   = "\"b53f311f86\""
  type    = "TXT"
881
882
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
883
resource "hcloud_rdns" "quassel_ipv4" {
884
885
  server_id  = hcloud_server.quassel.id
  ip_address = hcloud_server.quassel.ipv4_address
886
  dns_ptr    = "quassel.archlinux.org"
887
888
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
889
890
891
892
893
894
resource "hcloud_rdns" "quassel_ipv6" {
  server_id  = hcloud_server.quassel.id
  ip_address = hcloud_server.quassel.ipv6_address
  dns_ptr    = "quassel.archlinux.org"
}

Jelle van der Waa's avatar
Jelle van der Waa committed
895
resource "hcloud_server" "quassel" {
896
  name        = "quassel.archlinux.org"
897
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
898
  server_type = "cx11"
899
900
901
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
902
}
Jelle van der Waa's avatar
Jelle van der Waa committed
903

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
904
resource "hcloud_rdns" "phrik_ipv4" {
905
906
  server_id  = hcloud_server.phrik.id
  ip_address = hcloud_server.phrik.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
907
908
909
  dns_ptr    = "phrik.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
910
911
912
913
914
915
resource "hcloud_rdns" "phrik_ipv6" {
  server_id  = hcloud_server.phrik.id
  ip_address = hcloud_server.phrik.ipv6_address
  dns_ptr    = "phrik.archlinux.org"
}

Jelle van der Waa's avatar
Jelle van der Waa committed
916
917
resource "hcloud_server" "phrik" {
  name        = "phrik.archlinux.org"
918
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
919
  server_type = "cx11"
920
921
922
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
923
}
Jelle van der Waa's avatar
Jelle van der Waa committed
924

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
925
resource "hcloud_rdns" "bbs_ipv4" {
926
927
  server_id  = hcloud_server.bbs.id
  ip_address = hcloud_server.bbs.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
928
929
930
  dns_ptr    = "bbs.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
931
932
933
934
935
936
resource "hcloud_rdns" "bbs_ipv6" {
  server_id  = hcloud_server.bbs.id
  ip_address = hcloud_server.bbs.ipv6_address
  dns_ptr    = "bbs.archlinux.org"
}

Jelle van der Waa's avatar
Jelle van der Waa committed
937
938
resource "hcloud_server" "bbs" {
  name        = "bbs.archlinux.org"
939
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
940
  server_type = "cx21"
941
942
943
944
945
  lifecycle {
    ignore_changes = [image]
  }
}

946

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
947
resource "hcloud_rdns" "gitlab_ipv4" {
948
949
  server_id  = hcloud_server.gitlab.id
  ip_address = hcloud_server.gitlab.ipv4_address
950
951
952
  dns_ptr    = "gitlab.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
953
954
955
956
957
958
resource "hcloud_rdns" "gitlab_ipv6" {
  server_id  = hcloud_server.gitlab.id
  ip_address = hcloud_server.gitlab.ipv6_address
  dns_ptr    = "gitlab.archlinux.org"
}

959
960
resource "hcloud_server" "gitlab" {
  name        = "gitlab.archlinux.org"
961
  image       = data.hcloud_image.archlinux.id
962
  server_type = "cx51"
963
964
965
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
966
}
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
967

968
resource "hcloud_volume" "gitlab" {
969
970
  name      = "gitlab"
  size      = 1000
971
972
973
974
  server_id = hcloud_server.gitlab.id
}


Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
975
resource "hcloud_rdns" "matrix_ipv4" {
976
977
  server_id  = hcloud_server.matrix.id
  ip_address = hcloud_server.matrix.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
978
979
980
  dns_ptr    = "matrix.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
981
982
983
984
985
986
resource "hcloud_rdns" "matrix_ipv6" {
  server_id  = hcloud_server.matrix.id
  ip_address = hcloud_server.matrix.ipv6_address
  dns_ptr    = "matrix.archlinux.org"
}

Jelle van der Waa's avatar
Jelle van der Waa committed
987
988
resource "hcloud_server" "matrix" {
  name        = "matrix.archlinux.org"
989
  image       = data.hcloud_image.archlinux.id
990
  server_type = "cpx31"
Jelle van der Waa's avatar
Jelle van der Waa committed
991
992
993
994
  lifecycle {
    ignore_changes = [image]
  }
}
995

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
996
resource "hcloud_rdns" "acccounts_ipv4" {
997
998
  server_id  = hcloud_server.accounts.id
  ip_address = hcloud_server.accounts.ipv4_address
999
1000
  dns_ptr    = "accounts.archlinux.org"
}
For faster browsing, not all history is shown. View entire blame