archlinux.tf 33.8 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
134
135
}

resource "hetznerdns_record" "pkgbuild_com_repro3_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
136
137
138
  name    = "repro3"
  value   = "147.75.81.79"
  type    = "A"
139
140
141
142
}

resource "hetznerdns_record" "pkgbuild_com_repro3_aaaa" {
  zone_id = hetznerdns_zone.pkgbuild.id
143
144
145
  name    = "repro3"
  value   = "2604:1380:2001:4500::1"
  type    = "AAAA"
146
147
148
149
}

resource "hetznerdns_record" "pkgbuild_com_www_a" {
  zone_id = hetznerdns_zone.pkgbuild.id
150
151
152
  name    = "www"
  value   = "78.46.178.133"
  type    = "A"
153
154
155
156
}

resource "hetznerdns_record" "pkgbuild_com_www_aaaa" {
  zone_id = hetznerdns_zone.pkgbuild.id
157
158
159
  name    = "www"
  value   = "2a01:4f8:c2c:51e2::1"
  type    = "AAAA"
160
161
162
163
}

resource "hetznerdns_record" "archlinux_org_origin_a" {
  zone_id = hetznerdns_zone.archlinux.id
164
165
166
  name    = "@"
  value   = "138.201.81.199"
  type    = "A"
167
168
169
170
}

resource "hetznerdns_record" "archlinux_org_origin_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
171
172
173
  name    = "@"
  value   = "2a01:4f8:172:1d86::1"
  type    = "AAAA"
174
175
176
177
}

resource "hetznerdns_record" "archlinux_org_origin_caa" {
  zone_id = hetznerdns_zone.archlinux.id
178
179
180
  name    = "@"
  value   = "0 issue \"letsencrypt.org\""
  type    = "CAA"
181
182
183
184
}

resource "hetznerdns_record" "archlinux_org_origin_mx" {
  zone_id = hetznerdns_zone.archlinux.id
185
  name    = "@"
186
  ttl     = 600
Frederik Schwan's avatar
Frederik Schwan committed
187
  value   = "10 mail"
188
  type    = "MX"
189
190
191
192
}

resource "hetznerdns_record" "archlinux_org_origin_ns3" {
  zone_id = hetznerdns_zone.archlinux.id
193
194
195
  name    = "@"
  value   = "robotns3.second-ns.com."
  type    = "NS"
196
197
198
199
}

resource "hetznerdns_record" "archlinux_org_origin_ns2" {
  zone_id = hetznerdns_zone.archlinux.id
200
201
202
  name    = "@"
  value   = "robotns2.second-ns.de."
  type    = "NS"
203
204
205
206
}

resource "hetznerdns_record" "archlinux_org_origin_ns1" {
  zone_id = hetznerdns_zone.archlinux.id
207
208
209
  name    = "@"
  value   = "ns1.first-ns.de."
  type    = "NS"
210
211
}

212
213
214
215
216
217
218
219
220
# 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"
# }
221
222
223

resource "hetznerdns_record" "archlinux_org_origin_txt" {
  zone_id = hetznerdns_zone.archlinux.id
224
  name    = "@"
225
  ttl     = 600
226
  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\""
227
  type    = "TXT"
228
229
230
231
}

resource "hetznerdns_record" "archlinux_org_origin_apollo_domainkey_txt" {
  zone_id = hetznerdns_zone.archlinux.id
232
  name    = "apollo._domainkey"
233
  ttl     = 600
234
235
  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==\""
  type    = "TXT"
236
237
238
239
}

resource "hetznerdns_record" "archlinux_org_accounts_a" {
  zone_id = hetznerdns_zone.archlinux.id
240
241
242
  name    = "accounts"
  value   = hcloud_server.accounts.ipv4_address
  type    = "A"
243
244
245
246
}

resource "hetznerdns_record" "archlinux_org_accounts_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
247
248
249
  name    = "accounts"
  value   = hcloud_server.accounts.ipv6_address
  type    = "AAAA"
250
251
252
253
}

resource "hetznerdns_record" "archlinux_org_apollo_a" {
  zone_id = hetznerdns_zone.archlinux.id
254
  name    = "apollo"
255
  ttl     = 600
256
257
  value   = "138.201.81.199"
  type    = "A"
258
259
260
261
}

resource "hetznerdns_record" "archlinux_org_apollo_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
262
  name    = "apollo"
263
  ttl     = 600
264
265
  value   = "2a01:4f8:172:1d86::1"
  type    = "AAAA"
266
267
268
269
}

resource "hetznerdns_record" "archlinux_org_archive_gemini_a" {
  zone_id = hetznerdns_zone.archlinux.id
270
271
272
  name    = "archive.gemini"
  value   = "49.12.124.107"
  type    = "A"
273
274
275
276
}

resource "hetznerdns_record" "archlinux_org_aur_a" {
  zone_id = hetznerdns_zone.archlinux.id
277
278
279
  name    = "aur"
  value   = hcloud_server.aur.ipv4_address
  type    = "A"
280
281
282
283
}

resource "hetznerdns_record" "archlinux_org_aur_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
284
285
286
  name    = "aur"
  value   = hcloud_server.aur.ipv6_address
  type    = "AAAA"
287
288
289
290
}

resource "hetznerdns_record" "archlinux_org_aur_mx" {
  zone_id = hetznerdns_zone.archlinux.id
291
  name    = "aur"
292
  ttl     = 600
293
294
  value   = "10 mx"
  type    = "MX"
295
296
297
298
}

resource "hetznerdns_record" "archlinux_org_aur_txt" {
  zone_id = hetznerdns_zone.archlinux.id
299
  name    = "aur"
300
  ttl     = 600
301
302
  value   = "\"v=spf1 a ?all\""
  type    = "TXT"
303
304
305
306
}

resource "hetznerdns_record" "archlinux_org_aur_dev_a" {
  zone_id = hetznerdns_zone.archlinux.id
307
308
309
  name    = "aur-dev"
  value   = hcloud_server.aur-dev.ipv4_address
  type    = "A"
310
311
312
313
}

resource "hetznerdns_record" "archlinux_org_aur_dev_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
314
315
316
  name    = "aur-dev"
  value   = hcloud_server.aur-dev.ipv6_address
  type    = "AAAA"
317
318
319
320
}

resource "hetznerdns_record" "archlinux_org_aur4_a" {
  zone_id = hetznerdns_zone.archlinux.id
321
322
323
  name    = "aur4"
  value   = "5.9.250.164"
  type    = "A"
324
325
326
327
}

resource "hetznerdns_record" "archlinux_org_aur4_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
328
329
330
  name    = "aur4"
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
331
332
333
334
}

resource "hetznerdns_record" "archlinux_org_bbs_a" {
  zone_id = hetznerdns_zone.archlinux.id
335
336
337
  name    = "bbs"
  value   = hcloud_server.bbs.ipv4_address
  type    = "A"
338
339
340
341
}

resource "hetznerdns_record" "archlinux_org_bbs_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
342
343
344
  name    = "bbs"
  value   = hcloud_server.bbs.ipv6_address
  type    = "AAAA"
345
346
347
348
}

resource "hetznerdns_record" "archlinux_org_bugs_a" {
  zone_id = hetznerdns_zone.archlinux.id
349
350
351
  name    = "bugs"
  value   = hcloud_server.bugs.ipv4_address
  type    = "A"
352
353
354
355
}

resource "hetznerdns_record" "archlinux_org_bugs_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
356
357
358
  name    = "bugs"
  value   = hcloud_server.bugs.ipv6_address
  type    = "AAAA"
359
360
361
362
}

resource "hetznerdns_record" "archlinux_org_dragon_a" {
  zone_id = hetznerdns_zone.archlinux.id
363
364
365
  name    = "dragon"
  value   = "195.201.167.210"
  type    = "A"
366
367
368
369
}

resource "hetznerdns_record" "archlinux_org_dragon_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
370
371
372
  name    = "dragon"
  value   = "2a01:4f8:13a:102a::2"
  type    = "AAAA"
373
374
375
376
}

resource "hetznerdns_record" "archlinux_org_gemini_a" {
  zone_id = hetznerdns_zone.archlinux.id
377
378
379
  name    = "gemini"
  value   = "49.12.124.107"
  type    = "A"
380
381
382
383
}

resource "hetznerdns_record" "archlinux_org_gemini_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
384
385
386
  name    = "gemini"
  value   = "2a01:4f8:242:5614::2"
  type    = "AAAA"
387
388
389
390
}

resource "hetznerdns_record" "archlinux_org_gitlab_a" {
  zone_id = hetznerdns_zone.archlinux.id
391
392
393
  name    = "gitlab"
  value   = hcloud_server.gitlab.ipv4_address
  type    = "A"
394
395
396
397
}

resource "hetznerdns_record" "archlinux_org_gitlab_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
398
399
400
  name    = "gitlab"
  value   = hcloud_server.gitlab.ipv6_address
  type    = "AAAA"
401
402
403
404
}

resource "hetznerdns_record" "archlinux_org_homedir_a" {
  zone_id = hetznerdns_zone.archlinux.id
405
406
407
  name    = "homedir"
  value   = hcloud_server.homedir.ipv4_address
  type    = "A"
408
409
410
411
}

resource "hetznerdns_record" "archlinux_org_homedir_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
412
413
414
  name    = "homedir"
  value   = hcloud_server.homedir.ipv6_address
  type    = "AAAA"
415
416
417
418
}

resource "hetznerdns_record" "archlinux_org_lists_a" {
  zone_id = hetznerdns_zone.archlinux.id
419
420
421
  name    = "lists"
  value   = "5.9.250.164"
  type    = "A"
422
423
424
425
}

resource "hetznerdns_record" "archlinux_org_lists_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
426
427
428
  name    = "lists"
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
429
430
431
432
}

resource "hetznerdns_record" "archlinux_org_lists_mx" {
  zone_id = hetznerdns_zone.archlinux.id
433
  name    = "lists"
434
  ttl     = 600
435
436
  value   = "10 luna"
  type    = "MX"
437
438
439
440
}

resource "hetznerdns_record" "archlinux_org_luna_a" {
  zone_id = hetznerdns_zone.archlinux.id
441
  name    = "luna"
442
  ttl     = 600
443
444
  value   = "5.9.250.164"
  type    = "A"
445
446
447
448
}

resource "hetznerdns_record" "archlinux_org_luna_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
449
  name    = "luna"
450
  ttl     = 600
451
452
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
453
454
455
456
}

resource "hetznerdns_record" "archlinux_org_luna_txt" {
  zone_id = hetznerdns_zone.archlinux.id
457
  name    = "luna._domainkey"
458
  ttl     = 600
459
460
  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==\""
  type    = "TXT"
461
462
463
464
}

resource "hetznerdns_record" "archlinux_org_luna2_txt" {
  zone_id = hetznerdns_zone.archlinux.id
465
  name    = "luna2._domainkey"
466
  ttl     = 600
467
468
  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==\""
  type    = "TXT"
469
470
471
472
}

resource "hetznerdns_record" "archlinux_org_mailman3_a" {
  zone_id = hetznerdns_zone.archlinux.id
473
474
475
  name    = "mailman3"
  value   = hcloud_server.mailman3.ipv4_address
  type    = "A"
476
477
478
479
}

resource "hetznerdns_record" "archlinux_org_master_key_a" {
  zone_id = hetznerdns_zone.archlinux.id
480
481
482
  name    = "master-key"
  value   = "138.201.81.199"
  type    = "A"
483
484
485
486
}

resource "hetznerdns_record" "archlinux_org_master_key_mx" {
  zone_id = hetznerdns_zone.archlinux.id
487
  name    = "master-key"
488
  ttl     = 600
489
490
  value   = "10 mx"
  type    = "MX"
491
492
493
494
}

resource "hetznerdns_record" "archlinux_org_matrix_a" {
  zone_id = hetznerdns_zone.archlinux.id
495
496
497
  name    = "matrix"
  value   = hcloud_server.matrix.ipv4_address
  type    = "A"
498
499
500
501
}

resource "hetznerdns_record" "archlinux_org_monitoring_a" {
  zone_id = hetznerdns_zone.archlinux.id
502
503
504
  name    = "monitoring"
  value   = hcloud_server.monitoring.ipv4_address
  type    = "A"
505
506
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
507
508
resource "hetznerdns_record" "archlinux_org_monitoring_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
509
510
511
  name    = "monitoring"
  value   = hcloud_server.monitoring.ipv6_address
  type    = "AAAA"
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
512
513
}

514
515
resource "hetznerdns_record" "archlinux_org_mx_a" {
  zone_id = hetznerdns_zone.archlinux.id
516
  name    = "mail"
517
  ttl     = 600
518
  value   = "95.216.189.61"
519
  type    = "A"
520
521
522
523
}

resource "hetznerdns_record" "archlinux_org_mx_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
524
  name    = "mail"
525
  ttl     = 600
526
  value   = "2a01:4f9:c010:3052::1"
527
  type    = "AAAA"
528
529
}

530
531
532
533
534
535
536
537
resource "hetznerdns_record" "archlinux_org_mx_txt" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "mail"
  ttl     = 600
  value   = "v=spf1 include:archlinux.org -all"
  type    = "TXT"
}

538
539
540
541
542
543
544
545
546
547
548
549
550
551
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"
}

552
553
resource "hetznerdns_record" "archlinux_org_phrik_a" {
  zone_id = hetznerdns_zone.archlinux.id
554
555
556
  name    = "phrik"
  value   = hcloud_server.phrik.ipv4_address
  type    = "A"
557
558
559
560
}

resource "hetznerdns_record" "archlinux_org_quassel_a" {
  zone_id = hetznerdns_zone.archlinux.id
561
562
563
  name    = "quassel"
  value   = hcloud_server.quassel.ipv4_address
  type    = "A"
564
565
566
567
}

resource "hetznerdns_record" "archlinux_org_quassel_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
568
569
570
  name    = "quassel"
  value   = hcloud_server.quassel.ipv6_address
  type    = "AAAA"
571
572
573
574
}

resource "hetznerdns_record" "archlinux_org_reproducible_a" {
  zone_id = hetznerdns_zone.archlinux.id
575
576
577
  name    = "reproducible"
  value   = hcloud_server.reproducible.ipv4_address
  type    = "A"
578
579
580
581
}

resource "hetznerdns_record" "archlinux_org_runner2_a" {
  zone_id = hetznerdns_zone.archlinux.id
582
583
584
  name    = "runner2"
  value   = "147.75.80.217"
  type    = "A"
585
586
587
588
}

resource "hetznerdns_record" "archlinux_org_runner2_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
589
590
591
  name    = "runner2"
  value   = "2604:1380:2001:4500::3"
  type    = "AAAA"
592
593
594
595
}

resource "hetznerdns_record" "archlinux_org_secure_runner1_a" {
  zone_id = hetznerdns_zone.archlinux.id
596
597
598
  name    = "secure-runner1"
  value   = "116.202.134.150"
  type    = "A"
599
600
601
602
}

resource "hetznerdns_record" "archlinux_org_secure_runner1_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
603
604
605
  name    = "secure-runner1"
  value   = "2a01:4f8:231:4e1e::2"
  type    = "AAAA"
606
607
}

608
609
resource "hetznerdns_record" "archlinux_org_svn2gittest_a" {
  zone_id = hetznerdns_zone.archlinux.id
610
611
612
  name    = "svn2gittest"
  value   = hcloud_server.svn2gittest.ipv4_address
  type    = "A"
613
614
615
616
}

resource "hetznerdns_record" "archlinux_org_svn2gittest_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
617
618
619
  name    = "svn2gittest"
  value   = hcloud_server.svn2gittest.ipv6_address
  type    = "AAAA"
620
621
}

622
623
resource "hetznerdns_record" "archlinux_org_state_a" {
  zone_id = hetznerdns_zone.archlinux.id
624
625
626
  name    = "state"
  value   = "116.203.16.252"
  type    = "A"
627
628
629
630
}

resource "hetznerdns_record" "archlinux_org_state_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
631
632
633
  name    = "state"
  value   = "2a01:4f8:c2c:474::1"
  type    = "AAAA"
634
635
636
637
}

resource "hetznerdns_record" "archlinux_org_archive_cname" {
  zone_id = hetznerdns_zone.archlinux.id
638
639
640
  name    = "archive"
  value   = "gemini"
  type    = "CNAME"
641
642
643
644
}

resource "hetznerdns_record" "archlinux_org_conf_cname" {
  zone_id = hetznerdns_zone.archlinux.id
645
646
647
  name    = "conf"
  value   = "apollo"
  type    = "CNAME"
648
649
650
651
}

resource "hetznerdns_record" "archlinux_org_dev_cname" {
  zone_id = hetznerdns_zone.archlinux.id
652
653
654
  name    = "dev"
  value   = "apollo"
  type    = "CNAME"
655
656
657
658
}

resource "hetznerdns_record" "archlinux_org_g2kjxsblac7x_cname" {
  zone_id = hetznerdns_zone.archlinux.id
659
660
661
  name    = "g2kjxsblac7x"
  value   = "gv-i5y6mnrelvpfiu.dv.googlehosted.com."
  type    = "CNAME"
662
663
664
665
}

resource "hetznerdns_record" "archlinux_org_git_cname" {
  zone_id = hetznerdns_zone.archlinux.id
666
667
668
  name    = "git"
  value   = "luna"
  type    = "CNAME"
669
670
671
672
}

resource "hetznerdns_record" "archlinux_org_grafana_cname" {
  zone_id = hetznerdns_zone.archlinux.id
673
674
675
  name    = "grafana"
  value   = "apollo"
  type    = "CNAME"
676
677
678
679
}

resource "hetznerdns_record" "archlinux_org_ipxe_cname" {
  zone_id = hetznerdns_zone.archlinux.id
680
681
682
  name    = "ipxe"
  value   = "apollo"
  type    = "CNAME"
683
684
685
686
}

resource "hetznerdns_record" "archlinux_org_luna2_domainkey_aur_cname" {
  zone_id = hetznerdns_zone.archlinux.id
687
688
689
  name    = "luna2._domainkey.aur"
  value   = "luna2._domainkey"
  type    = "CNAME"
690
691
692
693
}

resource "hetznerdns_record" "archlinux_org_luna2_domainkey_lists_cname" {
  zone_id = hetznerdns_zone.archlinux.id
694
695
696
  name    = "luna2._domainkey.lists"
  value   = "luna2._domainkey"
  type    = "CNAME"
697
698
699
700
}

resource "hetznerdns_record" "archlinux_org_mailman_cname" {
  zone_id = hetznerdns_zone.archlinux.id
701
702
703
  name    = "mailman"
  value   = "apollo"
  type    = "CNAME"
704
705
706
707
}

resource "hetznerdns_record" "archlinux_org_packages_cname" {
  zone_id = hetznerdns_zone.archlinux.id
708
709
710
  name    = "packages"
  value   = "apollo"
  type    = "CNAME"
711
712
713
714
}

resource "hetznerdns_record" "archlinux_org_patchwork_cname" {
  zone_id = hetznerdns_zone.archlinux.id
715
716
717
  name    = "patchwork"
  value   = "apollo"
  type    = "CNAME"
718
719
720
721
}

resource "hetznerdns_record" "archlinux_org_planet_cname" {
  zone_id = hetznerdns_zone.archlinux.id
722
723
724
  name    = "planet"
  value   = "apollo"
  type    = "CNAME"
725
726
727
728
}

resource "hetznerdns_record" "archlinux_org_projects_cname" {
  zone_id = hetznerdns_zone.archlinux.id
729
730
731
  name    = "projects"
  value   = "luna"
  type    = "CNAME"
732
733
734
735
}

resource "hetznerdns_record" "archlinux_org_repos_cname" {
  zone_id = hetznerdns_zone.archlinux.id
736
737
738
  name    = "repos"
  value   = "gemini"
  type    = "CNAME"
739
740
741
742
}

resource "hetznerdns_record" "archlinux_org_rsync_cname" {
  zone_id = hetznerdns_zone.archlinux.id
743
744
745
  name    = "rsync"
  value   = "gemini"
  type    = "CNAME"
746
747
748
749
}

resource "hetznerdns_record" "archlinux_org_security_cname" {
  zone_id = hetznerdns_zone.archlinux.id
750
751
752
  name    = "security"
  value   = "apollo"
  type    = "CNAME"
753
754
755
756
}

resource "hetznerdns_record" "archlinux_org_sources_cname" {
  zone_id = hetznerdns_zone.archlinux.id
757
758
759
  name    = "sources"
  value   = "gemini"
  type    = "CNAME"
760
761
762
763
}

resource "hetznerdns_record" "archlinux_org_static_cname" {
  zone_id = hetznerdns_zone.archlinux.id
764
765
766
  name    = "static"
  value   = "apollo"
  type    = "CNAME"
767
768
769
770
}

resource "hetznerdns_record" "archlinux_org_static_conf_cname" {
  zone_id = hetznerdns_zone.archlinux.id
771
772
773
  name    = "static.conf"
  value   = "apollo"
  type    = "CNAME"
774
775
776
777
}

resource "hetznerdns_record" "archlinux_org_status_cname" {
  zone_id = hetznerdns_zone.archlinux.id
778
779
780
  name    = "status"
  value   = "stats.uptimerobot.com."
  type    = "CNAME"
781
782
783
784
}

resource "hetznerdns_record" "archlinux_org_svn_cname" {
  zone_id = hetznerdns_zone.archlinux.id
785
786
787
  name    = "svn"
  value   = "gemini"
  type    = "CNAME"
788
789
790
791
}

resource "hetznerdns_record" "archlinux_org_wiki_cname" {
  zone_id = hetznerdns_zone.archlinux.id
792
793
794
  name    = "wiki"
  value   = "apollo"
  type    = "CNAME"
795
796
797
798
}

resource "hetznerdns_record" "archlinux_org_www_cname" {
  zone_id = hetznerdns_zone.archlinux.id
799
800
801
  name    = "www"
  value   = "apollo"
  type    = "CNAME"
802
803
804
805
}

resource "hetznerdns_record" "archlinux_org_zabbix_cname" {
  zone_id = hetznerdns_zone.archlinux.id
806
807
808
  name    = "zabbix"
  value   = "apollo"
  type    = "CNAME"
809
810
811
812
}

resource "hetznerdns_record" "archlinux_org_matrix_tcp_srv" {
  zone_id = hetznerdns_zone.archlinux.id
813
814
815
  name    = "_matrix._tcp"
  value   = "10 0 8448 matrix"
  type    = "SRV"
816
817
818
819
}

resource "hetznerdns_record" "archlinux_org_dmarc_txt" {
  zone_id = hetznerdns_zone.archlinux.id
820
821
822
  name    = "_dmarc"
  value   = "\"v=DMARC1; p=none; rua=mailto:dmarc-reports@archlinux.org; ruf=mailto:dmarc-reports@archlinux.org;\""
  type    = "TXT"
823
824
825
826
}

resource "hetznerdns_record" "archlinux_org_github_challenge_archlinux" {
  zone_id = hetznerdns_zone.archlinux.id
827
828
829
  name    = "_github-challenge-archlinux"
  value   = "\"824af4446e\""
  type    = "TXT"
830
831
832
833
}

resource "hetznerdns_record" "archlinux_org_github_challenge_archlinux_www" {
  zone_id = hetznerdns_zone.archlinux.id
834
835
836
  name    = "_github-challenge-archlinux.www"
  value   = "\"b53f311f86\""
  type    = "TXT"
837
838
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
839
resource "hcloud_rdns" "quassel_ipv4" {
840
841
  server_id  = hcloud_server.quassel.id
  ip_address = hcloud_server.quassel.ipv4_address
842
  dns_ptr    = "quassel.archlinux.org"
843
844
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
845
846
847
848
849
850
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
851
resource "hcloud_server" "quassel" {
852
  name        = "quassel.archlinux.org"
853
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
854
  server_type = "cx11"
855
856
857
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
858
}
Jelle van der Waa's avatar
Jelle van der Waa committed
859

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
860
resource "hcloud_rdns" "phrik_ipv4" {
861
862
  server_id  = hcloud_server.phrik.id
  ip_address = hcloud_server.phrik.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
863
864
865
  dns_ptr    = "phrik.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
866
867
868
869
870
871
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
872
873
resource "hcloud_server" "phrik" {
  name        = "phrik.archlinux.org"
874
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
875
  server_type = "cx11"
876
877
878
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
879
}
Jelle van der Waa's avatar
Jelle van der Waa committed
880

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
881
resource "hcloud_rdns" "bbs_ipv4" {
882
883
  server_id  = hcloud_server.bbs.id
  ip_address = hcloud_server.bbs.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
884
885
886
  dns_ptr    = "bbs.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
887
888
889
890
891
892
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
893
894
resource "hcloud_server" "bbs" {
  name        = "bbs.archlinux.org"
895
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
896
  server_type = "cx21"
897
898
899
900
901
  lifecycle {
    ignore_changes = [image]
  }
}

902

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
903
resource "hcloud_rdns" "gitlab_ipv4" {
904
905
  server_id  = hcloud_server.gitlab.id
  ip_address = hcloud_server.gitlab.ipv4_address
906
907
908
  dns_ptr    = "gitlab.archlinux.org"
}

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

915
916
resource "hcloud_server" "gitlab" {
  name        = "gitlab.archlinux.org"
917
  image       = data.hcloud_image.archlinux.id
918
  server_type = "cx51"
919
920
921
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
922
}
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
923

924
resource "hcloud_volume" "gitlab" {
925
926
  name      = "gitlab"
  size      = 1000
927
928
929
930
  server_id = hcloud_server.gitlab.id
}


Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
931
resource "hcloud_rdns" "matrix_ipv4" {
932
933
  server_id  = hcloud_server.matrix.id
  ip_address = hcloud_server.matrix.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
934
935
936
  dns_ptr    = "matrix.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
937
938
939
940
941
942
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
943
944
resource "hcloud_server" "matrix" {
  name        = "matrix.archlinux.org"
945
  image       = data.hcloud_image.archlinux.id
946
  server_type = "cpx31"
Jelle van der Waa's avatar
Jelle van der Waa committed
947
948
949
950
  lifecycle {
    ignore_changes = [image]
  }
}
951

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
952
resource "hcloud_rdns" "acccounts_ipv4" {
953
954
  server_id  = hcloud_server.accounts.id
  ip_address = hcloud_server.accounts.ipv4_address
955
956
957
  dns_ptr    = "accounts.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
958
959
960
961
962
963
resource "hcloud_rdns" "acccounts_ipv6" {
  server_id  = hcloud_server.accounts.id
  ip_address = hcloud_server.accounts.ipv6_address
  dns_ptr    = "accounts.archlinux.org"
}

964
965
resource "hcloud_server" "accounts" {
  name        = "accounts.archlinux.org"
966
  image       = data.hcloud_image.archlinux.id
967
  server_type = "cx11"
968
969
  provisioner "local-exec" {
    working_dir = ".."
970
    command     = "ansible-playbook --ssh-extra-args '-o StrictHostKeyChecking=no' playbooks/accounts.archlinux.org.yml"
971
  }
972
973
974
975
  lifecycle {
    ignore_changes = [image]
  }
}
976

977
resource "hcloud_volume" "mirror" {
978
979
  name      = "mirror"
  size      = 100
980
981
982
  server_id = hcloud_server.mirror.id
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
983
resource "hcloud_rdns" "mirror_ipv4" {
984
985
  server_id  = hcloud_server.mirror.id
  ip_address = hcloud_server.mirror.ipv4_address
986
987
988
  dns_ptr    = "mirror.pkgbuild.com"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
989
990
991
992
993
994
resource "hcloud_rdns" "mirror_ipv6" {
  server_id  = hcloud_server.mirror.id
  ip_address = hcloud_server.mirror.ipv6_address
  dns_ptr    = "mirror.pkgbuild.com"
}

995
996
resource "hcloud_server" "mirror" {
  name        = "mirror.pkgbuild.com"
997
  image       = data.hcloud_image.archlinux.id
998
999
1000
  server_type = "cx11"
  lifecycle {
    ignore_changes = [image]
For faster browsing, not all history is shown. View entire blame