Commit graph

1005 commits

Author SHA1 Message Date
03e564f3d8
factor out TF setup
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:38 +02:00
b89c7cbd3d
first time to get nix run pipeline to succeed including update step
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:38 +02:00
c9c8d8b457
hardcoded networking setup for nix run vm 101
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:38 +02:00
4d0e549c6b
start documenting needed proxmox user privileges
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:38 +02:00
c4e06a5748
back to qcow over size difference
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:37 +02:00
9bdfdf6ef7
some cleanup
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:37 +02:00
a6fdff0b18
automated deployment to proxmox (in nix run) of vm booting to login
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:37 +02:00
14d7ce7214
simplify
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:37 +02:00
a97d658f1e
bootable vm by repart
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:37 +02:00
df9814f0f5
get nix run to build a vm bootable by qemu
```
cp /nix/store/.../nixos.img disk.raw
chmod 0644 disk.raw
qemu-system-x86_64 -enable-kvm -m 2048 -drive
if=virtio,file=./disk.raw,format=raw -bios "$(nix eval --impure --expr
'(import <nixpkgs> { }).OVMF.fd.outPath' | jq -r)/FV/OVMF.fd"
```

Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:37 +02:00
7f6aad0a58
WIP: proxmox deployment
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>

continued

Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
2025-10-23 22:42:37 +02:00
0440758e28 use minimal profile in test target nodes (#551)
Reviewed-on: fediversity/fediversity#551
2025-10-23 22:41:44 +02:00
8b7f19a885 mv acme logic out of panel test (#550)
Reviewed-on: fediversity/fediversity#550
2025-10-22 15:30:46 +02:00
5e6bbc8b9d support ssh option values containing spaces (#548)
Reviewed-on: fediversity/fediversity#548
2025-10-22 15:23:17 +02:00
18ccd900b2 make TF less chatty (#549)
Reviewed-on: fediversity/fediversity#549
2025-10-22 15:19:22 +02:00
9490612630 rename the caller option to the more apt caller (#547)
Reviewed-on: fediversity/fediversity#547
2025-10-22 15:14:10 +02:00
195bc476be rename pve node in test (#546)
Reviewed-on: fediversity/fediversity#546
2025-10-22 15:04:22 +02:00
575910f29f remove the (so far unused) model options (#545)
Reviewed-on: fediversity/fediversity#545
2025-10-22 15:02:16 +02:00
9c54152439 split data model by test, preventing need to pass args for unrelated tests (#544)
Reviewed-on: fediversity/fediversity#544
2025-10-20 17:35:07 +02:00
ab1b48d2e7 factor out utils (#543)
Reviewed-on: fediversity/fediversity#543
2025-10-20 15:43:57 +02:00
a2a4977139 use upstreamed version of terraform-backend (#541)
Reviewed-on: fediversity/fediversity#541
2025-10-11 14:02:42 +02:00
e964bbb517 remove unused acme node for data model tests (#540)
Reviewed-on: fediversity/fediversity#540
2025-10-11 14:00:04 +02:00
82d6059158 factor out tf-env.nix (#539)
Reviewed-on: fediversity/fediversity#539
2025-10-06 16:58:59 +02:00
2a7135fd64 propagate http backend config (#538)
Reviewed-on: fediversity/fediversity#538
2025-10-06 13:50:25 +02:00
fd49868cda simplify out intersection (#537)
Reviewed-on: fediversity/fediversity#537
2025-10-06 13:35:58 +02:00
9a0f60e819 add a TF http backend to store state, see #515 (#536)
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
Reviewed-on: fediversity/fediversity#536
2025-10-06 13:11:03 +02:00
1efd15e654 factor out TF setup (#535)
Reviewed-on: fediversity/fediversity#535
2025-10-04 21:02:35 +02:00
a12a1606ed move timeout expectation to tests (#534)
Reviewed-on: fediversity/fediversity#534
2025-09-30 12:00:27 +02:00
f076e5653d proxmox scripts: set experimental features rather than implicitly depending on them (#531)
Reviewed-on: fediversity/fediversity#531
2025-09-23 10:23:58 +02:00
404ad12533 make nixos.nix reusable rather than opinionated (#533)
Reviewed-on: fediversity/fediversity#533
2025-09-23 10:20:57 +02:00
ba95bae430 stop passing pathFromRoot where not needed (#532)
Reviewed-on: fediversity/fediversity#532
2025-09-23 10:13:20 +02:00
03a22b1cb8 factor out nixos conf (#526)
Reviewed-on: Fediversity/Fediversity#526
2025-09-18 20:06:23 +02:00
1f7c7c8f1e fix proxmox-provision.sh (#525)
Reviewed-on: Fediversity/Fediversity#525
2025-09-18 20:03:28 +02:00
3fd61aea5b better document function.nix (#524)
Reviewed-on: Fediversity/Fediversity#524
2025-09-18 18:22:09 +02:00
26d39b7b93 update readme - explain remaining folders 2025-09-15 16:25:47 +02:00
a21fa44c94 fix password inputs (#522)
- hide password input, closes #520
- allow empty password input, closes #521

Reviewed-on: Fediversity/Fediversity#522
2025-09-14 00:21:01 +02:00
9d7a696ffe panel: add git (#519)
needed by nixops4 since #375

Reviewed-on: Fediversity/Fediversity#519
2025-09-13 16:08:31 +02:00
dadbbe04df deduplicate tests to settle for running through the (cache-friendly) flake (#516) 2025-09-13 13:21:58 +02:00
567368816c Automated break down of Nix flake checks for CI (#512)
picking up from #492 to fix the CI issue.

note that i left the non-flake checks duplicating with flake ones (`pre-commit`, `panel`) in on both sides to get a sense of which way might be preferable.

Co-authored-by: Nicolas “Niols” Jeannerod <nicolas.jeannerod@moduscreate.com>
Reviewed-on: Fediversity/Fediversity#512
2025-09-06 17:00:11 +02:00
da77c4c8eb fix formatting (#513)
Reviewed-on: Fediversity/Fediversity#513
2025-09-04 12:36:48 +02:00
e30b052cfc ensure path availability in deployments (#511)
Reviewed-on: Fediversity/Fediversity#511
2025-09-03 17:15:35 +02:00
0f7433abde data model: add TF test (#506)
add a data model deployment test by VM using opentofu.
builds upon #505.

Reviewed-on: Fediversity/Fediversity#506
2025-09-03 15:14:40 +02:00
ccbf82d546 test data model thru VM (#505)
test deployments using data obtained through the data model in VMs.

caveats:

- SSH currently has a `run` abstraction that the nixops4 model still lacks
- the deployed (trivial) configuration on activation has not facilitated new ssh connections (for subsequent) updates, i.e. a more sophisticated configuration would be needed for real-life usage.

Reviewed-on: Fediversity/Fediversity#505
2025-09-03 14:13:13 +02:00
27f96b2504 fix data model issues introduced at #501 (#509)
Signed-off-by: Kiara Grouwstra <kiara@procolix.eu>
Reviewed-on: Fediversity/Fediversity#509
2025-09-03 14:07:53 +02:00
09db4d6217 factor out function wrapper to module function (#503)
lifts the `{ input output }` function wrapper out of the user interface to `function.nix`, simplifying usage.

Reviewed-on: Fediversity/Fediversity#503
2025-09-03 13:06:04 +02:00
c3027eb7d1 move function submodule type (#501)
Reviewed-on: Fediversity/Fediversity#501
2025-09-03 12:52:57 +02:00
4049ca8156 allow different deployment types (#498)
Reviewed-on: Fediversity/Fediversity#498
2025-09-03 12:44:44 +02:00
40e8a0a3c5 CI: allow manual trigger (#495)
Reviewed-on: Fediversity/Fediversity#495
2025-09-03 12:43:25 +02:00
f954ed5389 add proxmox repro test (#345)
closes #325

Reviewed-on: Fediversity/Fediversity#345
Reviewed-by: Nicolas Jeannerod <nicolas.jeannerod@moduscreate.com>
Co-authored-by: Kiara Grouwstra <kiara@procolix.eu>
Co-committed-by: Kiara Grouwstra <kiara@procolix.eu>
2025-09-01 14:31:50 +02:00
9d903f3ef7 Complete the data model with a runtime environment and end-to-end test (#481)
Closes #103

At last, a fully fledged data model for what Fediversity really is and does. This comes with a test that exercises a very simple but functionally complete arrangement with all ingredients fo the business logic: a dummy resource (login shell), a dummy application (`hello`, which needs a shell to live in), a dummy environment (a single NixOS VM that allows for one, the operator's, login shell), and a deployment of that environment given a dummy configuration (that enables `hello`).

The next step will be to lift this purely evaluation-level test into a VM test which verifies that the resulting VM indeed has `hello` deployed to the operator's user account.

Caveats:
- The exact naming has a bit of room for improvement, and may have diverged from the design document
- The test is not as pedantically type safe as it could be, since we simply use `types.raw` for resources such as NixOS users settings which *could* be more finely delineated

Co-authored-by: Kiara Grouwstra <kiara@procolix.eu>
Co-authored-by: kiara Grouwstra <kiara@procolix.eu>
Reviewed-on: Fediversity/Fediversity#481
Reviewed-by: kiara Grouwstra <kiara@procolix.eu>
Co-authored-by: Valentin Gagarin <valentin.gagarin@tweag.io>
Co-committed-by: Valentin Gagarin <valentin.gagarin@tweag.io>
2025-08-27 00:45:49 +02:00