Repository for AFNix-managed infrastructure https://hydra.afnix.fr/project/infra
Find a file
Raito Bezarius 87f2d016a7 afnix/par01/macos-builder01: keep one mac builder on latest Lix
This way, we can smoke out issues "more often" when it comes to Darwin
regressions.

Change-Id: I7542b4e46a6d0dd63944627f51cc0ad6c393d070
Signed-off-by: Raito Bezarius <raito@afnix.fr>
2025-12-04 23:30:19 +01:00
arcana deployment: move to Arcana 2025-11-10 02:49:57 +01:00
common common/admins: reintroduce leah2 keys and void-linux group 2025-12-04 22:15:18 +01:00
dashboards feat(grafana): plug jsonnet-based dashboards in provisioning 2024-08-24 16:32:21 +02:00
dnscontrol floral/flower-box: add ipv4 proxy 2025-12-04 00:21:03 +01:00
hosts afnix/par01/macos-builder01: keep one mac builder on latest Lix 2025-12-04 23:30:19 +01:00
lib arcana-wrapper: runCommandNoCC is deprecated 2025-11-24 15:57:09 +00:00
macos/mdm-scripts macos: add mdm scripts 2025-10-13 15:12:23 +02:00
netboot/arm64 feat: introduce ARM64 baremetal nodes 2025-02-12 22:30:45 +01:00
overlays overlays/gerrit-plugins: init afnix/lix variants 2025-12-04 20:09:35 +01:00
pki feat(systems): trust our infra chain on all systems 2025-01-01 03:43:13 +01:00
secrets secrets/afnix/yuki-vault-env: rekey the Vault token 2025-12-04 22:15:04 +01:00
services services/monitoring/exporters: monitor our remote state store for tf 2025-12-04 21:59:08 +00:00
terraform terraform/afnix/superadmin/kc: introduce client secret 2025-12-04 21:52:26 +00:00
vm overlays/gerrit-plugins: init afnix/lix variants 2025-12-04 20:09:35 +01:00
.editorconfig editorconfig: set indentation 2025-11-22 11:20:36 -05:00
.envrc chore: add lorri to prevent direnv from blocking, closes #147 2024-10-27 09:42:11 +00:00
.gitattributes feat(secrets): flag .age secret blobs as binary 2025-02-25 17:30:56 +01:00
.gitignore gitignore: fix exclusion pattern for per-tenant secrets 2025-07-30 14:03:47 +02:00
baremetal-nodes.nix hosts/floral: wob01 → ams01 2025-11-01 20:01:30 +01:00
builders.nix hydra: configure machines via /etc 2025-03-23 00:48:10 +01:00
default.nix feat: sign the ICA1 CSR 2024-12-31 17:50:23 +01:00
flake.lock flake.lock: Update 2025-12-04 02:00:04 +01:00
flake.nix flake: add tf-vault-init to initialize store remote state token 2025-12-04 21:26:26 +00:00
LICENSE Initial commit 2024-06-23 06:41:53 +02:00
README.md deployment: move to Arcana 2025-11-10 02:49:57 +01:00
renovate.json renovate: enable lock file maintenance settings 2025-09-08 08:22:16 +02:00
secrets.nix secrets: allow floral admins to rekey the afnix monitoring push secret 2025-11-27 16:20:09 +01:00
tasks.py flake: add high level invoke script 2025-11-01 20:01:13 +01:00

Infrastructure for the donut shaped thing that is absolutely not a donut.

Quick start

Enter our dev-shell for things like our arcana wrapper, secrets helper and required binaries:

$ nix develop

Build the infrastructure

$ arcana build --on @localboot

Notice that @localboot is load-bearing as we have some machines that cannot be deployed with vanilla arcana. Fixing this is welcome.

$ arcana apply dry-activate $machine # Verify that the nvd log is reasonable.
$ arcana apply $machine
$ nix flake update
$ arcana apply dry-activate --on @localboot # Verify that the nvd log is reasonable. Run it twice to get only NVD logs shown.
$ arcana apply --on @localboot

Deploy the Terraform infrastructure

$ vault-login
$ eval "$(get-secrets)"
$ nix run .#tf -- plan # Vanilla Terraform from there.
$ nix run .#tf -- apply

Make changes to DNS via dnscontrol

$ vault-login
$ eval "$(get-secrets)"
$ cd dnscontrol
$ dnscontrol preview # preview the changes without applying them
$ dnscontrol push # apply changes

Troubleshooting

I failed to deploy gerrit01

Our Gerrit source build is known to have some hiccups sometimes, we are always interested in build logs, feel free to attach information in a new issue so we can make it more reliable.

get-secrets fails

Are you a floral-admin ? If not, please get in touch with one of the superadmins.