Johannes Kirschbauer
02d35395a8
modules: add explicit class constraints
2025-07-13 21:00:30 +02:00
Johannes Kirschbauer
dd1429c89f
Docs: fix rendering clan source code url
2025-07-09 17:24:20 +02:00
Jörg Thalheim
8d4099d13d
refactor: move docs transformOptions to clanLib to reduce rebuilds
...
- Add clanLib.docs.stripStorePathsFromDeclarations to deduplicate code
- Update all documentation generation to use the shared function
- This strips store paths from option declarations to prevent options.json
from rebuilding when only store paths change but content remains the same
- Reduces unnecessary documentation rebuilds when making unrelated changes
2025-07-09 16:59:58 +02:00
Jörg Thalheim
bd42d67b0c
override-inputs: filter out self
2025-07-07 21:25:33 +02:00
Jörg Thalheim
c64dbceceb
checks/inventory: optimize eval tests to use filtered sources
...
Replace full flake source (self) with minimal filtered filesets to prevent
unnecessary rebuilds when unrelated files change. All three inventory eval
tests now use the same unified fileset containing only necessary files.
This follows the same optimization pattern applied to other eval tests,
significantly reducing rebuild frequency during development.
2025-07-07 20:41:20 +02:00
Jörg Thalheim
00914311a4
don't rebuild eval tests on each ci run
2025-07-07 20:05:45 +02:00
Jörg Thalheim
4f13049ee2
put flake input overrides into a helper function
2025-07-07 15:59:09 +00:00
Johannes Kirschbauer
db6220b57b
Templates/list: display templates via exposed nix value
2025-07-06 14:37:03 +02:00
Jörg Thalheim
d5aa917ee7
migrate all projects to python 3.13 linting
2025-07-04 18:39:01 +02:00
Johannes Kirschbauer
f8d36634ee
inventory: fix missing default for instances.*.module
2025-07-03 12:06:29 +02:00
hsjobeki
672db4a33f
Merge pull request 'clanServices: add flake level exports' ( #4172 ) from flake-exports into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4172
2025-07-02 08:42:07 +00:00
Johannes Kirschbauer
82c80a9a53
clan/exportsModule: add missing default
2025-07-02 10:32:56 +02:00
Johannes Kirschbauer
16116505ab
flake-exports: add options documentation
2025-07-02 10:22:09 +02:00
Johannes Kirschbauer
454936336f
clanServices: add test to ensure nixosModule is imported
2025-07-01 17:35:04 +02:00
Johannes Kirschbauer
38bb2dfb56
clanServices: remove recursive services
...
Initially added in #3972 we've decided to remove them, because they are to complex to use correctly
2025-07-01 17:03:58 +02:00
Johannes Kirschbauer
d10fe7a8ee
clanServices: add flake level exports
2025-07-01 16:54:19 +02:00
hsjobeki
29a2103aab
Merge pull request 'clanServices: clean up, add tests' ( #4157 ) from default-modules into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4157
2025-07-01 12:09:28 +00:00
hsjobeki
d858206fd2
Merge pull request 'Lib/flakes: remove self references' ( #4165 ) from fix-lib into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4165
2025-07-01 12:03:52 +00:00
Johannes Kirschbauer
c1bbd970d4
lib.clan: properly merge self attrs
2025-07-01 14:02:02 +02:00
Johannes Kirschbauer
5c7256e063
Lib/flakes: remove self references
2025-07-01 13:57:49 +02:00
Johannes Kirschbauer
93fc2e2238
modules/clan: inject .clan into self.inputs if self is an attribute set
2025-07-01 13:19:37 +02:00
Johannes Kirschbauer
a131c3cbbb
checks: mock self.inputs.self by default
2025-07-01 13:19:37 +02:00
Johannes Kirschbauer
15f3cd5547
clanServices: add tests for resolve modules
2025-07-01 13:19:37 +02:00
Johannes Kirschbauer
15c5d539fc
clanServices: remove unnecessary localModules
2025-07-01 13:19:37 +02:00
Johannes Kirschbauer
cf6fc744ab
clanServices: remove unneeded self reference in lib
2025-07-01 13:19:37 +02:00
Mic92
40d776b953
Merge pull request 'vars-check: replace slow python implementation with pure nix' ( #4144 ) from machine-class into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4144
2025-07-01 10:53:27 +00:00
Jörg Thalheim
0a4bdf2e83
vars-check: replace slow python implementation with pure nix
2025-07-01 12:46:50 +02:00
Johannes Kirschbauer
ae274d6b82
buildClan: replace all usages by lib.clan
2025-07-01 11:56:31 +02:00
Johannes Kirschbauer
2ebeb2e205
clanLib: remove select
2025-06-30 16:14:01 +02:00
DavHau
ee5fa8fe74
checks: rename attributes for better discoverability
...
- all eval checks prefixed with `eval-`
- all service checks prefixed with `service-`
2025-06-30 19:04:21 +07:00
DavHau
8de7a9f040
services: improve error when module not found
2025-06-30 11:44:30 +00:00
DavHau
e0b2d15361
tests: explicitly specify services to be sourced from self
...
See previous commit
2025-06-30 10:13:46 +00:00
DavHau
50cce90527
clan services: use service modules from clan-core by default
...
Users will use clan-core services first before making their own. Therefore this is a better default. Also it allow us to simplify rendering of our docs
2025-06-30 10:13:46 +00:00
Jörg Thalheim
f1fd710dd1
add regression test for macOS evaluation
2025-06-29 23:58:19 +02:00
Jörg Thalheim
622597e70f
overridePkgs: drop unneeded parantheses
2025-06-29 23:58:19 +02:00
Jörg Thalheim
43b205624d
no longer fallback to "nixos" machineClass
...
we should always have a value defined.
2025-06-29 23:58:19 +02:00
Jörg Thalheim
43df2c9a14
fix unlocked flake.lock in tests
2025-06-28 08:50:41 +02:00
Jörg Thalheim
e152740017
container-test-driver: implement wait_for_open_port
2025-06-27 18:35:55 +02:00
kenji
89e8673e82
Merge pull request 'lib/test/sops: Fix secret deployment for test machines' ( #4120 ) from kenji/ke-fix-sops-test-integration into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4120
2025-06-27 10:45:41 +00:00
a-kenji
0a56f60005
lib/test/sops: Fix secret deployment for test machines
...
Fix secret deployment for test machines in our NixOS vm and container
tests.
We filter now if we really need to deploy a certain set of files as a
deployment script, which alleviates us running into these edgecases:
```
error: The option `nodes.server.system.activationScripts.setupSecrets.text'
was accessed but has no value defined. Try setting the option.
```
2025-06-27 12:19:46 +02:00
Johannes Kirschbauer
d011b1ab02
docs: rename all references from 'buildClan' to 'lib.clan'
2025-06-27 09:54:23 +02:00
Johannes Kirschbauer
b34e5b30e5
modules: add explizit class to clan module
2025-06-27 09:53:40 +02:00
Johannes Kirschbauer
79ec0f07eb
modules: fix consistent nixpkgs and nix-darwin injection
2025-06-27 09:21:19 +02:00
Johannes Kirschbauer
7833a56723
modules.nixosVmTest: rename to nixosTest to match the target module _class
2025-06-26 17:37:42 +02:00
Johannes Kirschbauer
50f6b4a095
modules.clan.default: move specialArgs into common place
2025-06-26 17:37:42 +02:00
Johannes Kirschbauer
e195a77476
buildClan: deprecate in favor of 'clan'
...
clan.lib.clan { <your definition> } returns an eval result
In contrast to buildClan which returns the .config
This allows for better introspection
2025-06-26 17:08:47 +02:00
Johannes Kirschbauer
0271af0dcb
modules: move clan module to flake.modules.clan.default
2025-06-26 17:08:47 +02:00
Johannes Kirschbauer
7d755d04b5
chore: clean up logic around clanInternals
2025-06-26 16:12:35 +02:00
Johannes Kirschbauer
a95d39923e
chore: buildClan warn access without .config prefix
...
Makes behavior consistent with nixosSystem, nixpkgs.
Alows access to options and other eval modules results
Needed for error tracking and better devx
2025-06-26 15:21:49 +02:00
Johannes Kirschbauer
acaf44e2c5
chore: remove spurious class
2025-06-26 15:20:18 +02:00