Qubasa
728f8f5758
clan-vm-manager: Restore to known good version
2024-07-19 22:07:34 +02:00
Johannes Kirschbauer
6d441a1494
Classgen: make type order predictable
2024-07-19 18:49:16 +02:00
Johannes Kirschbauer
5c18f67fed
Classgen: refactor functions
2024-07-19 18:20:22 +02:00
Johannes Kirschbauer
3435db68c8
Classgen: add error reporting and combine common classes
2024-07-19 13:03:38 +02:00
Johannes Kirschbauer
6d49f5c926
Commit generated code otherwise CI cannot check types
2024-07-19 09:52:14 +02:00
Johannes Kirschbauer
07965598f5
Classgen: add mapped keys and more stuff
2024-07-18 21:58:36 +02:00
Johannes Kirschbauer
7e84eaa4b3
Init: Autogenerate classes from nix interfaces
2024-07-18 19:14:12 +02:00
Qubasa
8ad7c2b89a
clan: Fix treefmt not applying mypy lints on clan_cli and clan_app
2024-07-17 21:50:52 +02:00
Jörg Thalheim
0d6e2539e3
Revert "clan-cli: deprecate nix_shell() in favor of run_cmd()"
...
This reverts commit 37e6ca7a30 .
2024-07-17 14:04:49 +02:00
clan-bot
f317495e80
Merge pull request 'Inventory: init: deployment info for machines' ( #1767 ) from hsjobeki/clan-core:hsjobeki-main into main
2024-07-17 10:18:50 +00:00
Johannes Kirschbauer
076a5cad89
Unit tests: fix template test - override the input in the flake template
2024-07-17 12:06:23 +02:00
DavHau
117843021e
vars: implement dependencies
2024-07-17 16:42:16 +07:00
Johannes Kirschbauer
24b3674983
Inventory: fix dataclasses discrepancy once more
2024-07-17 11:39:18 +02:00
Johannes Kirschbauer
0bfba72739
Inventory: fix options
2024-07-17 10:55:46 +02:00
Johannes Kirschbauer
ef18d60286
Inventory: extend python dataclasses by schema changes
2024-07-17 10:09:58 +02:00
Johannes Kirschbauer
7e21428548
Inventory: extend model by deployment info
2024-07-17 10:09:58 +02:00
Qubasa
ccece77680
clan-app: WebExecutor now mirrors jsonschema api types generically
2024-07-16 16:34:59 +02:00
clan-bot
be4f90eca1
Merge pull request 'cli: add programms to allowed list' ( #1765 ) from hsjobeki/clan-core:hsjobeki-main into main
2024-07-16 11:52:56 +00:00
Johannes Kirschbauer
54dcbfae01
cli: add programms to allowed list
2024-07-16 13:49:16 +02:00
DavHau
d700f651b4
vars: add test for multiple machines
2024-07-16 18:35:13 +07:00
clan-bot
8a092cfed4
Merge pull request 'API: async signal integration migration' ( #1762 ) from hsjobeki/clan-core:hsjobeki-main into main
2024-07-16 09:37:25 +00:00
Johannes Kirschbauer
cc238ecc60
API: async signal integration migration
2024-07-16 11:28:20 +02:00
DavHau
37e6ca7a30
clan-cli: deprecate nix_shell() in favor of run_cmd()
2024-07-16 14:03:17 +07:00
DavHau
0e335f7ecc
impure-checks: improve performance by disabling dynamic deps
2024-07-16 12:42:45 +07:00
Qubasa
cd48b8df0c
clan-app: Fix mypy lints and add GenericFnRuntime
2024-07-15 19:48:20 +02:00
Qubasa
25fea331d0
clan-app: Add Webview to python async backend
2024-07-15 19:24:38 +02:00
Johannes Kirschbauer
ad321976ff
Fix schema test
2024-07-14 15:02:32 +02:00
Johannes Kirschbauer
7bbe63a525
Fix schema test
2024-07-14 13:38:43 +02:00
Qubasa
bdbf8a8da0
clan-cli: Fix missing allowed-programs.json in package
2024-07-14 13:07:24 +02:00
Johannes Kirschbauer
b324e1a4f4
Fix some type issues
2024-07-11 17:05:57 +02:00
Johannes Kirschbauer
dfec6afd6b
Clan create: migrate to inventory
2024-07-11 16:39:06 +02:00
DavHau
9988fb744c
vars: implement sops.defaultGroups
2024-07-11 18:39:29 +07:00
DavHau
75b969b1ad
clan-cli: improve runtime dependency management
...
Many dependencies of clan-cli are currently dynamically loaded via nix-shell on each execution.
This is nice, as it reduces the initial closure size of clan, but the overhead introduced by nix-shell piles up quickly, as some commands shell out many times during their lifetime. For example, when adding a secret git is called 10+ times.
This reduces the time of a test which adds a secret from around 50 seconds to 15 seconds.
- add run_cmd() as an alternative to nix_shell()
- introduce the concept of static dependencies which do not need to go through nix-shell
- static dependencies are defined at build time and included into the wrapper for clan-cli
- add package: clan-cli-full which statically ships all required dependencies
TODO: deprecate nix_shell() in favor of run_cmd()
2024-07-11 15:34:41 +07:00
DavHau
d21926db47
vars: implement secret generation
2024-07-11 11:37:17 +07:00
clan-bot
b066c3633a
Merge pull request 'clan-cli: simplify cli helper' ( #1726 ) from DavHau/clan-core:DavHau-dave into main
2024-07-10 11:18:48 +00:00
DavHau
e7908c2af5
clan-cli: simplify cli helper
2024-07-10 18:14:06 +07:00
Johannes Kirschbauer
10bae7dcb0
UI: init flash poc
2024-07-10 09:43:18 +02:00
Mic92
3e6c41593d
Merge branch 'main' into DavHau-dave
2024-07-09 09:33:11 +00:00
DavHau
3447a98bee
vars: implement generating public variables via in_repo
2024-07-09 14:26:56 +07:00
DavHau
26ff2beea9
clan-cli: add vars command
2024-07-09 12:42:29 +07:00
DavHau
9ff0045698
WIP: vars: copy python code from facts
2024-07-09 12:42:29 +07:00
Jörg Thalheim
e1b7805aef
fix new linter issues
2024-07-08 16:30:15 +02:00
Jörg Thalheim
9e6d5124ad
add shellcheck hints to all envrc files
2024-07-08 16:24:34 +02:00
Johannes Kirschbauer
04ef8d824e
Inventory spec: make system optional
2024-07-06 17:56:22 +02:00
Johannes Kirschbauer
2ebc0902c1
Test: fixup
2024-07-06 17:51:46 +02:00
Johannes Kirschbauer
a7b7cc888b
Test: ensure type inference runs on all dataclasses
2024-07-06 17:22:47 +02:00
Johannes Kirschbauer
cb13ddb464
API Types: treat '_*' as private fields and dont inspect them
2024-07-06 17:22:47 +02:00
DavHau
4cde2d96be
Reapply "clan.core: rename clan.{deployment,networking} -> clan.core.{deployment,networking}"
...
This reverts commit 9778444706 .
workaround upstream bug: https://github.com/NixOS/nixpkgs/issues/324802
2024-07-05 19:29:01 +07:00
Mic92
fb38516a86
Merge pull request 'Revert "clan.core: rename clan.{deployment,networking} -> clan.core.{deployment,networking}"' ( #1710 ) from revert-broken-migration into main
...
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/1710
2024-07-05 09:48:24 +00:00
DavHau
0367fc1e90
clan-cli tests: remove dynamic inclusion of helpers module
...
Dynamically extending the python path at runtime is bad for developer experience, as this is not understood by the text editor and therefore jump to definition etc. does not work.
-> Better to remove the dynamic inclusion and force developers to specify the import correctly.
2024-07-05 16:38:22 +07:00