Commit Graph

3191 Commits

Author SHA1 Message Date
Johannes Kirschbauer
82af09443a Chore(ui/taglist): snapshot test 2025-06-03 19:09:43 +02:00
hsjobeki
ea8865e22b Reaply: #3777: fix/machine-detail-view 2025-06-03 18:42:47 +02:00
hsjobeki
a45dba724e Merge pull request 'Typography component V2' (#3797) from ui/typography into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3797
2025-06-03 16:36:19 +00:00
DavHau
01737d2bf7 clan tests: convert makeTestClan to a module
Let's not put yet another wrapper around runTest, instead expose our logic as a module that can be imported into any nixos-vm-test
2025-06-03 19:38:02 +07:00
DavHau
286ac97063 Revert "Merge pull request 'fix/machine-detail-view' (#3777) from fix/machine-detail-view into main"
This reverts commit c08a9dc1ad, reversing
changes made to c4312bfa18.
2025-06-03 19:35:19 +07:00
Mic92
1ed2ff77f0 Merge pull request 'fix buildhost re-using control socket for updates' (#3824) from build-host into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3824
2025-06-03 12:21:22 +00:00
hsjobeki
c08a9dc1ad Merge pull request 'fix/machine-detail-view' (#3777) from fix/machine-detail-view into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3777
2025-06-03 12:10:21 +00:00
Jörg Thalheim
89b436b8a1 fix buildhost re-using control socket for updates
this is actually a serious issue because it also would result doing ssh
to the wrong host: https://git.clan.lol/clan/clan-core/issues/3822
2025-06-03 14:01:49 +02:00
Michael Hoang
10b89fe8fd cli: allow using commands from local flakerefs for debugging 2025-06-03 14:07:45 +10:00
Qubasa
bd7a5694e2 clan-cli: Fix test_create::test_clan_create_api 2025-06-02 15:39:50 +02:00
Qubasa
27791477b1 inventory: Add buildHost argument 2025-06-02 14:52:13 +02:00
DavHau
65d9ef02dc generate-test-vars: fake prompt inputs
Use fake prompt inputs when generating vars for testing
2025-05-31 17:14:26 +07:00
DavHau
e81771a724 tests: test vars generation for all clan service tests 2025-05-31 12:17:52 +07:00
DavHau
7ecc142ba9 sops: initialize age_plugins early
This avoids re-initializing the Flake object deep in the tree, which in turn leads to issue when overriding the Flake for testing, eg the URl would reset.
2025-05-31 11:27:17 +07:00
Brian McGee
8997f61ef8 feat(ui): Typography V2 2025-05-30 14:58:50 +01:00
Brian McGee
7f436d1a8b feat(ui): update border and background colors
To match latest design.
2025-05-30 13:46:57 +01:00
Brian McGee
8e155dd164 feat(ui): update primary colors
To match latest design.
2025-05-30 13:46:56 +01:00
Brian McGee
bbe14dbb3b chore(ui): setup base for Typography V2
Also removes Button stories for V1 component.
2025-05-30 13:46:55 +01:00
Brian McGee
543cfd4fc6 fix(ui): disable storybook devshell and package on Darwin 2025-05-30 11:06:14 +01:00
Brian McGee
807b9fd61f feat(ui): enable storybook snapshot tests
- adds a process-compose namespace for running `storybook` and `luakit` together to replicate the `webkit`-based rendering that happens inside of `webview`
- adds some helper scripts for running storybook tests and updating snapshots, with documentation in the README.
- adds a `clan-app-ui-storybook` package which builds and tests the storybook, checking for rendering changes

Currently, we’re only doing markup-based snapshot tests. We’re also using headless chromium for the tests by default as I couldn't get webkit to work in the nix build.

As we’re only markup-based for the time being, this should be ok. But eventually I'd like to get it working with webkit.
2025-05-30 11:06:14 +01:00
hsjobeki
672ef7c4d2 Merge pull request 'Tests(inventoryStore): add tests for intersecting nix/json lists' (#3783) from flake-models into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/3783
2025-05-30 08:35:13 +00:00
Johannes Kirschbauer
c42d981285 Test(InventoryPersistence): improve error message 2025-05-30 10:23:57 +02:00
Jörg Thalheim
229401e6ef vars upload: also add become_root 2025-05-28 20:35:45 +02:00
Jörg Thalheim
e733619139 test_upload_single_file: add missing ssh_control_master 2025-05-28 20:25:53 +02:00
Jörg Thalheim
14324a059b move test_ssh_remote to remote_test 2025-05-28 20:13:48 +02:00
Jörg Thalheim
ac31b20522 re-store controllmaster in various places where it got removed. 2025-05-28 16:21:30 +02:00
Jörg Thalheim
75dd389c2c no longer require controlmaster for interactive ssh
we only run one ssh command, so control master is not needed
2025-05-28 16:21:30 +02:00
Jörg Thalheim
31274212a8 ssh/remote: Improve error message if _control_path_dir is not set 2025-05-28 16:21:30 +02:00
Jörg Thalheim
e0ebea7eb8 update/upload_sources remove ssh_control_master again from upload_sources 2025-05-28 16:21:30 +02:00
Jörg Thalheim
f06313d5b2 add sudo_askpass_proxy 2025-05-28 16:21:30 +02:00
Jörg Thalheim
5a560ff219 ssh/remote: make sure we also cleanup clan-ssh in the error case 2025-05-28 16:21:30 +02:00
Jörg Thalheim
91406b2016 remove unused method 2025-05-28 16:21:30 +02:00
Johannes Kirschbauer
1582402634 Tests(inventoryStore): add tests for intersecting nix/json lists 2025-05-28 15:39:52 +02:00
Johannes Kirschbauer
dc94749647 Tests(inventoryStore): add fixture, make extensible 2025-05-28 15:06:17 +02:00
Johannes Kirschbauer
2da7ebaa21 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
e57c8f6f9a feat(InventoryStore): return a restricted view of the inventory 2025-05-28 14:04:34 +02:00
Johannes Kirschbauer
467aa546c4 Chore: update clan nix_models 2025-05-28 14:03:23 +02:00
Johannes Kirschbauer
19dbc0ff73 chore(nix_models): migrate import to use exported clan models 2025-05-28 14:03:22 +02:00
Johannes Kirschbauer
8eb2ad6c6d feat(nix_models): replace inventory model by holistic clan model 2025-05-28 14:02:43 +02:00
Johannes Kirschbauer
111983b508 feat(classgen): make type generation more predictable across 2025-05-28 14:02:43 +02:00
Johannes Kirschbauer
5271b5c599 Fix(inventoryStore): use 'nix_eval' wrapper to set the store correct 2025-05-28 11:34:16 +02:00
Johannes Kirschbauer
f6c869dbae Fix(clan_cli): filter tests files from source 2025-05-28 11:34:12 +02:00
Johannes Kirschbauer
673b6bb31f Fix(tests): fix failing pytests 2025-05-28 11:01:54 +02:00
Johannes Kirschbauer
6f0a4549a5 Tests(inventoryStore): fixup tests to run in ci 2025-05-28 10:42:47 +02:00
Johannes Kirschbauer
c6c43ba737 Feat(inventoryStore): add possibility to turn off output filtering 2025-05-28 10:42:47 +02:00
Johannes Kirschbauer
6debc2ddf9 Tests(clan_lib): enable clan_lib pytests not marked with_core 2025-05-28 10:42:47 +02:00
Johannes Kirschbauer
dac30c4dd7 refactor(persist/utils): rename apply_patch to 'set_value_by_path' 2025-05-28 10:16:48 +02:00
Brian McGee
dfd5e677ec chore: fmt 2025-05-28 08:24:03 +01:00
Brian McGee
4b7fc9e544 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
03db7d1fbc feat(ui): improve tags display in machine detail
Also introduces a new TagList component.
2025-05-28 08:20:45 +01:00