Johannes Kirschbauer
1953540d08
tests: update inventory tests to use whole clan modules
2025-10-30 13:54:05 +01:00
Johannes Kirschbauer
2e55028a1b
services: move into clan submodule
2025-10-30 13:53:49 +01:00
Johannes Kirschbauer
affb926450
services: remove duplicate module args
2025-10-30 10:10:55 +01:00
Johannes Kirschbauer
c7f65e929f
inventoryAdapter: replace importedModulesEvaluated by equivalent config
2025-10-30 10:10:31 +01:00
hsjobeki
eb08803e2a
revert bfb30251e6
...
revert lib: replace uniqueStrings after upstreamed
TODO: Reapply after 25.11 release
2025-10-30 08:29:43 +00:00
Johannes Kirschbauer
b3323007b2
test: update test filesets
2025-10-28 09:04:50 +01:00
hsjobeki
fb25ab028b
Merge pull request 'services: add role settings with explicit warning' ( #5676 ) from role-settings into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5676
2025-10-27 15:33:39 +00:00
Johannes Kirschbauer
bfb30251e6
lib: replace uniqueStrings after upstreamed
2025-10-27 14:00:46 +01:00
Johannes Kirschbauer
33115f76b7
services: add role settings with explicit warning
2025-10-27 13:31:44 +01:00
hsjobeki
6b3fd57174
Merge pull request 'extraModules: soft deprecation for string extraModules' ( #5656 ) from inline into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/5656
2025-10-27 12:12:17 +00:00
Johannes Kirschbauer
24b94965d8
docs: add experimental note to 'exports'
2025-10-24 17:05:47 +02:00
Johannes Kirschbauer
6ee4657da3
extraModules: soft deprecation for string extraModules
2025-10-24 12:54:17 +02:00
Johannes Kirschbauer
f50475fcfd
services: allow inline modules
2025-10-23 18:43:07 +02:00
pinpox
dc0b7fc3bf
Add library function to read public vars
2025-10-22 19:56:10 +02:00
Johannes Kirschbauer
c838e08d77
lib/modules: fixup paths
2025-10-21 20:41:28 +02:00
Johannes Kirschbauer
346e3d816a
lib/modules: move modules out of lib
2025-10-21 19:35:50 +02:00
Johannes Kirschbauer
345aa12e99
build-inventory: move inventory and inventoryClass into explizitly different folders
2025-06-25 17:55:45 +02:00
Johannes Kirschbauer
0c8f23ed3e
Chore: add _file for internals error tracing
2025-06-25 15:47:18 +02:00
Johannes Kirschbauer
0bb621f0f7
inventory/interface: reduce apply arguments chain by adding it to _module.args
2025-06-25 15:15:22 +02:00
Johannes Kirschbauer
39d0347c22
Fix(clan-services): allMachines might not contain the machineName
2025-06-20 14:41:17 +02:00
Johannes Kirschbauer
aa26d2ebf2
feat(clan-services): enable recursive services
...
Using recursive services is potentially complex and requires carefully
designed services. Nested Services create nixos modules which must be
mergable as always.
2025-06-15 20:06:02 +02:00
Johannes Kirschbauer
aa65e8e533
chore(clan-service): remove and unify unecessary bindings
2025-06-14 20:03:53 +02:00
Johannes Kirschbauer
216494c3db
feat(clan-service): add module context for better error messages
2025-06-14 20:03:53 +02:00
Johannes Kirschbauer
b3321d5482
Fix(tests/inventory): fix test by adding passtrhough
...
Since nixosModule is not inspectable during unit test
2025-06-04 14:30:12 +02:00
Johannes Kirschbauer
4883b11bb6
Feat(clanServices): expose all other instance options than nixosModule
...
This is usefull for augmenting the perInstance module
2025-06-04 14:29:36 +02:00
Johannes Kirschbauer
0180013e68
docs(service-modules): add description and docs for options
2025-06-04 12:40:37 +02:00
Johannes Kirschbauer
9214559d38
Fix(tests/inventory): fix test assertions due to change in the exported structure
2025-06-03 18:30:04 +02:00
Johannes Kirschbauer
c6947a8fab
feat(inventory/instances): add option for extraModules to roles
2025-06-03 18:17:16 +02:00
Johannes Kirschbauer
97d7c38ba7
chore(inventory/instances): add forward all role attributes to the service
2025-06-03 17:38:02 +02:00
Johannes Kirschbauer
582841ba05
feat(inventory/instances): map over all machines and return lazy attributes
2025-06-03 17:37:04 +02:00
DavHau
1add6a6314
clan tests: convert makeTestClan to a module
...
Let's not put yet another wrapper around runTest, instead expose our logic as a module that can be imported into any nixos-vm-test
2025-06-03 19:38:02 +07:00
Johannes Kirschbauer
4f79c3e47d
feat(clanServices): add 'readme' to module manifest
2025-05-20 17:00:53 +02:00
Johannes Kirschbauer
4b36a6c170
Feat(inventory/manifest): vendor {description, categories} from 'clanModules'
2025-05-12 14:19:04 +02:00
Johannes Kirschbauer
38b76aa5e5
Refactor(inventory/manifest): move into seperate file
2025-05-10 13:58:21 +02:00
Johannes Kirschbauer
b71e5378d6
Refactor(inventory/modules): add support for local clan.modules and migrate all checks
2025-05-08 17:17:46 +02:00
Johannes Kirschbauer
f83a823e49
fix(services): features.API set to true and readOnly
2025-05-06 18:58:40 +02:00
Johannes Kirschbauer
dfa5a228e8
feat(clanLib): init evalServiceSchema
2025-05-05 21:55:29 +02:00
Johannes Kirschbauer
c88c68749e
API(clanInternals): add 'evalServiceSchema' endpoint
2025-05-05 21:46:20 +02:00
Johannes Kirschbauer
2d5e337f81
tests: add error prefix for json schema in checks
2025-05-05 21:46:16 +02:00
Johannes Kirschbauer
662787f96e
Checks: add json-compat check wrapper to ensure all clan.modules stay json-compatible
2025-04-29 15:31:02 +02:00
Johannes Kirschbauer
d6714355b5
refactor(clan.service): make evalClanService a standalone function to interact with standalone modules
2025-04-29 15:12:44 +02:00
Johannes Kirschbauer
12709227ee
Feat(clan.service): require roles.interface to be json serializable
2025-04-29 14:42:47 +02:00
Johannes Kirschbauer
be165c1462
Feat(clan.service): init automatic assertions for api schema checks
2025-04-27 11:49:56 +02:00
Johannes Kirschbauer
5253c155c0
feat(services): init feature flags in the module manifest: 'manifest.features.API'
2025-04-27 11:07:45 +02:00
Johannes Kirschbauer
1bad82b5c0
Fix: manually define empty tags for testing
2025-04-21 17:17:56 +02:00
Johannes Kirschbauer
b0fb0752e9
fix(checks/data-mesher): format, dont pass a duplicate data-mesher module
2025-04-09 18:03:04 +02:00
Johannes Kirschbauer
3ccfcdc0c1
fix(eval/inventory): fix some test arguments to buildInventory
2025-04-09 17:38:06 +02:00
Johannes Kirschbauer
7c955f2820
chore(lib/getModuleClass): remove unused library function
2025-04-08 22:09:10 +02:00
Johannes Kirschbauer
8c970dc04a
chore(inventory/instances): don't eagerly test the service modules _class
2025-04-08 20:30:35 +02:00
Johannes Kirschbauer
375b18fd32
feat(inventory/instances): dont set module location to allow underlying error location to bubble up
2025-04-08 14:36:29 +02:00