Jörg Thalheim
cedc5113ea
add sudo_askpass_proxy
2025-05-28 16:21:30 +02:00
Jörg Thalheim
6839b9616d
ssh/remote: make sure we also cleanup clan-ssh in the error case
2025-05-28 16:21:30 +02:00
Jörg Thalheim
37840dd203
remove unused method
2025-05-28 16:21:30 +02:00
Johannes Kirschbauer
976c4d52cb
Tests(inventoryStore): add tests for intersecting nix/json lists
2025-05-28 15:39:52 +02:00
Johannes Kirschbauer
07a574cbb0
Tests(inventoryStore): add fixture, make extensible
2025-05-28 15:06:17 +02:00
Johannes Kirschbauer
4b5880d1cb
Fix(machines/create): use 'InventorySnapshot' as init argument
...
Inventory as a model is generally not json serializable
InventorySnapshot is the return value of InventoryStore.{read, write}
And should be used in API calls, because the other fields might not be compatible in general
2025-05-28 14:09:45 +02:00
Johannes Kirschbauer
104343a334
feat(InventoryStore): return a restricted view of the inventory
2025-05-28 14:04:34 +02:00
Johannes Kirschbauer
bac3e6c2b2
Chore: update clan nix_models
2025-05-28 14:03:23 +02:00
Johannes Kirschbauer
d482e22610
chore(nix_models): migrate import to use exported clan models
2025-05-28 14:03:22 +02:00
Johannes Kirschbauer
1ef2e13c85
feat(nix_models): replace inventory model by holistic clan model
2025-05-28 14:02:43 +02:00
Johannes Kirschbauer
7957fbaa4f
feat(classgen): make type generation more predictable across
2025-05-28 14:02:43 +02:00
Johannes Kirschbauer
db31b91401
Fix(inventoryStore): use 'nix_eval' wrapper to set the store correct
2025-05-28 11:34:16 +02:00
Johannes Kirschbauer
3e160d6392
Fix(clan_cli): filter tests files from source
2025-05-28 11:34:12 +02:00
Johannes Kirschbauer
84622222d8
Fix(tests): fix failing pytests
2025-05-28 11:01:54 +02:00
Johannes Kirschbauer
4c6063c75e
Tests(inventoryStore): fixup tests to run in ci
2025-05-28 10:42:47 +02:00
Johannes Kirschbauer
a49466e1a9
Feat(inventoryStore): add possibility to turn off output filtering
2025-05-28 10:42:47 +02:00
Johannes Kirschbauer
8ea35b2b99
Tests(clan_lib): enable clan_lib pytests not marked with_core
2025-05-28 10:42:47 +02:00
Johannes Kirschbauer
dd9ea44770
refactor(persist/utils): rename apply_patch to 'set_value_by_path'
2025-05-28 10:16:48 +02:00
Brian McGee
32cdbd2530
chore: fmt
2025-05-28 08:24:03 +01:00
Brian McGee
c9a3f6ea33
fix(ui): use asterisk html entity code
...
It wasn't rendering for me when using "*".
2025-05-28 08:20:45 +01:00
Brian McGee
1a31f12366
feat(ui): improve tags display in machine detail
...
Also introduces a new TagList component.
2025-05-28 08:20:45 +01:00
Brian McGee
4bdbe94dcd
fix(ui): normalize font sizes in machine detail view
2025-05-28 08:20:44 +01:00
Brian McGee
14a58238be
feat(ui): refine Button stories
...
Add separate examples of start and end icon
2025-05-28 08:20:44 +01:00
Brian McGee
2e9d3e8dbb
fix(ui): add default css in storybook preview
2025-05-28 08:20:43 +01:00
Johannes Kirschbauer
63733f2c14
Fix(test): migrate machine cli command tests to use the new functions
2025-05-27 17:57:08 +02:00
Johannes Kirschbauer
f591ac0c32
Feat(inventoryStore): add 'invalidate_cache' to the Flake protocol
2025-05-27 17:56:35 +02:00
Johannes Kirschbauer
e6d1f71907
Feat(inventory): remove legacy action functions
...
Inventory should only and always be accessed through the inventory store.
Manually reading and writing to the json file is highly insecure
2025-05-27 17:20:04 +02:00
Johannes Kirschbauer
c32d196428
Fix: configure deferred setting module path correctly
2025-05-27 16:31:54 +02:00
Johannes Kirschbauer
2312a65c17
Chore: rename secrets.get_machine to avoid ambiguity
2025-05-26 17:52:46 +02:00
Johannes Kirschbauer
90d9dbb242
Refactor(lib/inventory): move machine actions into clan_lib/machines/actions.py
2025-05-26 17:51:12 +02:00
hsjobeki
91a6f814d6
Merge pull request 'Feat(persist): add support for deferredModule read/write' ( #3752 ) from deferredModule-serde into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3752
2025-05-26 14:18:53 +00:00
Johannes Kirschbauer
55195e57e0
fix(morph/test): temporary workaround for morph test
2025-05-26 16:06:12 +02:00
Johannes Kirschbauer
14701fda01
chore: add todo comments for template logic in create machine
2025-05-26 16:05:20 +02:00
brianmcgee
85c20ccb49
Merge pull request 'feat(ui): introduces storybook' ( #3767 ) from feat/storybook into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3767
2025-05-26 13:55:46 +00:00
a-kenji
c0d7e85446
pkgs/generate-test-vars: Fix erroneous module import
...
The machines module lives in the `clan_lib` library.
2025-05-26 15:43:41 +02:00
a-kenji
cca0c2aff8
pkgs/generate-test-vars: Add basic module test
...
Add a basic module test that can catch breaking changes in module
usage.
2025-05-26 15:41:48 +02:00
Brian McGee
717f78b29c
feat(ui): introduces storybook
...
- adds the necessary dependencies and configuration for Storybook.
- refactors the `Button` component and adds some stories for it.
2025-05-26 12:56:51 +01:00
brianmcgee
784e90096b
Merge pull request 'feat(ui): add a clan context provider' ( #3744 ) from feat/clan-uri-context into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3744
2025-05-26 09:26:07 +00:00
Qubasa
b85aead33c
clan-cli: Fix too long path for socket issue #3756
2025-05-25 22:16:51 +02:00
Johannes Kirschbauer
fe933d8eb7
Fix(machines/create): check if machine is already created
2025-05-23 22:31:06 +02:00
Johannes Kirschbauer
c8588eddb6
Fix(machines/create): always add 'deploy.targetHost'
...
Rationale: not passing the value, is equivalent to deleting a value from the inventory store
See: 'delete_by_path'
deploy.targetHost has a default of null (None)
2025-05-23 22:07:09 +02:00
Johannes Kirschbauer
a7f4927e0c
test(persist/inventory): add test for adding deferredModule
...
This feature will allow us to read/write to 'settings' of service
'instances' which are of type deferredModule.
Usually a deferredModule needs to be evaulated, but because we use our
own type, which forces some constraints, we can safely perform read and
write
2025-05-23 21:49:16 +02:00
Johannes Kirschbauer
9cea8e8901
fix(persist/delete): delete explizitly
2025-05-23 21:47:12 +02:00
Johannes Kirschbauer
0bf183b73b
fix(tests): use inventory store to interact with the inventory
2025-05-23 21:46:35 +02:00
Johannes Kirschbauer
4d9202551f
feat(persist/inventory): add transformation and filtering to support deferredModules
2025-05-23 21:45:52 +02:00
Johannes Kirschbauer
1b11ecf37a
fixes(persist/util): fix some expected error messages in tests
2025-05-23 21:43:49 +02:00
Johannes Kirschbauer
38b2f0ca0f
test(persist/util): add test for adding empty submodules
2025-05-23 21:43:09 +02:00
Johannes Kirschbauer
040e12c3e9
refactor(persist/util): improve calc_patches
2025-05-23 21:42:35 +02:00
Johannes Kirschbauer
9572f36175
feat(persist/util): init parent_is_dict
...
Check if a parent value is of type dict
This utility is helpfull for cross checking of flattened dicts
2025-05-23 21:41:34 +02:00
Johannes Kirschbauer
598902a766
chore(inventory): find_deleted_paths rename variables
2025-05-23 21:40:02 +02:00