archlinux.tf 34.7 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_apollo_domainkey_txt" {
  zone_id = hetznerdns_zone.archlinux.id
224
  name    = "apollo._domainkey"
225
  ttl     = 600
226
227
  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"
228
229
230
231
}

resource "hetznerdns_record" "archlinux_org_accounts_a" {
  zone_id = hetznerdns_zone.archlinux.id
232
233
234
  name    = "accounts"
  value   = hcloud_server.accounts.ipv4_address
  type    = "A"
235
236
237
238
}

resource "hetznerdns_record" "archlinux_org_accounts_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
239
240
241
  name    = "accounts"
  value   = hcloud_server.accounts.ipv6_address
  type    = "AAAA"
242
243
244
245
}

resource "hetznerdns_record" "archlinux_org_apollo_a" {
  zone_id = hetznerdns_zone.archlinux.id
246
  name    = "apollo"
247
  ttl     = 600
248
249
  value   = "138.201.81.199"
  type    = "A"
250
251
252
253
}

resource "hetznerdns_record" "archlinux_org_apollo_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
254
  name    = "apollo"
255
  ttl     = 600
256
257
  value   = "2a01:4f8:172:1d86::1"
  type    = "AAAA"
258
259
260
261
}

resource "hetznerdns_record" "archlinux_org_archive_gemini_a" {
  zone_id = hetznerdns_zone.archlinux.id
262
263
264
  name    = "archive.gemini"
  value   = "49.12.124.107"
  type    = "A"
265
266
267
268
}

resource "hetznerdns_record" "archlinux_org_aur_a" {
  zone_id = hetznerdns_zone.archlinux.id
269
270
271
  name    = "aur"
  value   = hcloud_server.aur.ipv4_address
  type    = "A"
272
273
274
275
}

resource "hetznerdns_record" "archlinux_org_aur_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
276
277
278
  name    = "aur"
  value   = hcloud_server.aur.ipv6_address
  type    = "AAAA"
279
280
281
282
}

resource "hetznerdns_record" "archlinux_org_aur_mx" {
  zone_id = hetznerdns_zone.archlinux.id
283
  name    = "aur"
284
  ttl     = 600
285
286
  value   = "10 mx"
  type    = "MX"
287
288
289
290
}

resource "hetznerdns_record" "archlinux_org_aur_txt" {
  zone_id = hetznerdns_zone.archlinux.id
291
  name    = "aur"
292
  ttl     = 600
293
294
  value   = "\"v=spf1 a ?all\""
  type    = "TXT"
295
296
297
298
}

resource "hetznerdns_record" "archlinux_org_aur_dev_a" {
  zone_id = hetznerdns_zone.archlinux.id
299
300
301
  name    = "aur-dev"
  value   = hcloud_server.aur-dev.ipv4_address
  type    = "A"
302
303
304
305
}

resource "hetznerdns_record" "archlinux_org_aur_dev_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
306
307
308
  name    = "aur-dev"
  value   = hcloud_server.aur-dev.ipv6_address
  type    = "AAAA"
309
310
311
312
}

resource "hetznerdns_record" "archlinux_org_aur4_a" {
  zone_id = hetznerdns_zone.archlinux.id
313
314
315
  name    = "aur4"
  value   = "5.9.250.164"
  type    = "A"
316
317
318
319
}

resource "hetznerdns_record" "archlinux_org_aur4_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
320
321
322
  name    = "aur4"
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
323
324
325
326
}

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

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

resource "hetznerdns_record" "archlinux_org_bugs_a" {
  zone_id = hetznerdns_zone.archlinux.id
341
342
343
  name    = "bugs"
  value   = hcloud_server.bugs.ipv4_address
  type    = "A"
344
345
346
347
}

resource "hetznerdns_record" "archlinux_org_bugs_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
348
349
350
  name    = "bugs"
  value   = hcloud_server.bugs.ipv6_address
  type    = "AAAA"
351
352
353
354
}

resource "hetznerdns_record" "archlinux_org_dragon_a" {
  zone_id = hetznerdns_zone.archlinux.id
355
356
357
  name    = "dragon"
  value   = "195.201.167.210"
  type    = "A"
358
359
360
361
}

resource "hetznerdns_record" "archlinux_org_dragon_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
362
363
364
  name    = "dragon"
  value   = "2a01:4f8:13a:102a::2"
  type    = "AAAA"
365
366
367
368
}

resource "hetznerdns_record" "archlinux_org_gemini_a" {
  zone_id = hetznerdns_zone.archlinux.id
369
370
371
  name    = "gemini"
  value   = "49.12.124.107"
  type    = "A"
372
373
374
375
}

resource "hetznerdns_record" "archlinux_org_gemini_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
376
377
378
  name    = "gemini"
  value   = "2a01:4f8:242:5614::2"
  type    = "AAAA"
379
380
381
382
}

resource "hetznerdns_record" "archlinux_org_gitlab_a" {
  zone_id = hetznerdns_zone.archlinux.id
383
384
385
  name    = "gitlab"
  value   = hcloud_server.gitlab.ipv4_address
  type    = "A"
386
387
388
389
}

resource "hetznerdns_record" "archlinux_org_gitlab_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
390
391
392
  name    = "gitlab"
  value   = hcloud_server.gitlab.ipv6_address
  type    = "AAAA"
393
394
395
396
}

resource "hetznerdns_record" "archlinux_org_homedir_a" {
  zone_id = hetznerdns_zone.archlinux.id
397
398
399
  name    = "homedir"
  value   = hcloud_server.homedir.ipv4_address
  type    = "A"
400
401
402
403
}

resource "hetznerdns_record" "archlinux_org_homedir_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
404
405
406
  name    = "homedir"
  value   = hcloud_server.homedir.ipv6_address
  type    = "AAAA"
407
408
409
410
}

resource "hetznerdns_record" "archlinux_org_lists_a" {
  zone_id = hetznerdns_zone.archlinux.id
411
412
413
  name    = "lists"
  value   = "5.9.250.164"
  type    = "A"
414
415
416
417
}

resource "hetznerdns_record" "archlinux_org_lists_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
418
419
420
  name    = "lists"
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
421
422
423
424
}

resource "hetznerdns_record" "archlinux_org_lists_mx" {
  zone_id = hetznerdns_zone.archlinux.id
425
  name    = "lists"
426
  ttl     = 600
427
428
  value   = "10 luna"
  type    = "MX"
429
430
431
432
}

resource "hetznerdns_record" "archlinux_org_luna_a" {
  zone_id = hetznerdns_zone.archlinux.id
433
  name    = "luna"
434
  ttl     = 600
435
436
  value   = "5.9.250.164"
  type    = "A"
437
438
439
440
}

resource "hetznerdns_record" "archlinux_org_luna_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
441
  name    = "luna"
442
  ttl     = 600
443
444
  value   = "2a01:4f8:160:3033::2"
  type    = "AAAA"
445
446
447
448
}

resource "hetznerdns_record" "archlinux_org_luna_txt" {
  zone_id = hetznerdns_zone.archlinux.id
449
  name    = "luna._domainkey"
450
  ttl     = 600
451
452
  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"
453
454
455
456
}

resource "hetznerdns_record" "archlinux_org_luna2_txt" {
  zone_id = hetznerdns_zone.archlinux.id
457
  name    = "luna2._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_mailman3_a" {
  zone_id = hetznerdns_zone.archlinux.id
465
466
467
  name    = "mailman3"
  value   = hcloud_server.mailman3.ipv4_address
  type    = "A"
468
469
470
471
}

resource "hetznerdns_record" "archlinux_org_master_key_a" {
  zone_id = hetznerdns_zone.archlinux.id
472
473
474
  name    = "master-key"
  value   = "138.201.81.199"
  type    = "A"
475
476
477
478
}

resource "hetznerdns_record" "archlinux_org_master_key_mx" {
  zone_id = hetznerdns_zone.archlinux.id
479
  name    = "master-key"
480
  ttl     = 600
481
482
  value   = "10 mx"
  type    = "MX"
483
484
485
486
}

resource "hetznerdns_record" "archlinux_org_matrix_a" {
  zone_id = hetznerdns_zone.archlinux.id
487
488
489
  name    = "matrix"
  value   = hcloud_server.matrix.ipv4_address
  type    = "A"
490
491
492
493
}

resource "hetznerdns_record" "archlinux_org_monitoring_a" {
  zone_id = hetznerdns_zone.archlinux.id
494
495
496
  name    = "monitoring"
  value   = hcloud_server.monitoring.ipv4_address
  type    = "A"
497
498
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
499
500
resource "hetznerdns_record" "archlinux_org_monitoring_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
501
502
503
  name    = "monitoring"
  value   = hcloud_server.monitoring.ipv6_address
  type    = "AAAA"
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
504
505
}

506
resource "hetznerdns_record" "archlinux_org_mail_a" {
507
  zone_id = hetznerdns_zone.archlinux.id
508
  name    = "mail"
509
  ttl     = 600
510
  value   = "95.216.189.61"
511
  type    = "A"
512
513
}

514
resource "hetznerdns_record" "archlinux_org_mail_aaaa" {
515
  zone_id = hetznerdns_zone.archlinux.id
516
  name    = "mail"
517
  ttl     = 600
518
  value   = "2a01:4f9:c010:3052::1"
519
  type    = "AAAA"
520
521
}

522
523
524
525
526
527
528
529
530
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" {
531
532
533
534
535
536
537
  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
resource "hetznerdns_record" "archlinux_org_domainkey_mail_txt" {
  zone_id = hetznerdns_zone.archlinux.id
  name    = "mail._domainkey"
  ttl     = 600
  value   = "\"v=DKIM1; k=rsa; \" \"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAwq23VERpAp07Xe9vTro38q7D8HzGSi4I+vS2ZWdGeGmr9/YQs6EmoiDUWdXbThCAPhSW6RLgG62XLxnjEj9LxwyeluHKI4eMq14shwcTeRNzyrz/bTqAQouVLe3PmUo6mHWJfd4Z7k7/Kv0nmEx9cqM+IIwOjsGN28e52OCvc7NZeRqEvAJtlsV1Ren0piFvw/cuOqzo3Xgk2O\" \"T1/6PoItIQm1AYTmDBjPHvUqSa/lyr6MQYpH2EeQa7HV0l+XZmYA/tRpUE9ixwZ7+mvixMumTDRMB7Pp+WqbqXQcDodrh0H5RzxBPv11KP+09qcCZo26iBZeRb9H0CU0glIFJLWIejBY/10mOtcs68Kop2rNz3mga/Pxj9JGWndkjmLSscyPjjySHy/kakAqSafijq74ysA8nKx+MRnZYzqAwtn8sk8MF80mTZuMvHgzUn7fbG2bxVF7hc\" \"nD80OjlD+gXrl1MmiO5QfGPhsnx9SI/Bp3vo5rLayBTRCWv7QsQeU2hWi0wC/l2aG50apdPG0FJdrIQHicjx5zW+fWISbHRE3VwCI1oVejnl1E6XYmcrgeWG8O+iukfPYzEWiJ5BY8uk3bO75dFqaFH0yU7hdsC+yk+9+ZQDZKHcc0jum7C3U8SdW27af8/DkjAyoDn0g0Cj6N2QWDbZmHJfD7tY6O6Qpm8CAwEAAQ==\" "
  type    = "TXT"
}

546
547
548
549
550
551
552
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"
}

553
554
555
556
557
558
559
560
561
562
563
564
565
566
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"
}

567
568
resource "hetznerdns_record" "archlinux_org_phrik_a" {
  zone_id = hetznerdns_zone.archlinux.id
569
570
571
  name    = "phrik"
  value   = hcloud_server.phrik.ipv4_address
  type    = "A"
572
573
574
575
}

resource "hetznerdns_record" "archlinux_org_quassel_a" {
  zone_id = hetznerdns_zone.archlinux.id
576
577
578
  name    = "quassel"
  value   = hcloud_server.quassel.ipv4_address
  type    = "A"
579
580
581
582
}

resource "hetznerdns_record" "archlinux_org_quassel_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
583
584
585
  name    = "quassel"
  value   = hcloud_server.quassel.ipv6_address
  type    = "AAAA"
586
587
588
589
}

resource "hetznerdns_record" "archlinux_org_reproducible_a" {
  zone_id = hetznerdns_zone.archlinux.id
590
591
592
  name    = "reproducible"
  value   = hcloud_server.reproducible.ipv4_address
  type    = "A"
593
594
595
596
}

resource "hetznerdns_record" "archlinux_org_runner2_a" {
  zone_id = hetznerdns_zone.archlinux.id
597
598
599
  name    = "runner2"
  value   = "147.75.80.217"
  type    = "A"
600
601
602
603
}

resource "hetznerdns_record" "archlinux_org_runner2_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
604
605
606
  name    = "runner2"
  value   = "2604:1380:2001:4500::3"
  type    = "AAAA"
607
608
609
610
}

resource "hetznerdns_record" "archlinux_org_secure_runner1_a" {
  zone_id = hetznerdns_zone.archlinux.id
611
612
613
  name    = "secure-runner1"
  value   = "116.202.134.150"
  type    = "A"
614
615
616
617
}

resource "hetznerdns_record" "archlinux_org_secure_runner1_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
618
619
620
  name    = "secure-runner1"
  value   = "2a01:4f8:231:4e1e::2"
  type    = "AAAA"
621
622
}

623
624
resource "hetznerdns_record" "archlinux_org_svn2gittest_a" {
  zone_id = hetznerdns_zone.archlinux.id
625
626
627
  name    = "svn2gittest"
  value   = hcloud_server.svn2gittest.ipv4_address
  type    = "A"
628
629
630
631
}

resource "hetznerdns_record" "archlinux_org_svn2gittest_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
632
633
634
  name    = "svn2gittest"
  value   = hcloud_server.svn2gittest.ipv6_address
  type    = "AAAA"
635
636
}

637
638
resource "hetznerdns_record" "archlinux_org_state_a" {
  zone_id = hetznerdns_zone.archlinux.id
639
640
641
  name    = "state"
  value   = "116.203.16.252"
  type    = "A"
642
643
644
645
}

resource "hetznerdns_record" "archlinux_org_state_aaaa" {
  zone_id = hetznerdns_zone.archlinux.id
646
647
648
  name    = "state"
  value   = "2a01:4f8:c2c:474::1"
  type    = "AAAA"
649
650
651
652
}

resource "hetznerdns_record" "archlinux_org_archive_cname" {
  zone_id = hetznerdns_zone.archlinux.id
653
654
655
  name    = "archive"
  value   = "gemini"
  type    = "CNAME"
656
657
658
659
}

resource "hetznerdns_record" "archlinux_org_conf_cname" {
  zone_id = hetznerdns_zone.archlinux.id
660
661
662
  name    = "conf"
  value   = "apollo"
  type    = "CNAME"
663
664
665
666
}

resource "hetznerdns_record" "archlinux_org_dev_cname" {
  zone_id = hetznerdns_zone.archlinux.id
667
668
669
  name    = "dev"
  value   = "apollo"
  type    = "CNAME"
670
671
672
673
}

resource "hetznerdns_record" "archlinux_org_g2kjxsblac7x_cname" {
  zone_id = hetznerdns_zone.archlinux.id
674
675
676
  name    = "g2kjxsblac7x"
  value   = "gv-i5y6mnrelvpfiu.dv.googlehosted.com."
  type    = "CNAME"
677
678
679
680
}

resource "hetznerdns_record" "archlinux_org_git_cname" {
  zone_id = hetznerdns_zone.archlinux.id
681
682
683
  name    = "git"
  value   = "luna"
  type    = "CNAME"
684
685
686
687
}

resource "hetznerdns_record" "archlinux_org_grafana_cname" {
  zone_id = hetznerdns_zone.archlinux.id
688
689
690
  name    = "grafana"
  value   = "apollo"
  type    = "CNAME"
691
692
693
694
}

resource "hetznerdns_record" "archlinux_org_ipxe_cname" {
  zone_id = hetznerdns_zone.archlinux.id
695
696
697
  name    = "ipxe"
  value   = "apollo"
  type    = "CNAME"
698
699
700
701
}

resource "hetznerdns_record" "archlinux_org_luna2_domainkey_aur_cname" {
  zone_id = hetznerdns_zone.archlinux.id
702
703
704
  name    = "luna2._domainkey.aur"
  value   = "luna2._domainkey"
  type    = "CNAME"
705
706
707
708
}

resource "hetznerdns_record" "archlinux_org_luna2_domainkey_lists_cname" {
  zone_id = hetznerdns_zone.archlinux.id
709
710
711
  name    = "luna2._domainkey.lists"
  value   = "luna2._domainkey"
  type    = "CNAME"
712
713
714
715
}

resource "hetznerdns_record" "archlinux_org_mailman_cname" {
  zone_id = hetznerdns_zone.archlinux.id
716
717
718
  name    = "mailman"
  value   = "apollo"
  type    = "CNAME"
719
720
721
722
}

resource "hetznerdns_record" "archlinux_org_packages_cname" {
  zone_id = hetznerdns_zone.archlinux.id
723
724
725
  name    = "packages"
  value   = "apollo"
  type    = "CNAME"
726
727
728
729
}

resource "hetznerdns_record" "archlinux_org_patchwork_cname" {
  zone_id = hetznerdns_zone.archlinux.id
730
731
732
  name    = "patchwork"
  value   = "apollo"
  type    = "CNAME"
733
734
735
736
}

resource "hetznerdns_record" "archlinux_org_planet_cname" {
  zone_id = hetznerdns_zone.archlinux.id
737
738
739
  name    = "planet"
  value   = "apollo"
  type    = "CNAME"
740
741
742
743
}

resource "hetznerdns_record" "archlinux_org_projects_cname" {
  zone_id = hetznerdns_zone.archlinux.id
744
745
746
  name    = "projects"
  value   = "luna"
  type    = "CNAME"
747
748
749
750
}

resource "hetznerdns_record" "archlinux_org_repos_cname" {
  zone_id = hetznerdns_zone.archlinux.id
751
752
753
  name    = "repos"
  value   = "gemini"
  type    = "CNAME"
754
755
756
757
}

resource "hetznerdns_record" "archlinux_org_rsync_cname" {
  zone_id = hetznerdns_zone.archlinux.id
758
759
760
  name    = "rsync"
  value   = "gemini"
  type    = "CNAME"
761
762
763
764
}

resource "hetznerdns_record" "archlinux_org_security_cname" {
  zone_id = hetznerdns_zone.archlinux.id
765
766
767
  name    = "security"
  value   = "apollo"
  type    = "CNAME"
768
769
770
771
}

resource "hetznerdns_record" "archlinux_org_sources_cname" {
  zone_id = hetznerdns_zone.archlinux.id
772
773
774
  name    = "sources"
  value   = "gemini"
  type    = "CNAME"
775
776
777
778
}

resource "hetznerdns_record" "archlinux_org_static_cname" {
  zone_id = hetznerdns_zone.archlinux.id
779
780
781
  name    = "static"
  value   = "apollo"
  type    = "CNAME"
782
783
784
785
}

resource "hetznerdns_record" "archlinux_org_static_conf_cname" {
  zone_id = hetznerdns_zone.archlinux.id
786
787
788
  name    = "static.conf"
  value   = "apollo"
  type    = "CNAME"
789
790
791
792
}

resource "hetznerdns_record" "archlinux_org_status_cname" {
  zone_id = hetznerdns_zone.archlinux.id
793
794
795
  name    = "status"
  value   = "stats.uptimerobot.com."
  type    = "CNAME"
796
797
798
799
}

resource "hetznerdns_record" "archlinux_org_svn_cname" {
  zone_id = hetznerdns_zone.archlinux.id
800
801
802
  name    = "svn"
  value   = "gemini"
  type    = "CNAME"
803
804
805
806
}

resource "hetznerdns_record" "archlinux_org_wiki_cname" {
  zone_id = hetznerdns_zone.archlinux.id
807
808
809
  name    = "wiki"
  value   = "apollo"
  type    = "CNAME"
810
811
812
813
}

resource "hetznerdns_record" "archlinux_org_www_cname" {
  zone_id = hetznerdns_zone.archlinux.id
814
815
816
  name    = "www"
  value   = "apollo"
  type    = "CNAME"
817
818
819
820
}

resource "hetznerdns_record" "archlinux_org_zabbix_cname" {
  zone_id = hetznerdns_zone.archlinux.id
821
822
823
  name    = "zabbix"
  value   = "apollo"
  type    = "CNAME"
824
825
826
827
}

resource "hetznerdns_record" "archlinux_org_matrix_tcp_srv" {
  zone_id = hetznerdns_zone.archlinux.id
828
829
830
  name    = "_matrix._tcp"
  value   = "10 0 8448 matrix"
  type    = "SRV"
831
832
833
834
}

resource "hetznerdns_record" "archlinux_org_github_challenge_archlinux" {
  zone_id = hetznerdns_zone.archlinux.id
835
836
837
  name    = "_github-challenge-archlinux"
  value   = "\"824af4446e\""
  type    = "TXT"
838
839
840
841
}

resource "hetznerdns_record" "archlinux_org_github_challenge_archlinux_www" {
  zone_id = hetznerdns_zone.archlinux.id
842
843
844
  name    = "_github-challenge-archlinux.www"
  value   = "\"b53f311f86\""
  type    = "TXT"
845
846
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
847
resource "hcloud_rdns" "quassel_ipv4" {
848
849
  server_id  = hcloud_server.quassel.id
  ip_address = hcloud_server.quassel.ipv4_address
850
  dns_ptr    = "quassel.archlinux.org"
851
852
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
853
854
855
856
857
858
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
859
resource "hcloud_server" "quassel" {
860
  name        = "quassel.archlinux.org"
861
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
862
  server_type = "cx11"
863
864
865
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
866
}
Jelle van der Waa's avatar
Jelle van der Waa committed
867

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
868
resource "hcloud_rdns" "phrik_ipv4" {
869
870
  server_id  = hcloud_server.phrik.id
  ip_address = hcloud_server.phrik.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
871
872
873
  dns_ptr    = "phrik.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
874
875
876
877
878
879
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
880
881
resource "hcloud_server" "phrik" {
  name        = "phrik.archlinux.org"
882
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
883
  server_type = "cx11"
884
885
886
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
887
}
Jelle van der Waa's avatar
Jelle van der Waa committed
888

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
889
resource "hcloud_rdns" "bbs_ipv4" {
890
891
  server_id  = hcloud_server.bbs.id
  ip_address = hcloud_server.bbs.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
892
893
894
  dns_ptr    = "bbs.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
895
896
897
898
899
900
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
901
902
resource "hcloud_server" "bbs" {
  name        = "bbs.archlinux.org"
903
  image       = data.hcloud_image.archlinux.id
Jelle van der Waa's avatar
Jelle van der Waa committed
904
  server_type = "cx21"
905
906
907
908
909
  lifecycle {
    ignore_changes = [image]
  }
}

910

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
911
resource "hcloud_rdns" "gitlab_ipv4" {
912
913
  server_id  = hcloud_server.gitlab.id
  ip_address = hcloud_server.gitlab.ipv4_address
914
915
916
  dns_ptr    = "gitlab.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
917
918
919
920
921
922
resource "hcloud_rdns" "gitlab_ipv6" {
  server_id  = hcloud_server.gitlab.id
  ip_address = hcloud_server.gitlab.ipv6_address
  dns_ptr    = "gitlab.archlinux.org"
}

923
924
resource "hcloud_server" "gitlab" {
  name        = "gitlab.archlinux.org"
925
  image       = data.hcloud_image.archlinux.id
926
  server_type = "cx51"
927
928
929
  lifecycle {
    ignore_changes = [image]
  }
Jelle van der Waa's avatar
Jelle van der Waa committed
930
}
Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
931

932
resource "hcloud_volume" "gitlab" {
933
934
  name      = "gitlab"
  size      = 1000
935
936
937
938
  server_id = hcloud_server.gitlab.id
}


Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
939
resource "hcloud_rdns" "matrix_ipv4" {
940
941
  server_id  = hcloud_server.matrix.id
  ip_address = hcloud_server.matrix.ipv4_address
Jelle van der Waa's avatar
Jelle van der Waa committed
942
943
944
  dns_ptr    = "matrix.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
945
946
947
948
949
950
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
951
952
resource "hcloud_server" "matrix" {
  name        = "matrix.archlinux.org"
953
  image       = data.hcloud_image.archlinux.id
954
  server_type = "cpx31"
Jelle van der Waa's avatar
Jelle van der Waa committed
955
956
957
958
  lifecycle {
    ignore_changes = [image]
  }
}
959

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
960
resource "hcloud_rdns" "acccounts_ipv4" {
961
962
  server_id  = hcloud_server.accounts.id
  ip_address = hcloud_server.accounts.ipv4_address
963
964
965
  dns_ptr    = "accounts.archlinux.org"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
966
967
968
969
970
971
resource "hcloud_rdns" "acccounts_ipv6" {
  server_id  = hcloud_server.accounts.id
  ip_address = hcloud_server.accounts.ipv6_address
  dns_ptr    = "accounts.archlinux.org"
}

972
973
resource "hcloud_server" "accounts" {
  name        = "accounts.archlinux.org"
974
  image       = data.hcloud_image.archlinux.id
975
  server_type = "cx11"
976
977
  provisioner "local-exec" {
    working_dir = ".."
978
    command     = "ansible-playbook --ssh-extra-args '-o StrictHostKeyChecking=no' playbooks/accounts.archlinux.org.yml"
979
  }
980
981
982
983
  lifecycle {
    ignore_changes = [image]
  }
}
984

985
resource "hcloud_volume" "mirror" {
986
987
  name      = "mirror"
  size      = 100
988
989
990
  server_id = hcloud_server.mirror.id
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
991
resource "hcloud_rdns" "mirror_ipv4" {
992
993
  server_id  = hcloud_server.mirror.id
  ip_address = hcloud_server.mirror.ipv4_address
994
995
996
  dns_ptr    = "mirror.pkgbuild.com"
}

Sven-Hendrik Haase's avatar
Sven-Hendrik Haase committed
997
998
999
1000
resource "hcloud_rdns" "mirror_ipv6" {
  server_id  = hcloud_server.mirror.id
  ip_address = hcloud_server.mirror.ipv6_address
  dns_ptr    = "mirror.pkgbuild.com"
For faster browsing, not all history is shown. View entire blame