Commit Graph

54 Commits

Author SHA1 Message Date
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
Jörg Thalheim
9778444706 Revert "clan.core: rename clan.{deployment,networking} -> clan.core.{deployment,networking}"
This reverts commit afbd4a984d.

The old configuration cannot be updated like this:

eve] error:
[eve]        … while calling the 'head' builtin
[eve]          at /nix/store/5b0hl2dnvr1sawqlkwmsnaiyqz00d34h-source/lib/attrsets.nix:1575:11:
[eve]          1574|         || pred here (elemAt values 1) (head values) then
[eve]          1575|           head values
[eve]              |           ^
[eve]          1576|         else
[eve]
[eve]        … while evaluating the attribute 'value'
[eve]          at /nix/store/5b0hl2dnvr1sawqlkwmsnaiyqz00d34h-source/lib/modules.nix:809:9:
[eve]           808|     in warnDeprecation opt //
[eve]           809|       { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
[eve]              |         ^
[eve]           810|         inherit (res.defsFinal') highestPrio;
[eve]
[eve]        … while evaluating the option `system.build.toplevel':
[eve]
[eve]        … while evaluating definitions from `/nix/store/5b0hl2dnvr1sawqlkwmsnaiyqz00d34h-source/nixos/modules/system/activation/top-level.nix':
[eve]
[eve]        … while evaluating the option `assertions':
[eve]
[eve]        … while evaluating definitions from `/nix/store/5b0hl2dnvr1sawqlkwmsnaiyqz00d34h-source/nixos/modules/system/boot/systemd.nix':
[eve]
[eve]        … while evaluating the option `systemd.services':
[eve]
[eve]        … while evaluating definitions from `/nix/store/kpzcdgndym0qm1w490mjvk9c2qmz03h5-source/nixosModules/clanCore/zerotier':
[eve]
[eve]        … while evaluating the option `clan.core.networking.zerotier.networkId':
[eve]
[eve]        (stack trace truncated; use '--show-trace' to show the full, detailed trace)
[eve]
[eve]        error: A definition for option `clan.core.networking.zerotier.networkId' is not of type `null or string'. Definition values:
[eve]        - In `/nix/store/kpzcdgndym0qm1w490mjvk9c2qmz03h5-source/nixosModules/clanCore/networking.nix':
[eve]            {
[eve]              _type = "override";
[eve]              content = "267efd4a15b69623";
[eve]              priorit
2024-07-05 11:16:05 +02:00
DavHau
afbd4a984d clan.core: rename clan.{deployment,networking} -> clan.core.{deployment,networking} 2024-07-04 17:05:37 +07:00
Jörg Thalheim
5b606c035f move FlakeId to flake id
move FlakeId to flake id
2024-07-03 18:28:55 +02:00
Jörg Thalheim
b4698528ef make machine class now a dataclass 2024-07-03 12:34:43 +02:00
Qubasa
d513f66170 clan-cli: Refactor machines/update.py to cmd.run 2024-06-02 10:00:23 +02:00
a-kenji
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
Jörg Thalheim
2ae50b7398 allow to override nix options in update/install/flash commands 2024-05-29 10:14:14 +02:00
a-kenji
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
a-kenji
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
Johannes Kirschbauer
1051367ca4 add cli docs generator 2024-04-30 18:53:00 +02:00
Jörg Thalheim
f385e0e037 refactor facts command to regenerate facts for all machines 2024-04-15 22:14:54 +02:00
Jörg Thalheim
b3522b73aa fix case when secrets are regenerated during update/install 2024-04-12 14:46:51 +02:00
lassulus
f16667e25a refactor secrets & facts -> secret_facts & public_facts 2024-03-23 05:46:54 +01:00
Jörg Thalheim
6fe6229498 add requireExplicitUpdate option for mobile devices 2024-02-06 17:55:34 +01:00
Jörg Thalheim
be3a75bbd7 add support for build machines 2024-02-06 17:21:42 +01:00
Jörg Thalheim
2315dba2a9 rename machine.host to machine.target_host 2024-02-06 17:21:42 +01:00
Jörg Thalheim
6e57122da8 rename target_host to target_host_address 2024-02-06 17:21:42 +01:00
Jörg Thalheim
301a6b6a23 machines/update: get flake_attr from machine class 2024-02-06 17:21:42 +01:00
Jörg Thalheim
91f26a4743 skip machines without target_host when running clan machines update 2024-02-06 15:04:19 +01:00
Jörg Thalheim
ad1a87fc14 move checks if targetHost/buildHost is set to cli 2024-02-06 14:51:44 +01:00
lassulus
31188648f0 clan-cli update: remove legacy argument 2024-02-03 07:53:15 +01:00
lassulus
6a62065cdf clan-cli update: upload only local paths from localhost 2024-02-03 07:53:15 +01:00
Jörg Thalheim
3538cf2e46 rename deployment address to target address
This is a prepares having a build server for deployment
2024-02-02 16:39:29 +07:00
lassulus
6ba641c974 clan-cli update: use new Machine class interface 2024-01-24 15:49:12 +01:00
lassulus
6b004fca6f machines.Machine: refactor flake_dir -> flake; use Machine class in vm 2024-01-24 15:49:12 +01:00
Qubasa
ba05589af2 Refactor subprocess to cmd.py part 2 2024-01-10 12:11:29 +01:00
Jörg Thalheim
26e3e3872c enable more linting 2023-11-29 13:29:45 +00:00
lassulus
5640b84433 machines.update: remove redundant flake argument 2023-11-15 21:57:08 +01:00
lassulus
7b3d3e20b4 clan-cli secrets: flake_name -> flake_dir 2023-11-05 16:58:48 +01:00
lassulus
17176f25de cli machines update: find flake dir automatic if not provided, support flake as path 2023-10-29 20:52:38 +01:00
Qubasa
a28f910e35 nix fmt 2023-10-27 19:26:03 +02:00
Qubasa
32e60f5adc Added flake_name:str argument everywhere, nix fmt doesn't complain anymore 2023-10-27 19:15:40 +02:00
Qubasa
fdcd7ad1d9 Updated to main 2023-10-27 19:15:11 +02:00
Jörg Thalheim
79e707b044 fix updating multiple machines 2023-10-27 17:40:20 +02:00
lassulus
4af74ee5a5 machines update: add --target-host 2023-10-04 23:28:15 +02:00
lassulus
b25af9f0f4 clan_cli: refactor secrets code into Machine class 2023-10-04 16:41:16 +02:00
lassulus
89b7ffce6c clan-cli secrets upload: secrets are populated into tmpdir 2023-09-29 20:05:35 +02:00
lassulus
7ca9c49163 restore clanInternals with valid nixos config 2023-09-29 19:39:35 +02:00
Jörg Thalheim
b366beeb2e fix secrets script not beeing fetched 2023-09-28 15:51:09 +02:00
Jörg Thalheim
16b33eb0a8 add toplevel machines-json that can deploy all hosts 2023-09-28 15:23:25 +02:00
Jörg Thalheim
3f814c1e5f clan update: fix deploymentAddress 2023-09-27 21:11:52 +02:00
Jörg Thalheim
756820e4ca clanInternals.machines: invert system and machine name 2023-09-27 17:26:44 +02:00
Jörg Thalheim
dc51ca5803 factor out deployment address parsing into a function 2023-09-21 17:22:20 +02:00
Jörg Thalheim
3cb916d50f clan-cli/update: also use correct flake attr for generating secret 2023-09-19 15:20:11 +02:00
Jörg Thalheim
2931b08b46 clan-cli/update: use correct flake attr when deploying 2023-09-19 14:19:48 +02:00
Jörg Thalheim
a65413c98e use experimental flags everywhere 2023-09-19 13:12:10 +02:00
lassulus
8d29d0e69c clan-cli: get deploymentAddress from clan.networking 2023-09-15 12:17:07 +00:00
lassulus
c5786614bf clan-cli secrets: deploy -> upload 2023-09-15 12:17:07 +00:00
lassulus
c487280ba9 clan-cli machines update: generate and deploy secrets 2023-09-15 12:17:07 +00:00