Johannes Kirschbauer
e1cb17db35
build-clan: export default.nix that injects clanLib
...
This should be the single entry point, that includes clanLib
instead of importApply propagation
2025-06-25 12:07:59 +02:00
Johannes Kirschbauer
582841ba05
feat(inventory/instances): map over all machines and return lazy attributes
2025-06-03 17:37:04 +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
cb8be5015b
feat(modules): derive module list from inputs and local modules
2025-05-06 18:57:54 +02:00
hsjobeki
f6b0b5ada5
Merge pull request 'API(cli): add method to Flake class to allow calling nix functions' ( #3502 ) from hsjobeki/clan-core:improvements-2 into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3502
2025-05-05 20:16:28 +00:00
Johannes Kirschbauer
2d5e337f81
tests: add error prefix for json schema in checks
2025-05-05 21:46:16 +02:00
Johannes Kirschbauer
0d003f5424
Refactor(inventory): move prio 'introspection' into inventoryClass to minimize the 'clanInternals' api
2025-04-30 11:02:58 +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
9f159084cd
feat(buildInventory): move instance resolution into buildInventory
...
Such that buildClan doesn't have to compose the results
buildInventory should be more self contained. But it is NOT meant a
public API! use buildClan argument 'inventory' instead
2025-04-09 17:31:35 +02:00
Johannes Kirschbauer
d9741be51a
feat(lib/inventory): use clanLib instead of clan-core as internal specialArg. This has the benefit of beeing more narrow scoped.
2025-03-30 17:07:09 +02:00
Johannes Kirschbauer
005f44c964
Inventory: move build inventory into a module
2025-02-05 11:06:43 +07:00
Johannes Kirschbauer
6a5332ec8c
inventory: use special args to split build inventory into modules
2025-02-05 09:56:08 +07:00
Johannes Kirschbauer
a29b16d6a8
inventory: fix test: supported roles beeing to lazy
2025-02-05 09:56:08 +07:00
Johannes Kirschbauer
fdf936c423
Inventory: add new module class: class='clan'
2025-02-05 09:56:08 +07:00
Johannes Kirschbauer
2d9bf1e3cc
inventory: migrate tests
2025-02-04 13:20:15 +07:00
Johannes Kirschbauer
46dd52332a
Inventory: refactor build-inventory in more independent parts
2025-02-04 13:20:15 +07:00
Jörg Thalheim
522156efc8
Do not deprecate directory argument
2025-02-02 10:30:26 +00:00
Qubasa
ed6aaf5f0c
clan: Add autoloaded clanModules from flake inputs. Rename 'directory' to 'self' in buildClan
2025-01-24 12:32:04 +07:00
Johannes Kirschbauer
f0d8349575
Fix: add values prios eval tests
2025-01-10 12:06:01 +00:00
Johannes Kirschbauer
85d03f106b
Inventory: warning on undefined tags, instead of error.
2025-01-10 12:06:01 +00:00
Johannes Kirschbauer
cb0eb5f888
Inventory: improve check service message
2024-11-21 15:38:17 +00:00
Johannes Kirschbauer
b3bcecd61c
Inventory: init external modules support
2024-11-21 15:38:17 +00:00
Johannes Kirschbauer
9028027220
modules/frontmatter: init module interface as source of frontmatter
2024-11-15 20:04:06 +01:00
Johannes Kirschbauer
0a59803616
Inventory/constraints: add id's to inventory constraints to make them more observable
2024-11-13 13:58:43 +01:00
Johannes Kirschbauer
722012ed55
Modules/constraints: init constraints checking for inventory compatible modules
2024-11-12 18:36:38 +01:00
Jörg Thalheim
05ea59d38a
inventory: make sure we always define all roles, even if we don't have machines
...
this makes write writing modules easier
add missing roles assertions
2024-11-04 12:57:07 +01:00
Jörg Thalheim
9cdd55acf4
drop "system" argument from inventory
2024-10-09 12:07:58 +02:00
Johannes Kirschbauer
534e217020
Inventory/enabled: add eval test
2024-10-08 12:24:57 +02:00
Johannes Kirschbauer
3d88c79fec
Inventory/enable: dont include disabled services
2024-10-08 12:24:57 +02:00
Johannes Kirschbauer
52b26f6cda
Inventory/tests: add more eval smoke tests
2024-10-08 12:06:03 +02:00
Johannes Kirschbauer
1237071081
Fix: update tests and error message
2024-10-07 23:04:30 +02:00
Johannes Kirschbauer
cc0aa3d2a2
Fix: modules wrong path coercion
2024-10-07 22:47:49 +02:00
Johannes Kirschbauer
978c3c21d4
Inventory/modules: use explicit roles only
2024-10-02 10:01:44 +02:00
Johannes Kirschbauer
40f0e98b26
Inventory: improve role imports
2024-10-02 10:01:44 +02:00
Johannes Kirschbauer
9bee82d21e
Inventory: fixup imports to extraModules
2024-09-18 08:27:39 +02:00
Johannes Kirschbauer
d4123a14d2
Inventory: fix eval tests
2024-09-16 22:52:40 +02:00
Johannes Kirschbauer
72f79dee37
Inventory: docs improvements
2024-09-16 22:52:40 +02:00
Johannes Kirschbauer
bc56ce3f4c
Inventory: allow arbitrary imports from nix
2024-09-15 16:41:33 +00:00
Johannes Kirschbauer
8d5463587e
Inventory: set {name,meta.name} automatically
2024-09-15 15:20:35 +02:00
Johannes Kirschbauer
cfdba6c731
Inventory: only declare the module namespace if any config is defined
2024-09-15 13:35:53 +02:00
Johannes Kirschbauer
e889528ca0
ClanModules: make all module available to inventory
2024-09-13 17:18:20 +02:00
Johannes Kirschbauer
f0f870cf56
Inventory: add assertions, allow external references
2024-08-13 19:22:29 +02:00
Johannes Kirschbauer
bc520df9ff
Inventory: fix options
2024-07-17 10:55:46 +02:00
Johannes Kirschbauer
baa9dc1d1a
Inventory: extend model by deployment info
2024-07-17 10:09:58 +02:00
Johannes Kirschbauer
9e6f2743e0
Inventory: init: deployment info for machines
2024-07-17 10:07:57 +02:00
Johannes Kirschbauer
5ec952d29d
Inventory: migrate failure test message
2024-07-16 10:33:24 +02:00
Jörg Thalheim
d9932b3b81
wip: debug
2024-07-15 20:41:27 +02:00
Jörg Thalheim
ef4ef00d0f
inventory: better error message if tags are not found
2024-07-15 20:41:27 +02:00
Johannes Kirschbauer
ec5fb47b32
Inventory: fix tests
2024-07-15 20:41:27 +02:00
Johannes Kirschbauer
d99dfbcedd
Inventory: add global imports
2024-07-15 20:41:27 +02:00