Commit Graph

49 Commits

Author SHA1 Message Date
d513f66170 clan-cli: Refactor machines/update.py to cmd.run
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-deploy-docs Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-vm-manager-pytest 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.devShell-clan-vm-manager Build done.
buildbot/nix-build .#checks.x86_64-linux.package-editor Build done.
buildbot/nix-build .#checks.x86_64-linux.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-flash-installer 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.package-iso-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.zt-tcp-relay 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.syncthing 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-with-core 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 2m25s
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-02 10:00:23 +02:00
23ef39a2d9 clan: add dynamic completions
All checks were successful
buildbot/nix-build .#checks.x86_64-linux.module-schema 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.lib-jsonschema-nix-unit-tests Build done.
buildbot/nix-build .#checks.x86_64-linux.package-moonlight-sunshine-accept 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-pending-reviews Build done.
buildbot/nix-build .#checks.x86_64-linux.package-docs 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.package-function-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-flash-installer Build done.
buildbot/nix-build .#checks.x86_64-linux.package-webview-ui Build done.
buildbot/nix-build .#checks.x86_64-linux.package-module-schema Build done.
buildbot/nix-build .#checks.x86_64-linux.clan-pytest-with-core Build done.
buildbot/nix-build .#checks.x86_64-linux.secrets Build done.
buildbot/nix-build .#checks.x86_64-linux.nixos-iso-installer 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.wayland-proxy-virtwl Build done.
buildbot/nix-build .#checks.x86_64-linux.devShell-clan-vm-manager 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 2m41s
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.
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
2ae50b7398 allow to override nix options in update/install/flash commands 2024-05-29 10:14:14 +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
1051367ca4
add cli docs generator 2024-04-30 18:53:00 +02:00
f385e0e037 refactor facts command to regenerate facts for all machines 2024-04-15 22:14:54 +02:00
b3522b73aa fix case when secrets are regenerated during update/install
All checks were successful
checks / check-links (pull_request) Successful in 14s
checks / checks-impure (pull_request) Successful in 1m53s
checks / checks (pull_request) Successful in 4m11s
2024-04-12 14:46:51 +02: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
6fe6229498 add requireExplicitUpdate option for mobile devices
All checks were successful
checks-impure / test (pull_request) Successful in 1m46s
checks / test (pull_request) Successful in 3m1s
2024-02-06 17:55:34 +01:00
be3a75bbd7 add support for build machines 2024-02-06 17:21:42 +01:00
2315dba2a9 rename machine.host to machine.target_host 2024-02-06 17:21:42 +01:00
6e57122da8 rename target_host to target_host_address 2024-02-06 17:21:42 +01:00
301a6b6a23 machines/update: get flake_attr from machine class 2024-02-06 17:21:42 +01:00
91f26a4743 skip machines without target_host when running clan machines update
All checks were successful
checks-impure / test (pull_request) Successful in 1m45s
checks / test (pull_request) Successful in 2m57s
2024-02-06 15:04:19 +01:00
ad1a87fc14 move checks if targetHost/buildHost is set to cli
All checks were successful
checks-impure / test (pull_request) Successful in 1m39s
checks / test (pull_request) Successful in 2m45s
2024-02-06 14:51:44 +01:00
31188648f0 clan-cli update: remove legacy argument
All checks were successful
checks-impure / test (pull_request) Successful in 1m33s
checks / test (pull_request) Successful in 2m44s
2024-02-03 07:53:15 +01:00
6a62065cdf clan-cli update: upload only local paths from localhost 2024-02-03 07:53:15 +01:00
3538cf2e46 rename deployment address to target address
All checks were successful
checks-impure / test (pull_request) Successful in 1m35s
checks / test (pull_request) Successful in 2m43s
This is a prepares having a build server for deployment
2024-02-02 16:39:29 +07:00
6ba641c974 clan-cli update: use new Machine class interface 2024-01-24 15:49:12 +01:00
6b004fca6f machines.Machine: refactor flake_dir -> flake; use Machine class in vm 2024-01-24 15:49:12 +01:00
ba05589af2 Refactor subprocess to cmd.py part 2
Some checks failed
checks-impure / test (pull_request) Failing after 16s
checks / test (pull_request) Failing after 40s
2024-01-10 12:11:29 +01:00
26e3e3872c enable more linting 2023-11-29 13:29:45 +00:00
5640b84433 machines.update: remove redundant flake argument
All checks were successful
checks-impure / test (pull_request) Successful in 1m55s
checks / test (pull_request) Successful in 2m28s
2023-11-15 21:57:08 +01:00
7b3d3e20b4 clan-cli secrets: flake_name -> flake_dir
All checks were successful
checks / test (pull_request) Successful in 46s
checks-impure / test (pull_request) Successful in 1m26s
2023-11-05 16:58:48 +01:00
17176f25de cli machines update: find flake dir automatic if not provided, support flake as path
Some checks failed
checks-impure / test (pull_request) Failing after 1m34s
checks / test (pull_request) Successful in 2m20s
2023-10-29 20:52:38 +01:00
a28f910e35 nix fmt 2023-10-27 19:26:03 +02:00
32e60f5adc Added flake_name:str argument everywhere, nix fmt doesn't complain anymore 2023-10-27 19:15:40 +02:00
fdcd7ad1d9 Updated to main 2023-10-27 19:15:11 +02:00
79e707b044 fix updating multiple machines 2023-10-27 17:40:20 +02:00
4af74ee5a5 machines update: add --target-host
All checks were successful
checks-impure / test (pull_request) Successful in 54s
checks / test (pull_request) Successful in 1m58s
2023-10-04 23:28:15 +02:00
b25af9f0f4 clan_cli: refactor secrets code into Machine class
All checks were successful
checks-impure / test (pull_request) Successful in 19s
checks / test (pull_request) Successful in 1m27s
2023-10-04 16:41:16 +02:00
89b7ffce6c clan-cli secrets upload: secrets are populated into tmpdir 2023-09-29 20:05:35 +02:00
7ca9c49163 restore clanInternals with valid nixos config 2023-09-29 19:39:35 +02:00
b366beeb2e fix secrets script not beeing fetched
All checks were successful
checks-impure / test (pull_request) Successful in 8s
checks / test (pull_request) Successful in 24s
2023-09-28 15:51:09 +02:00
16b33eb0a8 add toplevel machines-json that can deploy all hosts 2023-09-28 15:23:25 +02:00
3f814c1e5f clan update: fix deploymentAddress
All checks were successful
checks-impure / test (pull_request) Successful in 8s
checks / test (pull_request) Successful in 22s
2023-09-27 21:11:52 +02:00
756820e4ca clanInternals.machines: invert system and machine name
All checks were successful
checks-impure / test (pull_request) Successful in 8s
checks / test (pull_request) Successful in 24s
2023-09-27 17:26:44 +02:00
dc51ca5803 factor out deployment address parsing into a function 2023-09-21 17:22:20 +02:00
3cb916d50f clan-cli/update: also use correct flake attr for generating secret
All checks were successful
checks-impure / test (pull_request) Successful in 6s
checks / test (pull_request) Successful in 1m27s
2023-09-19 15:20:11 +02:00
2931b08b46 clan-cli/update: use correct flake attr when deploying
Some checks reported warnings
checks-impure / test (pull_request) Has been cancelled
checks / test (pull_request) Has been cancelled
2023-09-19 14:19:48 +02:00
a65413c98e use experimental flags everywhere 2023-09-19 13:12:10 +02:00
8d29d0e69c clan-cli: get deploymentAddress from clan.networking 2023-09-15 12:17:07 +00:00
c5786614bf clan-cli secrets: deploy -> upload 2023-09-15 12:17:07 +00:00
c487280ba9 clan-cli machines update: generate and deploy secrets 2023-09-15 12:17:07 +00:00
3b0701f275 deploy: use nix-flake-archive instead of rsync to upload 2023-09-15 12:17:07 +00:00
2d934d527a update: use run_local command to print executed command
All checks were successful
checks-impure / test (pull_request) Successful in 7s
checks / test (pull_request) Successful in 32s
2023-09-14 11:20:45 +02:00
b97db58316 deploy: use nix-flake-archive instead of rsync to upload 2023-09-13 20:33:53 +02:00
56542ca5ef mv update command to machines update command 2023-08-24 16:25:06 +02:00