Commit Graph

125 Commits

Author SHA1 Message Date
313db5643f refactor: rename clanCore -> clan.core
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.package-merge-after-ci Build done.
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.postgresql Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-flash-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.template-minimal Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.package-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.devShell-clan-app Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-without-core Build done.
buildbot/nix-build .#checks.x86_64-linux.package-webview-ui Build done.
buildbot/nix-build .#checks.x86_64-linux.package-clan-app Build done.
buildbot/nix-build .#checks.x86_64-linux.package-gui-install-test-ubuntu-22-04 Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-with-core Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
checks / checks-impure (pull_request) Successful in 2m10s
buildbot/nix-build .#checks.x86_64-linux.flash Build done.
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-eval Build done.
2024-06-18 18:32:40 +07:00
c926f23c09 clan: add dynamic completions to clan vms inspect
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.package-gui-installer-rpm Build done.
buildbot/nix-build .#checks.x86_64-linux.package-impure-checks Build done.
buildbot/nix-build .#checks.x86_64-linux.package-merge-after-ci Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-test_install_machine Build done.
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.devShell-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-with-core Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.package-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.package-webview-ui Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-flash-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.package-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-without-core Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
checks / checks-impure (pull_request) Successful in 2m23s
buildbot/nix-build .#checks.x86_64-linux.flash Build done.
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-eval Build done.
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
81e0700826 clan: facts generate allow regeneration of facts
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.package-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.treefmt Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-vm-manager-pytest Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-test_install_machine Build done.
buildbot/nix-build .#checks.x86_64-linux.package-wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.aarch64-darwin.nixos-test-backup Build done.
buildbot/nix-build .#checks.x86_64-linux.devShell-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-flash-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-with-core Build done.
buildbot/nix-build .#checks.x86_64-linux.package-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.package-webview-ui Build done.
buildbot/nix-build .#checks.x86_64-linux.package-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.package-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-without-core Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
checks / checks-impure (pull_request) Successful in 2m39s
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-eval Build done.
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
4faab0a20f clan: facts generate specific service
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept Build done.
buildbot/nix-build .#checks.x86_64-linux.package-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.package-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-vm-manager-pytest Build done.
buildbot/nix-build .#checks.x86_64-linux.treefmt Build done.
buildbot/nix-build .#checks.x86_64-linux.package-tea-create-pr Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotier-members Build done.
buildbot/nix-build .#checks.x86_64-linux.devShell-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-zerotierone Build done.
buildbot/nix-build .#checks.aarch64-darwin.nixos-test-backup Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-flash-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay Build done.
buildbot/nix-build .#checks.x86_64-linux.package-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-with-core Build done.
buildbot/nix-build .#checks.x86_64-linux.syncthing Build done.
buildbot/nix-build .#checks.x86_64-linux.package-webview-ui Build done.
buildbot/nix-build .#checks.x86_64-linux.package-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.package-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-without-core Build done.
buildbot/nix-build .#checks.x86_64-linux.test-backups Build done.
checks / checks-impure (pull_request) Successful in 2m46s
buildbot/nix-build .#checks.x86_64-linux.test-installation Build done.
buildbot/nix-eval Build done.
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
f385e0e037 refactor facts command to regenerate facts for all machines 2024-04-15 22:14:54 +02:00
fc73301ed9 vms/run.py: refactor use kwargs instead of dataclass for function args
All checks were successful
checks / check-links (pull_request) Successful in 14s
checks / checks-impure (pull_request) Successful in 1m54s
checks / checks (pull_request) Successful in 4m10s
2024-04-09 14:30:46 +07:00
e6ad0cfbc1 clan-cli: Fix tmpdir leak and fix tests/temporary_dir inconsistencies
All checks were successful
checks / check-links (pull_request) Successful in 14s
checks / checks-impure (pull_request) Successful in 1m50s
checks / checks (pull_request) Successful in 3m35s
2024-03-27 15:51:52 +01:00
a886fd9b2d switch back to upstream waypipe
All checks were successful
checks / check-links (pull_request) Successful in 13s
checks / checks-impure (pull_request) Successful in 1m53s
checks / checks (pull_request) Successful in 4m10s
2024-03-25 13:34:02 +01:00
f16667e25a refactor secrets & facts -> secret_facts & public_facts
All checks were successful
checks / check-links (pull_request) Successful in 14s
checks / checks (pull_request) Successful in 33s
checks / checks-impure (pull_request) Successful in 1m49s
2024-03-23 05:46:54 +01:00
e4896814f2 clan_cli: Add TimeTable class to cmd.py. Fix bugs in Machine rewrite
All checks were successful
checks / check-links (pull_request) Successful in 22s
checks / checks-impure (pull_request) Successful in 2m1s
checks / checks (pull_request) Successful in 3m51s
2024-03-08 22:01:54 +07:00
26dd962799 treefmt 2024-03-07 14:13:11 +01:00
0e8622c491 clan_vm_manager: Fix switch desync when pressed too fast. Secrets folder shared between build and run. clan_cli: run_vm now can have custom tmpdir location
All checks were successful
checks / check-links (pull_request) Successful in 22s
checks / checks-impure (pull_request) Successful in 1m55s
checks / checks (pull_request) Successful in 2m45s
2024-03-06 16:32:19 +07:00
a1dcddf9b4 clan-cli: add interactive secrets/fact generation 2024-03-03 04:06:18 +01:00
b1a4b4de96 clan-cli vms run: remove unused vm arg 2024-03-02 11:20:05 +01:00
0aa876a06c Merge pull request 'clan-cli: remove unused flag' (#867) from Mic92-fix-cross-system into main
All checks were successful
checks-impure / test (push) Successful in 1m53s
checks / test (push) Successful in 2m45s
2024-02-21 10:19:26 +00:00
457e45d989 clan-cli: remove unused flag
All checks were successful
checks-impure / test (pull_request) Successful in 1m54s
checks / test (pull_request) Successful in 2m20s
2024-02-21 10:55:53 +01:00
ff3a1dc928 Merge pull request 'secret_store: drop update_check and generate_hash as abstract methods' (#863) from Mic92-target_host into main
All checks were successful
checks-impure / test (push) Successful in 1m55s
checks / test (push) Successful in 2m42s
2024-02-20 18:01:51 +00:00
3695a5adf2 disable vgpu on non-nixos systems
All checks were successful
checks-impure / test (pull_request) Successful in 1m56s
checks / test (pull_request) Successful in 2m47s
2024-02-20 18:58:38 +01:00
a715364338 Merge pull request 'clan-vm-manager: Added clan icon to trayicon' (#855) from Qubasa-main into main
All checks were successful
checks-impure / test (push) Successful in 1m55s
checks / test (push) Successful in 2m45s
2024-02-16 09:14:08 +00:00
280bee0861 clan-vm-manager: Fixing vm starting.
All checks were successful
checks-impure / test (pull_request) Successful in 2m7s
checks / test (pull_request) Successful in 2m53s
2024-02-16 16:10:49 +07:00
81545766a0 update comments about virtio-gpu
All checks were successful
checks-impure / test (pull_request) Successful in 2m9s
checks / test (pull_request) Successful in 2m59s
2024-02-16 09:52:13 +01:00
0200016dd2 vms: move qemu_command to its own module
All checks were successful
checks-impure / test (pull_request) Successful in 2m7s
checks / test (pull_request) Successful in 3m16s
2024-02-15 17:25:24 +01:00
8e780b2a8c vms: drop unused xchdir
All checks were successful
checks-impure / test (pull_request) Successful in 2m10s
checks / test (pull_request) Successful in 3m5s
2024-02-15 17:19:43 +01:00
a399cbb8d9 vms: move virtiofsd/waypipe into their own modules 2024-02-15 17:19:31 +01:00
6871b29d15 vms: use vm fact/secret-store
All checks were successful
checks-impure / test (pull_request) Successful in 1m56s
checks / test (pull_request) Successful in 2m17s
2024-02-15 10:41:25 +01:00
1cc6e74297 Merge pull request 'clan_vm_manager: --debug enables debug mode in clan_cli too' (#840) from Qubasa-add_spinner into main
All checks were successful
checks-impure / test (push) Successful in 1m43s
checks / test (push) Successful in 2m46s
2024-02-14 08:43:14 +00:00
952f976ea7 fix virtiofsd in CIs
All checks were successful
checks-impure / test (pull_request) Successful in 1m41s
checks / test (pull_request) Successful in 2m40s
2024-02-13 13:57:52 +01:00
8f98f0e8b7 also use qcow2 for volatile state 2024-02-13 11:45:42 +01:00
3bf94ab0fc use virtio-console instead of serial for vm 2024-02-13 11:45:42 +01:00
11ac50c17b format rootfs in vm itself 2024-02-13 11:45:42 +01:00
07caab537f drop unused mounts 2024-02-13 11:45:42 +01:00
7f8ba25a5b qemu: disable sea-bios and option rom 2024-02-13 11:45:42 +01:00
ef202a8150 switch to sops-nix experimental branch 2024-02-13 11:45:23 +01:00
d6b3e03d70 vms: integrate virtiofsd 2024-02-13 11:44:17 +01:00
87dbc99cab clan_cli: Made qmp implementation lazy 2024-02-13 16:44:09 +07:00
0ce8bcd018 clan_vm_manager: Added VM shutdown timeout
All checks were successful
checks-impure / test (pull_request) Successful in 1m42s
checks / test (pull_request) Successful in 2m48s
2024-02-12 14:16:44 +07:00
02dd132e08 vms: init graceful shutdown for GUI
All checks were successful
checks-impure / test (pull_request) Successful in 1m43s
checks / test (pull_request) Successful in 2m44s
- add python modules for qemu protocols: QMP (hardware interactions) and QGA (guest service interaction)
- refactor state directory: remove name from path (already contains url)
- add impure vm test for basic qmp interaction
- simplify existing vm persistance test (factor out shared code)
- integrate graceful shutdown into GUI

the GUI integration still needs to be improved later:
- add fallback in case system doesn't react to powerdown button
- shutdown GUI switch fails if VM hasn't been started yet, and then remains in a wrong position
2024-02-09 19:55:18 +07:00
21443d0647 cli,nix: Add machine_icon, machine_description
All checks were successful
checks-impure / test (pull_request) Successful in 1m48s
checks / test (pull_request) Successful in 3m0s
2024-02-06 19:25:34 +07:00
533012af7d vms: rename wayland attrs to waypipe
All checks were successful
checks / test (pull_request) Successful in 1m2s
checks-impure / test (pull_request) Successful in 1m34s
And remove the options from the cli interface.
2024-02-01 10:14:36 +07:00
f89c9b00dd vms: wayland attr specified in configuration
All checks were successful
checks-impure / test (pull_request) Successful in 1m32s
checks / test (pull_request) Successful in 2m43s
2024-02-01 09:00:43 +07:00
59fa63eba9 Reapply "vm-state: fix and improve testing"
All checks were successful
checks-impure / test (pull_request) Successful in 1m39s
checks / test (pull_request) Successful in 2m40s
This reverts commit 99092f6e76.

vm-state: revert sysusers, improve testing

zerotier: enable persistence

vm-state: cleanup tests
2024-01-31 11:02:16 +07:00
c417157941 clan-cli: implement waypipe backend
All checks were successful
checks-impure / test (pull_request) Successful in 1m23s
checks / test (pull_request) Successful in 2m41s
2024-01-30 10:37:52 +07:00
99092f6e76 Revert "vm-state: fix and improve testing"
All checks were successful
checks-impure / test (pull_request) Successful in 1m37s
checks / test (pull_request) Successful in 3m23s
This reverts commit 6adc68a354.
2024-01-29 15:16:10 +07:00
6adc68a354 vm-state: fix and improve testing
All checks were successful
checks-impure / test (pull_request) Successful in 1m34s
checks / test (pull_request) Successful in 3m6s
checks / test (push) Successful in 30s
checks-impure / test (push) Successful in 1m27s
Also adds qemu qga protocol implementation to execute commands
2024-01-26 19:41:05 +07:00
6b004fca6f machines.Machine: refactor flake_dir -> flake; use Machine class in vm 2024-01-24 15:49:12 +01:00
aee0ee4d5e move secret stores into clan_cli codebase 2024-01-24 15:49:12 +01:00
60c4d231f8 Wrapped vm.run in cmd.run. Working --wayland
All checks were successful
checks-impure / test (pull_request) Successful in 1m35s
checks / test (pull_request) Successful in 2m48s
2024-01-19 13:56:17 +01:00
bd5ad0dc31 Merge pull request 'disable state home for now' (#740) from Mic92-main into main
All checks were successful
checks-impure / test (push) Successful in 1m21s
checks / test (push) Successful in 2m39s
2024-01-17 10:03:48 +00:00
1d2f003210 use upstream qemu for wayland feature
All checks were successful
checks-impure / test (pull_request) Successful in 1m22s
checks / test (pull_request) Successful in 2m43s
2024-01-17 11:00:45 +01:00