lassulus
5ed4881687
vms: use vm fact/secret-store
2024-02-15 10:41:25 +01:00
lassulus
a94201c1d0
allow passing of extra_config into machines
2024-02-11 08:40:41 +01:00
Jörg Thalheim
6646aad714
set nixpkgs.pkgs for secrets generation
...
This allows us to use the same nixpkgs instance for all machines.
2024-02-06 17:21:42 +01:00
Qubasa
8194b61e4b
cli,nix: Add machine_icon, machine_description
2024-02-06 19:25:34 +07:00
Qubasa
e0ba8dd6cb
build-clan: Removed unecessary arg, machineDescription and machineIcon
2024-02-05 16:56:13 +07:00
Qubasa
e8416856f7
Added machineIcon and machineDescription to buildClan
2024-02-05 14:18:40 +07:00
Jörg Thalheim
a183553419
build-clan: force system override in secrets generators
2024-01-17 14:40:46 +00:00
Jörg Thalheim
cc1ad1dc52
build-clan: don't set system with lib.mkForce
2024-01-17 15:25:29 +01:00
Jörg Thalheim
41b5e88808
use nix-unit from nixpkgs
2023-12-15 12:36:07 +01:00
Qubasa
c4331b168d
Changed clanIcon to be included into clanCore
2023-12-08 19:08:57 +01:00
Qubasa
2088afb79d
Added clanIcon
2023-12-08 19:01:11 +01:00
Jörg Thalheim
26c6954db0
move clanName into nixos machine configuration
2023-12-08 15:05:56 +00:00
DavHau
f38cc8a209
jsonschema: support mdDoc description
2023-11-21 17:29:22 +07:00
DavHau
96bd6855e9
lib/jsonschema: add more types and excludes
...
- Complete the types to cover almost everything
- exclude specific types like functionTo or package
2023-11-20 19:40:27 +07:00
DavHau
a656b5e83e
lib/jsonschema: support listOf unspecified
2023-11-20 17:03:42 +07:00
Jörg Thalheim
522387deee
pin nixos-wide registry to nixpkgs used to build the machine itself
...
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
Qubasa
8e9034ad02
Added clanName argument to clan-core.lib.builClan
2023-10-27 19:20:17 +02:00
DavHau
cf0953146d
api/machines: allow importing extra modules
...
- 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
DavHau
177be69eda
PUT api/machines/{name}/config: ensure only valid config is ever written
...
- 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
Jörg Thalheim
2ca9e9a16e
restore possibility to update all machines without having to specify them
2023-10-04 08:35:59 +02:00
lassulus
79be9078dc
restore clanInternals with valid nixos config
2023-09-29 19:39:35 +02:00
Jörg Thalheim
82bf417e17
add toplevel machines-json that can deploy all hosts
2023-09-28 15:23:25 +02:00
Jörg Thalheim
08cfa7d7b2
drop unused findNixFiles function
2023-09-28 14:21:03 +02:00
Jörg Thalheim
e550f32e96
clanInternals.machines: expose information as json
2023-09-27 18:42:49 +02:00
Jörg Thalheim
b3f24cf815
clanInternals.machines: invert system and machine name
2023-09-27 17:26:44 +02:00
Jörg Thalheim
f4d1c098ef
jsonschema: fix eval
2023-09-27 13:08:24 +00:00
lassulus
aeed648bd0
secrets: use clanInternal for crosscompiling, move sops generators to new file
2023-09-21 17:25:32 +02:00
lassulus
acf1c0b87a
lib jsonschema: add path
2023-09-15 12:17:07 +00:00
Jörg Thalheim
9f033aef55
fix quoting
2023-09-05 06:14:14 +00:00
Jörg Thalheim
d51dd39ae3
buildClan: fix importing machines from settings
2023-09-03 15:18:29 +02:00
Jörg Thalheim
cfec69fec4
different fix for missing secrets
2023-09-03 14:07:31 +02:00
Jörg Thalheim
f1e8070412
Revert "fix machines folder not beeing present yet"
...
This reverts commit 14335ae576 .
2023-09-03 13:53:20 +02:00
Jörg Thalheim
14335ae576
fix machines folder not beeing present yet
2023-09-03 13:42:04 +02:00
Jörg Thalheim
0a3982d0ac
fix machines folder not beeing present yet
2023-09-03 13:33:41 +02:00
Jörg Thalheim
5dd318e637
buildClan: machineName
2023-09-03 13:09:35 +02:00
DavHau
c9bfd0a5b5
clanCore: add example options
2023-09-02 19:15:29 +02:00
DavHau
75cfd84949
buildClan: set clanCore.directory and hostPlatform
2023-09-02 18:26:45 +02:00
DavHau
03808d9fbc
buildClan: fix missing argument clan
2023-09-02 18:24:34 +02:00
Jörg Thalheim
1d496c6363
buildClan: also import clanCore module
2023-08-30 16:41:50 +02:00
Jörg Thalheim
72768573db
drop non-existent clan modules
2023-08-29 22:30:33 +02:00
Jörg Thalheim
7c21453b17
lib.buildClan: fix flake reference
2023-08-29 22:27:13 +02:00
Jörg Thalheim
d88c628f57
buildClan: also allow machines without settings
2023-08-29 22:03:57 +02:00
Jörg Thalheim
a4e182debf
clan template: reduce autogenerate code to a minimum
2023-08-29 13:54:06 +00:00
DavHau
fb76ad45e8
webui: implement /api/machines/{name}/schema
2023-08-25 21:26:30 +02:00
Jörg Thalheim
4d183fff58
apply prettier to source tree
2023-08-24 14:13:02 +02:00
DavHau
52d6798315
clan-config: stop using jsonschema at all for CLI
...
- instead use options.json coming from nixosOptionsDoc
2023-08-15 15:48:17 +02:00
DavHau
cd048c2114
lan-config: handle nested options
2023-08-09 18:19:43 +02:00
DavHau
7262208a4c
clanLib.jsonschema: move tests from pkgs/clan-cli
2023-08-09 16:05:33 +02:00
DavHau
9438a9eb5f
clan-config: move jsonschema lib to clanLib
2023-08-09 16:05:33 +02:00
lassulus
96067a789d
move modules into nixosModules, add autoimport
2023-08-02 10:24:01 +02:00