1
0
forked from clan/clan-core
Commit Graph

1497 Commits

Author SHA1 Message Date
779229a907 Merge pull request 'clan-app: rename clan-vm-manager' (#1569) from hsjobeki/clan-core:hsjobeki-main into main 2024-06-05 09:41:05 +00:00
06412865bb
clan-app: rename clan-vm-manager 2024-06-05 11:36:02 +02:00
fab311b53a clan: fix backup description 2024-06-05 11:35:04 +02:00
0fb207bb59
clan-app: rename clan-vm-manager 2024-06-05 11:24:59 +02:00
c9038ad0b3 clan: add dynamic completions to clan backups providers 2024-06-05 09:23:02 +00:00
b4699cd8a3 clan: add dynamic completion function for backup providers 2024-06-05 09:23:02 +00:00
78dbabf901
web-ui: init type API checks 2024-06-05 11:07:55 +02:00
92bc2962b8
web-ui: remove type test method 2024-06-05 09:54:17 +02:00
6576290160
clan-api: wrap all api responses with error/success envelop type 2024-06-05 09:46:48 +02:00
db88e63148
clan-cli: create flake refactor to create clan 2024-06-05 09:45:47 +02:00
f2d2102127
clan-cli: refactor CmdOut to serializable dataclass 2024-06-05 09:44:44 +02:00
b9bf453731
clan-api: add support for generic types & annotated types 2024-06-05 09:43:45 +02:00
4bd927cbcf demo.sh: fix tags 2024-06-04 15:23:39 -07:00
c926f23c09 clan: add dynamic completions to clan vms inspect 2024-06-04 15:50:50 +02:00
21ac1f7204 clan: add dynamic completions to clan vms run 2024-06-04 15:48:12 +02:00
05ff7bd261 clan: add dynamic completions to clan config 2024-06-04 15:44:39 +02:00
0bd13727de clan: add dynamic-completions to clan secrets set 2024-06-04 15:21:00 +02:00
e1d6d04b48 clan: add dynamic completions to clan secrets machines 2024-06-04 15:02:35 +02:00
9dbbb6f2f6 clan: add dynamic completions for clan secrets import-sops 2024-06-04 13:40:24 +02:00
d4fabff7f4 clan: add dynamic completions for secret groups 2024-06-04 13:30:38 +02:00
b21bef0b98 clan: add dynamic completions for clan secrets users 2024-06-04 13:30:38 +02:00
533ed97fc1 clan: add dynamic completion for clan secret groups 2024-06-04 13:30:38 +02:00
e7e5a1ded8 clan: add completion function for clan users 2024-06-04 13:30:11 +02:00
4e95030e55 clan: clan secrets groups add machine completions 2024-06-04 13:30:11 +02:00
2923051a12 clan: fix help message 2024-06-04 10:28:34 +00:00
addc4de735 clan: add more machine completion functions to secrets 2024-06-04 11:07:24 +02:00
62be27ec62 demo.sh: fix tag 2024-06-03 21:55:09 -07:00
d4d69d6990 distro-packages: add test for deb installation 2024-06-04 06:09:58 +02:00
31eca9e8bc clan: add dyncamic completions for secrets 2024-06-03 21:47:14 +02:00
cfb78b0edb clan: add dynamic machine completions to clan secrets subcommands 2024-06-03 17:32:33 +02:00
e8241fb7c9 clan: add dynamic completion to clan machines show 2024-06-03 17:06:03 +02:00
578162425d Revert "clan-cli: cmd.py uses pseudo terminal now. Remove tty.py. Refactor password_store.py to use cmd.py."
This reverts commit ba86b49952.
2024-06-03 12:25:20 +02:00
da8a733899 clan_cli secrets_upload: fix permissions 2024-06-03 10:52:18 +02:00
ba86b49952 clan-cli: cmd.py uses pseudo terminal now. Remove tty.py. Refactor password_store.py to use cmd.py. 2024-06-02 16:52:31 +02:00
d513f66170 clan-cli: Refactor machines/update.py to cmd.run 2024-06-02 10:00:23 +02:00
1a39957dbb clan-cli: Refactor subprocess.run to cmd.run. tea-create-pr: Fix missing fail-on-change for treefmt 2024-06-02 09:53:24 +02:00
133f2b705f clan-core: add template to impure tests 2024-05-31 16:26:46 +00:00
83fe58e003 clan-core: add clan meta for ui usage 2024-05-31 16:26:46 +00:00
481f926b17 Merge pull request 'split list machines into show machine command' (#1521) from machines-show into main 2024-05-31 15:00:03 +00:00
788eae432a split list machines into show machine command 2024-05-31 16:56:09 +02:00
bcccf301f0 clan: add dynamic completions for fact generation services 2024-05-31 15:21:07 +02:00
d31aa7cf88 clan: add completion timeout as static 2024-05-31 13:06:46 +02:00
9f19a8e605 Merge pull request 'clan: add dynamic completions' (#1522) from a-kenji-clan/cli/init-dynamic-completions into main 2024-05-31 11:00:50 +00:00
23ef39a2d9 clan: add dynamic completions
Add dynamic completion scaffolding to the clan `cli`.
Also add a dynamic completion mechanism for machines for commands that
have machines as their sole argument.

More intricate dynamic completions will be implemented in follow up
PR's.
2024-05-31 12:55:41 +02:00
c91c90a2a6 tea-create-pr: Add automatic rebase and autostash 2024-05-30 23:59:27 +02:00
01a4748d6b tea-create-pr: Fix non working assignees label 2024-05-30 23:37:53 +02:00
a8762522c8 tea-create-pr: Better username detection 2024-05-30 23:29:59 +02:00
f63e3618c2 tea-create-pr: Require fork and upstream branch 2024-05-30 22:25:25 +02:00
076b98ff00 Merge pull request 'Webview: css font and icon import transformation' (#1501) from hsjobeki-main into main 2024-05-30 16:28:14 +00:00
6999685bba
Webview: css font and icon import transformation 2024-05-30 18:23:49 +02:00
7cb8c114c2 install.sh: improvements
- use either curl or wget
- add to PATH /nix/var/nix/profiles/default/bin
2024-05-29 18:51:34 +02:00
ccadac4bb3 gui-installer: depend on git + ignore flake config 2024-05-29 17:42:44 +02:00
9bf76037aa
Webview: bootstrap layout 2024-05-29 16:40:54 +02:00
c1e2bc9ea9 make config command read-only 2024-05-29 13:17:55 +02:00
0eef21e2ef Merge pull request 'Update flakes' (#1492) from pass-nix-options into main 2024-05-29 10:58:19 +00:00
461aa579c2 fmt more stuff 2024-05-29 12:51:43 +02:00
da442c47f6 drop non-compiling wayland-proxy-virtwl 2024-05-29 12:51:18 +02:00
7e087d18ee Merge pull request 'fix offline build of flash command' (#1491) from pass-nix-options into main 2024-05-29 10:49:15 +00:00
750b6aec59 flash: make configuration more explicit
Injecting nixos configuration and potentially overriding settings a user
made and can cause surprises.
In most cases, users want to just make these option part of their NixOS
configuration and by having the rest in the command line
we make it more explicit what other configuration is being applied.
2024-05-29 12:45:50 +02:00
d138e29a53 Merge pull request 'Consistently pass nix options to underlying tools' (#1488) from pass-nix-options into main 2024-05-29 08:25:53 +00:00
f0f97baa65 drop global argparse flags
They get shadowed by subargparser options.
2024-05-29 10:21:35 +02:00
c2dc94507e clan: clarify default backend 2024-05-29 10:17:22 +02:00
5dcac604d1 backup cli: make sure we have a flake 2024-05-29 10:14:14 +02:00
96746b7c98 flash: add write-efi-boot-entries flag 2024-05-29 10:14:14 +02:00
2ae50b7398 allow to override nix options in update/install/flash commands 2024-05-29 10:14:14 +02:00
3c905c5072 clan: add epilog to facts subcommands 2024-05-29 10:10:23 +02:00
5b926f57cc cli: also register common flags in subcommands
When a user runs --help on a subcommand they don't see some options such
as --options or --flake. To fix this we now register all common flags
also in subcommands.
2024-05-29 09:29:49 +02:00
b9788a5dba Merge pull request 'clan/docs.py: remove epilog from the reference overview' (#1487) from a-kenji-cli/docs/reference-overview into main 2024-05-28 18:05:07 +00:00
7078f09872 clan/docs.py: remove epilog from the reference overview 2024-05-28 20:01:48 +02:00
fe5fa6a85d packaging: package clan gui for many distros 2024-05-28 17:50:32 +02:00
3b6483e819 packaging: package clan gui for many distros 2024-05-28 17:33:55 +02:00
c81a8681b0 Merge pull request 'clan/docs.py: add epilog to reference docs' (#1481) from a-kenji-docs/epilog into main 2024-05-28 15:13:57 +00:00
31cde90819 clan/docs.py: add epilog to reference docs
Fixes #1469
2024-05-28 17:08:46 +02:00
de147f63e9 Fix typos 2024-05-28 14:58:38 +02:00
c34664429c clan: add descriptions for reference documentation 2024-05-28 11:37:32 +02:00
eee99730d1 clan: add run_no_stdout function suppressing stdout
Add the `run_no_stdout` function suppressing stdout by default.This
keeps the noise down on most commands, while still
stayingdebuggable.Stdout will be active when the `--debug` flag is
passed to the cli.

Fixes #1443
2024-05-28 11:13:55 +02:00
a0b0e1a0ac editor: improve nixpkgs option completions 2024-05-28 09:34:57 +02:00
d1591d4485 clan: machines --help add examples to help output 2024-05-27 21:01:05 +02:00
ec9f605004 clan: duplicate description field for generation of the reference documentation 2024-05-27 20:29:34 +02:00
efacb7f184 clan: ssh --help add examples
Add examples to the output of `clan ssh --help`.
2024-05-27 20:14:37 +02:00
a704a05b15 clan: rename cLan to clan 2024-05-27 19:52:51 +02:00
c0a54f539a consistent rename cLAN -> Clan 2024-05-27 13:58:32 +00:00
e8bd5ad24b clan: add examples and description to most help
Add examples and description to most toplevel help outputs.
2024-05-27 14:33:58 +02:00
775f993ecc Merge pull request 'clan-cli: Fix nix develop not working in template because of symlink' (#1462) from Qubasa-main into main 2024-05-27 12:05:17 +00:00
0e1478edcd clan-cli: Fix nix develop not working in template because of symlink 2024-05-27 14:00:31 +02:00
bfc1203a8a Merge pull request 'init: vscode .#editor' (#1461) from Qubasa-init/editors into main 2024-05-27 12:00:26 +00:00
2bd8b144b9 init: vscode .#editor 2024-05-27 13:52:54 +02:00
64adf17368 drop offline in nix shell
Otherwise we become gentoo!
2024-05-27 13:40:11 +02:00
6d7849a03c clan: fix description of cli tool 2024-05-27 11:51:25 +02:00
81e0700826 clan: facts generate allow regeneration of facts
Add `--regenerate` flag to `clan facts generate` which allows forcing
the generation of facts, regardless of their current existence.

Examples:
```
clan facts generate [MACHINE] --regenerate
```
or
```
clan facts generate [MACHINE] --service [SERVICE] --regenerate
```
2024-05-26 22:55:48 +02:00
4daf036a3c Merge pull request 'clan: facts generate specific service' (#1446) from a-kenji-feat/clan/facts-generate-service-1395 into main 2024-05-26 19:57:17 +00:00
4faab0a20f clan: facts generate specific service
Add `--service` flag to the `clan` cli which allows specifying a certain
service to be generated.

Example:

```
clan facts generate [MACHINE] --service [SERVICE]
```

Fixes #1395
2024-05-26 21:52:56 +02:00
4c4c94c508
Webview: improve linting & typechecks 2024-05-26 18:37:29 +02:00
b0d5ef01ca Merge pull request 'Api: init response envelop' (#1444) from hsjobeki-feat/api-improvements into main 2024-05-26 16:08:02 +00:00
ab656d5655
API: handle functions with multiple arguments 2024-05-26 18:04:49 +02:00
ed171f0264
Api: init response envelop 2024-05-26 15:57:10 +02:00
270f9d54cb Merge pull request 'clan: fix clan facts list [MACHINE]' (#1442) from a-kenji-fix/clan-facts-list into main 2024-05-26 12:29:37 +00:00
73f486fe13 clan: fix clan facts list [MACHINE]
Fix `clan facts list [MACHINE]`.
The get command returned a dictionary of bytestrings.
We now convert them to strings.
2024-05-26 14:26:08 +02:00
f54c518fd7
api: fix breaking tests 2024-05-26 14:17:17 +02:00
522fd1bcaa
api: convert name casing 2024-05-26 13:54:21 +02:00
be5c3accfe
webview: fix typo 2024-05-26 13:41:07 +02:00
3998efac78
fix: tests 2024-05-26 13:41:05 +02:00
691ae9fb15
api: improve message serialisation 2024-05-26 13:40:47 +02:00
9bb6ed313f clan machines list: reduce noise
Don't log nix error output by default on `clan machines list`.
Log it, if `--debug` is passed.

Fixes #1115
2024-05-24 12:55:14 +02:00
fd29ed4693 Merge pull request 'zerotier-members: fix joining by member ip' (#1397) from a-kenji-fix/by-ip into main 2024-05-21 14:42:35 +00:00
9db4e5cf2f zerotier-members: fix joining by member ip 2024-05-21 16:39:28 +02:00
c1e7e25641
api: fix typing issues 2024-05-21 16:01:57 +02:00
21104a0465
webview: replace dream2nix by buildNpm from nixpkgs to save inputs 2024-05-21 15:52:20 +02:00
e9b0ce6a78
clan ui: add check to build script 2024-05-21 10:09:05 +02:00
d174fbd445
clan ui: move print into log.debug statements 2024-05-20 19:59:50 +02:00
8687801cee
clan ui: setup typed api method 2024-05-20 19:34:49 +02:00
2cb7adb377
clan-ui: rollback default view until webview is ready 2024-05-20 11:08:14 +02:00
a47c2f3e69 zerotier-members: allow joining by zerotier ip 2024-05-19 23:13:26 +02:00
4cfc335e2c fix: segfault gtk when using webkit 2024-05-18 14:14:12 +00:00
e25bd69c68 clan ui: override webkitgtk unbroken on darwin. 2024-05-18 14:14:12 +00:00
fe17f9e1a1 clan ui: integrate webview ui into clan-mananger-gtk 2024-05-18 14:14:12 +00:00
7980f13bed add webview threaded api 2024-05-18 14:14:12 +00:00
fef16a84a9 init webview: add webview ui and list machine as api example 2024-05-18 14:14:12 +00:00
8762ee4420 Migrated blog to mkdocs 2024-05-16 15:08:24 +02:00
fd41badbc6 Add --no-reboot flag to clan machine install 2024-05-14 15:41:15 +02:00
d574faf253 Heavily improve documentation and flake template 2024-05-14 15:41:15 +02:00
e668a7f536 Fix build error 2024-05-14 15:41:15 +02:00
3293ac0c14 fix get_keymap_and_locale 2024-05-14 15:41:15 +02:00
be841cdec2 Removed ssh password login 2024-05-14 15:41:15 +02:00
49e39ec505 Add keymap and language detection 2024-05-14 15:41:15 +02:00
c25f7934ba clan flash: Copied network-status from nixos-images into installer 2024-05-14 15:41:15 +02:00
4f6d25160f Add --ssh-pubkey FILE argument 2024-05-14 15:41:15 +02:00
148a0c90cc clan-cli(docs): modularize in preparation for manpage generation 2024-05-14 12:18:37 +02:00
82fa89b57e Fix template. Improve docu. Add disko as default imported module. 2024-05-10 15:39:46 +02:00
aad130166f Merge pull request 'hsjobeki-main' (#1332) from hsjobeki-main into main 2024-05-08 10:30:16 +00:00
3e9a1ea68f
vm-manager: hide hidden vm log info 2024-05-08 12:27:16 +02:00
f2a3415e2c Merge pull request 'clan-cli: add --json and --png flags to machine install' (#1320) from a-kenji-feat/clan-install-json into main 2024-05-07 12:52:21 +00:00
2e821c4525 clan-cli: add --json and --png flags to machine install
Allow using `clan machines [machine] install` in conjunction with the
`--json` and `--png` flags.

Fixes #1180
2024-05-07 14:47:13 +02:00
15dd4ea25f
cli-docs: add automatic markdown cli docs 2024-05-07 13:26:33 +02:00
f8e08a610e Merge pull request 'Add jsonschema test case' (#1309) from Qubasa-main into main 2024-05-04 12:14:07 +00:00
9ec8b71765 moonlight-sunshine-accept: Fix formatting error 2024-05-03 20:38:53 +02:00
393ed517e2 jsonschema: Filter out 'invisible' options, that are there to throw errors on define 2024-05-03 19:40:42 +02:00
159198b81a Add jsonschema test case 2024-05-03 19:40:42 +02:00
b95d95554a Add description field to function-schema 2024-05-02 16:34:25 +02:00
a09e680fa0 Require README.md for every clan module 2024-05-02 16:34:25 +02:00
43c799c3d0 qga: add argument 'check' 2024-05-02 15:03:22 +02:00
a48df5b993 Add package function-schema and module-schema. Add check for module jsonschema. 2024-05-01 23:16:17 +02:00
bfe4f2c8f4
add cli docs generator 2024-04-30 19:01:53 +02:00
1051367ca4
add cli docs generator 2024-04-30 18:53:00 +02:00
b5653c169b sops: fix setting secret from pipe 2024-04-30 14:04:49 +02:00
5606101ce8 sops: also log content type on error 2024-04-30 13:56:07 +02:00
f383c6f82d clan-cli: add CLAN_DIR environment variable
Add the `CLAN_DIR` environment variable.
With this the user can specify the location of the clan.
2024-04-30 12:00:47 +02:00
95f93d8800 clan(help): standardise on machine capitalisation 2024-04-26 12:07:09 +02:00
a3f6996d69 clan(help): improve install description 2024-04-26 11:42:18 +02:00
4a66cdffaf
vm-manager: move signals to emitter 2024-04-24 14:41:53 +02:00