Commit Graph

39 Commits

Author SHA1 Message Date
f5904738b0 vault: implement bootstrap integration
Some checks failed
Run nix flake check / flake-check (push) Has been cancelled
Run nix flake check / flake-check (pull_request) Successful in 2m30s
2026-02-03 01:09:43 +01:00
4133eafc4e flake: add openbao to devshell
Some checks failed
Run nix flake check / flake-check (push) Failing after 18m52s
2026-02-01 22:16:52 +01:00
6d64e53586 hosts: add vault01 host
All checks were successful
Run nix flake check / flake-check (push) Successful in 2m20s
2026-02-01 20:08:48 +01:00
9908286062 scripts: fix create-host flake.nix insertion point
Some checks failed
Run nix flake check / flake-check (pull_request) Successful in 2m12s
Run nix flake check / flake-check (push) Failing after 8m24s
Fix bug where new hosts were added outside of nixosConfigurations block
instead of inside it.

Issues fixed:
1. Pattern was looking for "packages =" but actual text is "packages = forAllSystems"
2. Replacement was putting new entry AFTER closing brace instead of BEFORE
3. testvm01 was at top-level flake output instead of in nixosConfigurations

Changes:
- Update pattern to match "packages = forAllSystems"
- Put new entry BEFORE the closing brace of nixosConfigurations
- Move testvm01 to correct location inside nixosConfigurations block

Result: nix flake show now correctly shows testvm01 as NixOS configuration

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-01 17:41:04 +01:00
7fe0aa0f54 test: add testvm01 for pipeline testing 2026-02-01 17:41:04 +01:00
408554b477 scripts: add create-host tool for automated host configuration generation
Some checks failed
Run nix flake check / flake-check (push) Failing after 1m50s
Run nix flake check / flake-check (pull_request) Failing after 1m49s
Implements Phase 2 of the automated deployment pipeline.

This commit adds a Python CLI tool that automates the creation of NixOS host
configurations, eliminating manual boilerplate and reducing errors.

Features:
- Python CLI using typer framework with rich terminal UI
- Comprehensive validation (hostname format/uniqueness, IP subnet/uniqueness)
- Jinja2 templates for NixOS configurations
- Automatic updates to flake.nix and terraform/vms.tf
- Support for both static IP and DHCP configurations
- Dry-run mode for safe previews
- Packaged as Nix derivation and added to devShell

Usage:
  create-host --hostname myhost --ip 10.69.13.50/24

The tool generates:
- hosts/<hostname>/default.nix
- hosts/<hostname>/configuration.nix
- Updates flake.nix with new nixosConfigurations entry
- Updates terraform/vms.tf with new VM definition

All generated configurations include full system imports (monitoring, SOPS,
autoupgrade, etc.) and are validated with nix flake check and tofu validate.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-01 02:27:57 +01:00
3a464bc323 proxmox: add VM automation with OpenTofu and Ansible
Add automated workflow for building and deploying NixOS VMs on Proxmox including template2 host configuration, Ansible playbook for image building/deployment, and OpenTofu configuration for VM provisioning with cloud-init.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-31 21:54:08 +01:00
7f72a72043 flake: add opentofu to devshell
Some checks failed
Run nix flake check / flake-check (push) Failing after 17m5s
2026-01-31 16:12:49 +01:00
f2963a150b flake: stable to 25.11
Some checks failed
Run nix flake check / flake-check (push) Failing after 3m44s
2025-12-06 10:45:14 +01:00
ccd9bbf4da Remove incus hosts
Some checks failed
Run nix flake check / flake-check (push) Failing after 14m57s
Periodic flake update / flake-update (push) Successful in 3m35s
2025-07-07 21:30:04 +02:00
6fda081dc8 Add labmon to monitoring01
Some checks failed
Run nix flake check / flake-check (push) Has been cancelled
2025-05-24 03:27:59 +02:00
5e9aff0590 Update stable to 25.05 2025-05-23 00:54:13 +02:00
cba1821f3b Add lldap to auth01 host 2025-04-01 22:23:59 +02:00
abb4cf58ea Add alerttonotify to monitoring host
Some checks failed
Run nix flake check / flake-check (push) Has been cancelled
2025-02-11 22:25:54 +01:00
c43e2aa063 Add nats server
Some checks failed
Run nix flake check / flake-check (push) Failing after 17m6s
Periodic flake update / flake-update (push) Successful in 1m28s
2025-02-08 00:26:53 +01:00
002f934c70 Add ansible and playbook to trigger upgrade
Some checks failed
Run nix flake check / flake-check (push) Failing after 27m26s
Periodic flake update / flake-update (push) Successful in 1m24s
2025-02-07 00:28:05 +01:00
4af1bded61 Add backups for monitoring01
Some checks failed
Run nix flake check / flake-check (push) Failing after 3m30s
2025-01-27 23:03:45 +01:00
a9eeb8ada6 Add postgres host
Some checks failed
Run nix flake check / flake-check (push) Failing after 6m3s
2025-01-25 02:28:44 +01:00
83b2a4a2e8 Add initial media1 host 2025-01-24 23:31:52 +01:00
1eb100d4ba Add nix-cache01 2025-01-23 23:18:14 +01:00
79b6598d0d Add jellyfin
Some checks failed
Run nix flake check / flake-check (push) Failing after 4m36s
Periodic flake update / flake-update (push) Successful in 1m29s
2024-12-22 04:33:00 +01:00
fcfafa03fa Switch nixpkgs to 24.11 2024-12-01 01:52:27 +01:00
3c3eaaa042 Add monitoring host 2024-12-01 01:51:34 +01:00
d16a35acb4 Remove unused flake input for sops
All checks were successful
Run nix flake check / flake-check (push) Successful in 3m25s
2024-11-30 14:28:26 +01:00
d7a6e09ce3 Add ca host 2024-10-21 11:01:57 +02:00
a19161ca69 Make backup-helper follow unstable
All checks were successful
Run nix flake check / flake-check (push) Successful in 2m43s
2024-10-21 10:58:27 +02:00
3e35c1ac0c Make sops-nix use same nixpkgs/stable 2024-10-21 10:57:14 +02:00
504be31412 Add http-proxy host
All checks were successful
Run nix flake check / flake-check (push) Successful in 2m49s
2024-10-20 22:09:23 +02:00
50bd8505ec Add incus servers 2024-06-27 21:10:20 +02:00
ae3841ae09 Upgrade to NixOS 24.05 2024-06-03 00:21:47 +02:00
e651c1a4e9 Add backup-helper to ha1 2024-06-03 00:18:25 +02:00
99e2282078 Add backup-helper to test host 2024-06-03 00:10:28 +02:00
c347394ace Add nixos-test1 2024-06-02 21:50:40 +02:00
90bbc618de Add ha1 to flake output 2024-05-01 19:11:55 +02:00
4c1ef8f7a9 Add ns1 and ns2 to flake.nix 2024-03-13 23:26:28 +01:00
5b838771e3 Improve ns stuff 2024-03-11 21:26:52 +01:00
7ba862f21d Add template host 2024-03-08 20:10:50 +01:00
8b15e98499 Correct hostname 2024-03-07 23:17:42 +01:00
0ed396cd88 Initial commit 2024-03-07 23:14:44 +01:00