Qubasa
e9f21a01e9
clan-app: Make http server non blocking, add tests for the http server and for cancelling tasks
2025-07-13 21:00:30 +02:00
Qubasa
0d851580e1
clan-lib: Fix @API.register_abstract not throwing correct error when called directly without implementation
...
clan-app: Fix mypy lint
clan-lib: Mark test as with_core
2025-07-13 21:00:30 +02:00
Qubasa
be384420d5
clan_lib: Add test for check_valid_clan function
2025-07-13 21:00:30 +02:00
Qubasa
5ebf5b6189
clan-app: Implement open_clan_folder api request
2025-07-13 21:00:30 +02:00
a-kenji
2281e61232
pkgs/clan: Fix template listing
2025-07-09 19:29:15 +02:00
hsjobeki
6ad5d8d28c
Merge pull request 'openapi: add strict top-level checking' ( #4280 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4280
2025-07-09 15:24:45 +00:00
Johannes Kirschbauer
e3a882002c
openapi: add strict top-level checking
2025-07-09 16:57:06 +02:00
Johannes Kirschbauer
150e070a09
api: rename {list_system_services_mdns, list_system_storage_devices}
2025-07-09 16:51:42 +02:00
Jörg Thalheim
b53ff99248
sandbox_exec: refactor to use context manager for cleanup
...
Changed sandbox_exec_cmd to return a context manager that automatically
handles profile file cleanup. This ensures the temporary profile is
always removed, even if exceptions occur.
2025-07-09 16:27:04 +02:00
lassulus
7c11ed1d8d
clan-cli: implement macOS sandboxing for vars generation using sandbox-exec
...
Adds macOS sandboxing support similar to Linux bubblewrap implementation:
- Created clan_lib/sandbox_exec module with sandbox profile creation
- Implemented file system isolation allowing only tmpdir and nix store access
- Added network restrictions (deny outbound except localhost)
- Integrated sandbox-exec command into vars generation on macOS
- Added comprehensive test suite for macOS sandbox functionality
- Fixed working directory handling for generators writing to CWD
2025-07-09 13:51:18 +02:00
Mic92
ac7e082ce4
Merge pull request 'generate_test_vars: fix it' ( #4289 ) from generate_test_vars-fix-it into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4289
2025-07-09 11:49:06 +00:00
kenji
ab7d4409f6
Merge pull request 'pkgs/clan: Fix state list and add regression tests' ( #4284 ) from kenji/ke-test-state-list into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4284
2025-07-09 11:33:59 +00:00
a-kenji
65778cb9fe
pkgs/clan: Fix state list and add regression tests
...
Fix the `clan state list` subcommands, it now correctly propagates the
flake argument.
Also adds regression tests.
2025-07-09 13:22:21 +02:00
Mic92
8180745c50
Merge pull request 'fix build host with sudo' ( #4267 ) from fix-sudo into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4267
2025-07-09 10:03:01 +00:00
DavHau
84a21d1bab
generate_test_vars: fix it
2025-07-09 16:20:37 +07:00
kenji
28d5294292
Merge pull request 'pkgs/clan: Add test for clan flash list' ( #4281 ) from kenji/ke-test-flash into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4281
2025-07-09 09:08:34 +00:00
a-kenji
3a52189ed6
pkgs/clan: Add test for clan flash list
...
Add a test for `clan flash list`.
This tests the basic functionality, as well as that listing actually
works.
2025-07-09 11:02:24 +02:00
a-kenji
2aa2145876
pkgs/clan: Add test for clan templates list
...
Add a test for clan templates list.
This tests the basic functionality, as well as that listing actually
works.
2025-07-09 10:29:29 +02:00
Johannes Kirschbauer
6855ab859d
api: rename run_blocking_task into run_task_blocking
2025-07-09 09:43:56 +02:00
Johannes Kirschbauer
3828a0cf49
openapi: improve spec compat with swagger.io
2025-07-09 09:40:06 +02:00
hsjobeki
75501a914b
Merge pull request 'API Improvements' ( #4276 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4276
2025-07-08 21:17:12 +00:00
Johannes Kirschbauer
c9b8bdd6de
api/docs: sort resources into tree order
2025-07-08 23:06:20 +02:00
kenji
31f2c5106d
Merge pull request 'refactor: decouple vars stores from machine instances' ( #4269 ) from davhau/vars-new into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4269
2025-07-08 18:11:03 +00:00
Johannes Kirschbauer
4dfd151cd2
api: rename 'run_machine_deploy' into 'run_machine_update'
2025-07-08 17:21:18 +02:00
Johannes Kirschbauer
8ddd2b607e
api/disk_schema: make getter consistent
2025-07-08 17:20:59 +02:00
Johannes Kirschbauer
2eb6ee2264
api/disk_schema: make getter consistent
2025-07-08 16:31:51 +02:00
a-kenji
ec8effcd46
pkgs/cli: Add regression test for clan show
2025-07-08 15:55:01 +02:00
hsjobeki
09b8e2f49c
Merge pull request 'Templates/default: move clan configuration into its own file' ( #4262 ) from templates into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4262
2025-07-08 13:46:19 +00:00
Johannes Kirschbauer
7fefc8e3b2
Tests: dont expect a hardware-configuration.nix file
2025-07-08 15:34:16 +02:00
Johannes Kirschbauer
f8748d021b
tests: dont expect .clan-flake file, it is not strictly required
2025-07-08 14:58:24 +02:00
Jörg Thalheim
b42395234d
fix build host with sudo
2025-07-08 14:25:44 +02:00
DavHau
dbd48a54a3
refactor: decouple vars stores from machine instances
...
Stores now get machine context from generator objects instead of storing
it internally. This enables future machine-independent generators and
reduces coupling.
- StoreBase.__init__ only takes flake parameter
- Store methods receive machine as explicit parameter
- Fixed all callers to pass machine context
2025-07-08 18:30:16 +07:00
Qubasa
639d227055
clan-app: Fix delete tasks
...
clan-app: Fix delete tasks
2025-07-08 18:11:59 +07:00
Qubasa
48c7613556
clan-cli: Add verb 'cancel' to openapi
2025-07-08 17:43:14 +07:00
Qubasa
eb6166796c
clan-app: Generalize architecture for API requests
2025-07-08 17:32:59 +07:00
Qubasa
494830326d
clan-app: Add plug and play middleware interface
2025-07-08 17:32:59 +07:00
Qubasa
81d3437ff7
clan-cli: Fix Ruff linting errors
...
clan-cli: Ruff fixes
ignore noqa lint
fix more ruff issues
2025-07-08 17:25:02 +07:00
Qubasa
d656167cf2
ruff: Ignore TRY301 'raise-within-try' as there are legitimate reasons to do this
2025-07-08 17:23:32 +07:00
Qubasa
49e83954c5
clan-cli: Fix regression in ruff linter, where linter rules got overriden by local pyproject.toml
...
clan-app: Fix ruff regression where linter rules got overriden by local pyproject.toml
2025-07-08 17:23:32 +07:00
Johannes Kirschbauer
8d1e0353f8
test: don't expect a machines folder
2025-07-08 11:53:20 +02:00
Johannes Kirschbauer
809a115e58
clan/show: fix cli command
2025-07-08 10:15:35 +02:00
Johannes Kirschbauer
2f4f303048
create/clan: do initial commit
2025-07-07 15:50:00 +00:00
Johannes Kirschbauer
4f7d82671f
Templates: remove 'minimal-flake-parts'
2025-07-07 15:50:00 +00:00
Johannes Kirschbauer
0dce3fc7ec
templates: rename 'new_clan' to default
2025-07-07 15:50:00 +00:00
hsjobeki
bb236bb543
Merge pull request 'Docs: add missing documentation to api functions' ( #4243 ) from api-cleanup into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4243
2025-07-07 14:02:08 +00:00
Johannes Kirschbauer
d7cf79faa7
openapi: error on missing api function docstring
2025-07-07 15:48:36 +02:00
Johannes Kirschbauer
dab11cb020
docs/api: add docstrings to {list_mdns_services, set_clan_details}
2025-07-07 15:47:14 +02:00
Johannes Kirschbauer
f2cb6fef41
api: remove unused get_directory
2025-07-07 15:45:51 +02:00
Johannes Kirschbauer
655b87ad04
docs/api: add docstrings to {run_machine_install,run_machine_deploy}
2025-07-07 15:41:02 +02:00
Johannes Kirschbauer
d462ae501e
docs/api: add docstrings to {check_machine_ssh_login}
2025-07-07 15:38:09 +02:00