0
0
Fork 0
forked from afnix/infra
Repository for AFNix-managed infrastructure
Find a file
2025-11-08 22:54:46 -05:00
common floral: rename bagel-box -> flower-box 2025-11-08 22:54:46 -05:00
dashboards
dnscontrol floral: rename bagel-box -> flower-box 2025-11-08 22:54:46 -05:00
hosts floral: rename bagel-box -> flower-box 2025-11-08 22:54:46 -05:00
lib
macos/mdm-scripts macos: add mdm scripts 2025-10-13 15:12:23 +02:00
netboot/arm64
overlays mariadb: Remove pam modules 2025-10-15 12:46:00 +02:00
pki
secrets secrets/afnix: rekey for lanzaboote CI for build01-ams01 2025-11-04 23:01:26 +00:00
services floral: rename bagel-box -> flower-box 2025-11-08 22:54:46 -05:00
terraform terraform/afnix/superadmin/buildkite: use the right repository 2025-11-02 00:34:48 +01:00
vm vm/lim01/n64gw01: enable SNI for Gerrit SSH port 2025-11-04 23:18:27 +01:00
.editorconfig
.envrc
.gitattributes
.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
colmena.nix
default.nix
flake.lock hosts/yuki: fix Gerrit tab 2025-11-01 23:48:56 +01:00
flake.nix floral: rename bagel-box -> flower-box 2025-11-08 22:54:46 -05:00
LICENSE
README.md
renovate.json renovate: enable lock file maintenance settings 2025-09-08 08:22:16 +02:00
secrets.nix floral: rename bagel-box -> flower-box 2025-11-08 22:54:46 -05: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 colmena wrapper, secrets helper and required binaries:

$ nix develop

Build the infrastructure

$ colmena build --on @localboot

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

$ colmena apply dry-activate $machine # Verify that the nvd log is reasonable.
$ colmena apply $machine
$ nix flake update
$ colmena apply dry-activate --on @localboot # Verify that the nvd log is reasonable. Run it twice to get only NVD logs shown.
$ colmena 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.