Commit Graph

65 Commits

Author SHA1 Message Date
83fe58e003 clan-core: add clan meta for ui usage 2024-05-31 16:26:46 +00:00
54fcfda43e lib.jsonschema: parse some more types
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.package-impure-checks Build done.
buildbot/nix-build .#checks.x86_64-linux.matrix-synapse Build done.
buildbot/nix-build .#checks.x86_64-linux.package-merge-after-ci Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-test_install_machine Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-vm-manager-pytest Build done.
buildbot/nix-build .#checks.x86_64-linux.module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.package-wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-webview-ui Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.package-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-flash-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-with-core Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-without-core Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-eval Build done.
checks / checks-impure (pull_request) Successful in 2m1s
2024-05-23 16:12:49 +02:00
fc7f544199 Fix invalid jsonschema testcase
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.package-merge-after-ci Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-vm-manager-pytest Build done.
buildbot/nix-build .#checks.x86_64-linux.treefmt Build done.
buildbot/nix-build .#checks.x86_64-linux.devShell-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.package-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.matrix-synapse Build done.
buildbot/nix-build .#checks.x86_64-linux.package-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.package-wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-install-iso Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-with-core Build done.
buildbot/nix-build .#checks.x86_64-linux.package-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-without-core Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
buildbot/nix-build .#checks.x86_64-linux.flash Build done.
checks / checks-impure (pull_request) Successful in 2m14s
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-eval Build done.
2024-05-04 14:11:28 +02:00
393ed517e2 jsonschema: Filter out 'invisible' options, that are there to throw errors on define
Some checks failed
buildbot/nix-build .#checks.x86_64-linux.package-impure-checks Build done.
buildbot/nix-build .#checks.x86_64-linux.package-merge-after-ci Build done.
buildbot/nix-build .#checks.x86_64-linux.package-clan-cli Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-test-backup Build done.
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.package-wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.flash Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-test_install_machine Build done.
buildbot/nix-build .#checks.x86_64-linux.package-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.lib-jsonschema-nix-unit-tests Build done.
buildbot/nix-build .#checks.x86_64-linux.renderClanOptions Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-build .#checks.x86_64-linux.package-install-iso Build done.
buildbot/nix-build .#checks.x86_64-linux.treefmt Build done.
buildbot/nix-eval Build done.
checks / checks-impure (pull_request) Successful in 2m6s
2024-05-03 19:40:42 +02:00
159198b81a Add jsonschema test case 2024-05-03 19:40:42 +02:00
6908527ebd Throw error on missing clanModule description or if description too long. Add xfce description.
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.flash Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-test-backup Build done.
buildbot/nix-build .#checks.x86_64-linux.package-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept Build done.
buildbot/nix-build .#checks.x86_64-linux.package-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-test_install_machine Build done.
buildbot/nix-build .#checks.x86_64-linux.renderClanOptions Build done.
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.package-default Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-merge-after-ci Build done.
buildbot/nix-build .#checks.x86_64-linux.treefmt Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-install-iso Build done.
buildbot/nix-eval Build done.
checks / checks (pull_request) Successful in 2m15s
checks / checks-impure (pull_request) Successful in 2m0s
2024-05-02 17:53:27 +02:00
570f04ecdc Fix zt-tcp-relay
All checks were successful
checks / checks-impure (pull_request) Successful in 2m12s
checks / checks (pull_request) Successful in 4m17s
2024-05-02 16:59:17 +02:00
3a9a7eedf9 Remove unreferenced clan modules
Some checks failed
checks / checks-impure (pull_request) Successful in 2m14s
checks / checks (pull_request) Failing after 4m19s
2024-05-02 16:34:25 +02:00
ee552d3020 Move vm clanModules to lib 2024-05-02 16:34:25 +02:00
a09e680fa0 Require README.md for every clan module 2024-05-02 16:34:25 +02:00
a48df5b993 Add package function-schema and module-schema. Add check for module jsonschema.
All checks were successful
checks / checks (pull_request) Successful in 49s
checks / checks-impure (pull_request) Successful in 2m4s
2024-05-01 23:16:17 +02:00
1ac982fbdb set networking.hostName to clanCore.machineName 2024-04-09 15:10:08 +02:00
6f9216d3b6 buildClan: add clan-core to specialArgs
All checks were successful
checks / check-links (pull_request) Successful in 13s
checks / checks (pull_request) Successful in 36s
checks / checks-impure (pull_request) Successful in 1m50s
2024-04-02 16:03:45 +07:00
e296a3019d re-format with nixfmt
All checks were successful
checks / check-links (pull_request) Successful in 21s
checks / checks-impure (pull_request) Successful in 1m50s
checks / checks (pull_request) Successful in 4m23s
2024-03-17 19:48:49 +01:00
1356ca9b8c fix cross-system deploy
This allows to be nixpkgs.pkgs and deploy systems of a different arch.
2024-02-21 10:55:53 +01:00
6871b29d15 vms: use vm fact/secret-store
All checks were successful
checks-impure / test (pull_request) Successful in 1m56s
checks / test (pull_request) Successful in 2m17s
2024-02-15 10:41:25 +01:00
eebd9d0b4a allow passing of extra_config into machines
All checks were successful
checks-impure / test (pull_request) Successful in 1m40s
checks / test (pull_request) Successful in 2m41s
2024-02-11 08:40:41 +01:00
614d1aecfd set nixpkgs.pkgs for secrets generation
All checks were successful
checks-impure / test (pull_request) Successful in 1m34s
checks / test (pull_request) Successful in 2m40s
This allows us to use the same nixpkgs instance for all machines.
2024-02-06 17:21:42 +01:00
21443d0647 cli,nix: Add machine_icon, machine_description
All checks were successful
checks-impure / test (pull_request) Successful in 1m48s
checks / test (pull_request) Successful in 3m0s
2024-02-06 19:25:34 +07:00
4421797f30 build-clan: Removed unecessary arg, machineDescription and machineIcon
All checks were successful
checks-impure / test (pull_request) Successful in 1m34s
checks / test (pull_request) Successful in 2m17s
2024-02-05 16:56:13 +07:00
b3815527a5 Added machineIcon and machineDescription to buildClan
All checks were successful
checks-impure / test (pull_request) Successful in 1m33s
checks / test (pull_request) Successful in 2m17s
2024-02-05 14:18:40 +07:00
4a3abf5fe9 build-clan: force system override in secrets generators 2024-01-17 14:40:46 +00:00
fb151b227d build-clan: don't set system with lib.mkForce
All checks were successful
checks-impure / test (pull_request) Successful in 1m30s
checks / test (pull_request) Successful in 2m30s
2024-01-17 15:25:29 +01:00
0bdf55b09f use nix-unit from nixpkgs 2023-12-15 12:36:07 +01:00
eba34bf2f7 Changed clanIcon to be included into clanCore
All checks were successful
checks-impure / test (pull_request) Successful in 1m35s
checks / test (pull_request) Successful in 2m18s
2023-12-08 19:08:57 +01:00
31d95e64f8 Added clanIcon
All checks were successful
checks-impure / test (pull_request) Successful in 1m31s
checks / test (pull_request) Successful in 2m5s
2023-12-08 19:01:11 +01:00
4aa60317fa move clanName into nixos machine configuration 2023-12-08 15:05:56 +00:00
f54ad0f739 jsonschema: support mdDoc description
All checks were successful
checks-impure / test (pull_request) Successful in 1m35s
checks / test (pull_request) Successful in 2m50s
2023-11-21 17:29:22 +07:00
3c4c2995ca lib/jsonschema: add more types and excludes
All checks were successful
checks-impure / test (pull_request) Successful in 1m35s
checks / test (pull_request) Successful in 2m48s
- Complete the types to cover almost everything
- exclude specific types like functionTo or package
2023-11-20 19:40:27 +07:00
e779bc2d11 lib/jsonschema: support listOf unspecified
All checks were successful
checks-impure / test (pull_request) Successful in 1m41s
checks / test (pull_request) Successful in 2m52s
2023-11-20 17:03:42 +07:00
7f6b0dfaea pin nixos-wide registry to nixpkgs used to build the machine itself
All checks were successful
checks-impure / test (pull_request) Successful in 1m59s
checks / test (pull_request) Successful in 2m16s
Instead of downloading archives and filling up vm disk space we can juse the nixpkgs version we already use for evaluating
2023-11-16 13:49:35 +01:00
a71584d9d2 Added clanName argument to clan-core.lib.builClan 2023-10-27 19:20:17 +02:00
bf176ad277 api/machines: allow importing extra modules
All checks were successful
checks-impure / test (pull_request) Successful in 36s
checks / test (pull_request) Successful in 2m6s
- add top-level option `clanImports` to clanCore
- clanImports can be set and checked as any other option
- buildClan resolves the clanImports from the settings.json before calling evalModules to prevent infinite recursions
- new endpoint PUT machines/{name}/schema to allow getting the schema for a specific list of imports
- to retrieve the currently imported modules, cimply do a GET or PU on machines/{name}/config which will return `clanImports` as part of the config

Still missing: get list of available modules
2023-10-25 16:36:30 +01:00
588bde069f PUT api/machines/{name}/config: ensure only valid config is ever written
All checks were successful
checks-impure / test (pull_request) Successful in 1m0s
checks / test (pull_request) Successful in 2m24s
- add CLAN_MACHINE_SETTINGS_FILE variable to temporarily override the machine settings file
- do a dry-run evaluation first with the new config before persisting it.
2023-10-24 18:40:48 +01:00
fcd1d18e15 restore possibility to update all machines without having to specify them
All checks were successful
checks-impure / test (pull_request) Successful in 21s
checks / test (pull_request) Successful in 30s
2023-10-04 08:35:59 +02:00
7ca9c49163 restore clanInternals with valid nixos config 2023-09-29 19:39:35 +02:00
16b33eb0a8 add toplevel machines-json that can deploy all hosts 2023-09-28 15:23:25 +02:00
293e7f8ae6 drop unused findNixFiles function 2023-09-28 14:21:03 +02:00
85f7e2f2cd clanInternals.machines: expose information as json
All checks were successful
checks-impure / test (pull_request) Successful in 8s
checks / test (pull_request) Successful in 24s
2023-09-27 18:42:49 +02:00
756820e4ca clanInternals.machines: invert system and machine name
All checks were successful
checks-impure / test (pull_request) Successful in 8s
checks / test (pull_request) Successful in 24s
2023-09-27 17:26:44 +02:00
c0799ce425 jsonschema: fix eval 2023-09-27 13:08:24 +00:00
aeed648bd0 secrets: use clanInternal for crosscompiling, move sops generators to new file 2023-09-21 17:25:32 +02:00
acf1c0b87a lib jsonschema: add path 2023-09-15 12:17:07 +00:00
9f033aef55 fix quoting 2023-09-05 06:14:14 +00:00
d51dd39ae3 buildClan: fix importing machines from settings
All checks were successful
checks-impure / test (pull_request) Successful in 12s
checks / test (pull_request) Successful in 9m40s
2023-09-03 15:18:29 +02:00
cfec69fec4 different fix for missing secrets 2023-09-03 14:07:31 +02:00
f1e8070412 Revert "fix machines folder not beeing present yet"
This reverts commit 14335ae576.
2023-09-03 13:53:20 +02:00
14335ae576 fix machines folder not beeing present yet
All checks were successful
checks-impure / test (pull_request) Successful in 12s
checks / test (pull_request) Successful in 23s
2023-09-03 13:42:04 +02:00
0a3982d0ac fix machines folder not beeing present yet
All checks were successful
checks-impure / test (pull_request) Successful in 11s
checks / test (pull_request) Successful in 24s
2023-09-03 13:33:41 +02:00
5dd318e637 buildClan: machineName
All checks were successful
checks-impure / test (pull_request) Successful in 11s
checks / test (pull_request) Successful in 21s
2023-09-03 13:09:35 +02:00