Jörg Thalheim
09c62b8b2d
Stop warning about inventory.instances
...
we now marked inventory.modules as deprecated, so this new api can be no
longer under development
2025-05-20 10:12:34 +02:00
Johannes Kirschbauer
af58c32238
Docs: unify 'manual' with 'guides' folder
...
This is one of the final steps towards strictly following
https://diataxis.fr/
2025-05-18 20:40:40 +02:00
hsjobeki
dce0ea4008
Merge pull request 'refactor: move clan_cli.error to clan_lib.error' ( #3677 ) from hsjobeki/clan-core:chores-1 into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3677
2025-05-16 15:17:41 +00:00
hsjobeki
aaafde59cf
Merge pull request 'Docs: init migration guide for clanServices' ( #3679 ) from service-docs into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3679
2025-05-16 14:39:22 +00:00
Johannes Kirschbauer
64bef5980f
docs: move authoring guides into guides subfolder
2025-05-16 16:33:39 +02:00
Johannes Kirschbauer
fe0507b47c
refactor: move clan_cli.error to clan_lib.error
2025-05-16 16:14:39 +02:00
Johannes Kirschbauer
f3c81f5095
feat(clanModules): add deprecation feature that generates a warning if the module is used
2025-05-14 17:06:58 +02:00
ginkogruen
ba6f5e3552
fix: Documentation for inventory.tags.nixos option
...
Corrected documentation referencing machines with the machineClass = "darwin" set, when it should be: machineClass = "nixos"
2025-05-12 22:12:43 +00:00
Johannes Kirschbauer
b3af5647a8
Feat: print better error if module was migrated
2025-05-12 16:12:43 +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
0b5fa1c731
Refactor(inventory/constraints): use explizit dependency injections instead of specialArgs
2025-05-10 13:42:47 +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
c78b736dd5
chore: deprecate usage of inventory.modules in favor of clan.modules
2025-05-07 19:12:07 +02:00
Johannes Kirschbauer
f83a823e49
fix(services): features.API set to true and readOnly
2025-05-06 18:58:40 +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
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
hsjobeki
617b87b29e
Merge pull request 'Refactor(inventory): move prio 'introspection' into inventoryClass to minimize the 'clanInternals' api' ( #3440 ) from hsjobeki/clan-core:ui-fixups into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3440
2025-04-30 10:24:34 +00: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
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
Michael Hoang
d3e474bb4b
docs: always evaluate with class of nixos
2025-04-22 23:39:47 +10:00
Johannes Kirschbauer
1bad82b5c0
Fix: manually define empty tags for testing
2025-04-21 17:17:56 +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
3ccfcdc0c1
fix(eval/inventory): fix some test arguments to buildInventory
2025-04-09 17:38:06 +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
e37f16f47a
treewide(clanLib): rename all occurences of {clan-core,self}.lib to 'clanLib'
2025-04-09 11:32:46 +02:00
Johannes Kirschbauer
7c955f2820
chore(lib/getModuleClass): remove unused library function
2025-04-08 22:09:10 +02: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
hsjobeki
0e26bfc228
Merge pull request 'chore(inventory/services): dont check _class in our logics. Let the error eccour in the final evaluation.' ( #3236 ) from hsjobeki/clan-core:role-settings into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3236
2025-04-08 19:49:46 +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
Sam Lehman
4fe822b340
devshells: name shells for clarity
2025-04-08 19:31:30 +00: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
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
Johannes Kirschbauer
be8b86153c
fix(getModulesSchema): forward argument to evalClanModules
2025-04-08 19:53:20 +02:00
Johannes Kirschbauer
29fbf361a7
chore(lib/modulesDocs): move dependency on clan-core and pkgs into function args
...
This is a good idea, to make lib agnostic from clan-core
The next step could be to rename the clan-core argument name
Or to explizitly pass the actual dependencies, instead of everything in
clan-core
2025-04-08 15:30:49 +02:00
hsjobeki
6df1b4a085
Merge pull request 'feat(inventory/instances): add extendSettings as argument to perInstance, perMachine' ( #3233 ) from hsjobeki/clan-core:role-settings into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3233
2025-04-08 12:46:44 +00: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
Johannes Kirschbauer
5db084e011
feat(inventory/instances): add extendSettings as argument to perInstance, perMachine
2025-04-08 13:15:06 +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
ce85aebc17
tests: add --show-trace to nix-unit tests
2025-04-08 08:53:29 +02:00
Michael Hoang
b5a57a72a0
build-clan: support constructing darwinConfigurations
2025-04-08 08:53:29 +02:00