Commit Graph

131 Commits

Author SHA1 Message Date
lassulus
8e81cd08c8 clan-cli: add ipython to dev dependencies 2025-02-02 11:52:36 +00:00
Qubasa
0db5abf56a clan-cli: Make clan flakes create discover templates from inputs. Add clan flakes list command 2025-01-30 16:24:50 +07:00
Qubasa
c6d5eb5037 clan-app: Fix default.nix 2025-01-11 10:52:22 +07:00
Michael Hoang
60c2ca726a clan-cli: don't list non-Clan NixOS configurations 2024-12-17 15:11:38 +11:00
Michael Hoang
2ead8a8da8 clan-cli: fix PATH not correctly including runtime dependencies 2024-12-17 13:05:25 +11:00
Michael Hoang
13ab00cd55 clan-cli: fix nix run clan-core failing inside direnv 2024-12-17 10:55:36 +11:00
Jörg Thalheim
e2ed57f8dd extract nix_test_store helper for sandbox builds 2024-12-05 11:38:58 +01:00
DavHau
44e6fe803f vars: make all python tests work in nix sandbox
- generate a flake.lock file for each template by copying the clan-core flake.lock and modifying it

- call nix build with --store for tests inside the sandbox
2024-11-27 14:32:02 +07:00
danjujan
75ffb4436e pkgs: fix typos 2024-10-29 12:37:34 +00:00
Jörg Thalheim
eb0643f920 fix nixpkgs command with latest nix version 2024-10-22 12:46:56 +02:00
Jörg Thalheim
196f78d2da abort tests on python warning 2024-10-01 20:54:19 +02:00
Johannes Kirschbauer
8bda488425 CLI: use abstract schema to avoid module imports 2024-09-15 18:42:50 +02:00
Johannes Kirschbauer
1a81c1f84b API: remove all python dataclasses for clanModules (services) 2024-09-12 16:19:51 +02:00
Jörg Thalheim
59c8b4f209 replace breakpoint() check with python lint 2024-09-02 13:36:07 +02:00
Jörg Thalheim
30bbb142e2 Merge remote-tracking branch 'origin/main' into rework-installation 2024-08-21 13:38:04 +02:00
a-kenji
0a58adce18 clan: remove config subcommand
This removes the `config` subcommand from the cli and the documentation
to keep the api surface small.

While this functionality was convenient it doesn't need to be surfaced
by the clan cli.

The remaining `config` python module should be ported to the `clan-app`
in a follow up pr. Because the functionality is currently only used by
the `clan-app`.
Ideally together with: #1830.
2024-07-31 16:35:36 +00:00
Johannes Kirschbauer
5d8fa57f23 Deserializer: replace pydantic 2024-07-30 12:26:16 +02:00
Jörg Thalheim
cc5546d79d Merge remote-tracking branch 'origin/main' into rework-installation 2024-07-30 11:52:36 +02:00
Johannes Kirschbauer
7a3fad01e0 PropagatedBuild inputs workaround 2024-07-26 15:23:25 +02:00
Johannes Kirschbauer
d7b6fc16a4 Serde: add unit tests for all serialization and deserialization logic 2024-07-26 14:23:41 +02:00
Jörg Thalheim
f04ed457db cli: default template url should come from the package itself rather than our gitea
This allow easier testing and also forks.
2024-07-22 08:22:58 +02:00
Johannes Kirschbauer
fbe27bfa0a Classgen: add mapped keys and more stuff 2024-07-18 21:58:36 +02:00
DavHau
e7d5a6f854 impure-checks: improve performance by disabling dynamic deps 2024-07-16 12:42:45 +07:00
DavHau
430adc875a 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
Jörg Thalheim
cb9fbc969b introduce minifakeroot that also works on macos 2024-06-27 18:53:10 +02:00
a-kenji
98b438754a clan: remove very obvious comments
Remove some very obvious comments as to not lose meaning of the
comments.

We want comments that convey non-obvious behavior so they will be
actually read.
2024-06-07 14:45:53 +02:00
a-kenji
ac7b30c43f clan: install shell completions for zsh 2024-06-06 23:20:54 +02:00
DavHau
0820c59df5 gui-installer: depend on git + ignore flake config 2024-05-29 17:42:44 +02:00
Qubasa
a3c94bc73b clan-cli: Fix nix develop not working in template because of symlink 2024-05-27 14:00:31 +02:00
Qubasa
b1dd5c2832 Add --ssh-pubkey FILE argument 2024-05-14 15:41:15 +02:00
DavHau
e09658c817 secrets: ensure all added/deleted files get committed 2024-04-24 17:26:32 +07:00
Qubasa
d6d8a88549 clan-vm-manager: Working pytest skeleton. clan-cli: Fixing devshell depending on itself 2024-03-24 23:36:00 +01:00
Jörg Thalheim
ede4d3f6e5 re-format with nixfmt 2024-03-17 19:48:49 +01:00
a-kenji
dd0b5c0ae7 fix: typo 2024-03-12 17:37:19 +01:00
Jörg Thalheim
b4a94e66f8 clan-cli: drop unused variables 2024-01-30 10:30:25 +07:00
Qubasa
001a48da52 Removed python deal. 2023-12-30 23:10:43 +01:00
Qubasa
c6188c17fb pytest: Removed -s flag for CI 2023-12-26 18:20:41 +01:00
Qubasa
999747c5fc Deleted everything webui 2023-12-14 18:47:14 +01:00
Qubasa
c00a1983fa Removed democlan dependency 2023-12-09 00:23:19 +01:00
Qubasa
b60aef97f9 Removed democlan dependency 2023-12-09 00:19:30 +01:00
Qubasa
4506202a82 Added clan flakes inspect command. Improved ClanURI. Added democlan as dependency in flake.nix 2023-12-09 00:09:21 +01:00
Jörg Thalheim
d394792238 openapi: put a static version into the repository
This avoids a lot of rebuilds and we can also track api changes better
2023-11-24 15:56:27 +01:00
Jörg Thalheim
47471c666b clan-vm-manager: add nix package 2023-11-23 15:30:44 +01:00
Jörg Thalheim
d35229216e mv clan-vm-manager to its own package 2023-11-23 15:03:46 +01:00
Qubasa
dddbe74d6a Added gtk demo app 2023-11-23 15:03:38 +01:00
Jörg Thalheim
6649240494 drop desktop item from cli 2023-11-21 15:26:36 +01:00
Jörg Thalheim
f27b1da6b9 drop dependency on fastapi in the cli 2023-11-21 15:09:18 +01:00
Qubasa
ad4032e214 schemathesis: Add as runnable application instead of library to resolve httpx dependency collision issue 2023-11-20 17:14:12 +01:00
Jörg Thalheim
5d36878206 drop schemathesis
This creates conflicting python packages when included
2023-11-15 16:48:46 +01:00
Jörg Thalheim
2e939bedd6 moving deal dependencies to tests only 2023-11-10 12:39:24 +01:00