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
c78b736dd5
chore: deprecate usage of inventory.modules in favor of clan.modules
2025-05-07 19:12:07 +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
fc27c87e2b
Inventory/tags: init {nixos,darwin} tags
2025-04-21 16:43:15 +02:00
Johannes Kirschbauer
cd11835ec4
Reapply "Merge pull request 'chore(buildClan): move machineClass option into inventory.machines submodule' ( #3259 ) from hsjobeki/clan-core:buildclan-cleanup into main"
...
This reverts commit 6154b4cb3a .
2025-04-09 18:16:35 +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
Jörg Thalheim
6154b4cb3a
Revert "Merge pull request 'chore(buildClan): move machineClass option into inventory.machines submodule' ( #3259 ) from hsjobeki/clan-core:buildclan-cleanup into main"
...
This reverts commit 325a794d12 , reversing
changes made to afbae04aa6 .
2025-04-09 16:08:39 +02:00
Johannes Kirschbauer
c49dd6c462
chore(buildClan): move machineClass option into inventory.machines submodule
2025-04-09 12:50:43 +00:00
hsjobeki
5879bcd6d9
Merge pull request 'docs(authoring): restructure authoring guides' ( #3248 ) from hsjobeki/clan-core:docs-authoring into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3248
2025-04-08 19:58:59 +00:00
Johannes Kirschbauer
485b6ae5c4
docs(authoring): restructure authoring guides
...
Mainly because we have two module specs now and they will remain
valid for a while. We need to keep the older format documented for a while
2025-04-08 21:32:19 +02:00
Johannes Kirschbauer
dd62b6c97a
chore(inventory/services): dont check _class of legacy clanModules.
...
Let the module system handle the error. Once we shift to deferred
modules, things get more complicated and we cannot check the module
class eagerly
2025-04-08 20:30:33 +02:00
Brian McGee
b31cf42d2d
fix(docs): tighten up validation for meta.name and improved description
2025-04-08 10:44:35 +01:00
Michael Hoang
b5a57a72a0
build-clan: support constructing darwinConfigurations
2025-04-08 08:53:29 +02:00
Johannes Kirschbauer
208cd12328
feat(inventory/instances): only warn if instances is populated
2025-03-30 17:07:11 +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
2190dffad0
feat(inventory/instances): add wip warning
2025-03-30 15:29:05 +02:00
Johannes Kirschbauer
330a4b2449
feat(inventory/instances): preserve settings modifiers close at source
2025-03-29 15:39:02 +01:00
Johannes Kirschbauer
ca1777fddc
fix(inventory/instances): fix jsonschema compatibility
2025-03-29 13:25:19 +01:00
Johannes Kirschbauer
922a8510e4
feat(inventory/instances): init instances as new attribute for adding distributed services
2025-03-29 13:25:19 +01:00
Johannes Kirschbauer
c71d5e9d48
feat(inventory/modules): allow inline modules
2025-03-29 13:25:19 +01:00
Johannes Kirschbauer
fb883e54a6
Inventory: rename internal inventory toplevel attribute to 'inventoryClass'
2025-03-07 12:30:29 +00:00
Johannes Kirschbauer
9faf221b3e
inventory: refactor role resolution into submodule
2025-02-08 10:43:54 +07:00
Johannes Kirschbauer
e4af2225c7
Inventory: migrate import and config resolution into a module
2025-02-05 16:23:30 +07: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
db5f934869
Docs: fix all broken anchor references
2024-12-31 15:43:20 +01:00
a-kenji
2a29b8904c
lib/*/interface.nix: Fix typos
2024-12-17 11:58:28 +01:00
Johannes Kirschbauer
e5dc7c2f9d
docs: fix typo in inventory
2024-12-06 11:07:52 +01:00
Johannes Kirschbauer
7ac8b70ebd
clanInternals.inventory: expose used priorities
2024-12-04 17:41:41 +01:00
Johannes Kirschbauer
0d555df9ac
Docs/inventory: ad-hoc loading of user modules
2024-11-21 15:38:17 +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
Johannes Kirschbauer
4994b5acb5
Inventory: init inventory.tags for globally defined static and dynamic tags
2024-11-08 12:48:03 +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
danjujan
7a1e952c54
lib: fix typos
2024-10-29 12:37:34 +00:00