Johannes Kirschbauer
3ed3cdddc9
Feat(inventory): remove legacy action functions
...
Inventory should only and always be accessed through the inventory store.
Manually reading and writing to the json file is highly insecure
2025-05-27 17:20:04 +02:00
Qubasa
0ca7600439
clan-cli: Move Machine object to clan_lib
2025-05-22 19:11:19 +02:00
lassulus
80229c5e77
clan-cli: clan_cli.inventory -> clan_lib.inventory
2025-05-21 12:06:38 +02:00
lassulus
f5e9f305d0
clan-cli: clan_cli.dirs -> clan_lib.dirs
2025-05-20 12:08:30 +02:00
Qubasa
2682581c09
clan-cli: Use machine object everywhere instead of name + flake
2025-05-09 13:13:14 +02:00
Qubasa
153da50d6f
clan-cli: Refactor the API to use the Flake object
2025-05-07 16:43:50 +00:00
Jörg Thalheim
444fc3f820
Revert "Merge pull request 'clan-cli: Refactor the API to use the Flake object' ( #3531 ) from Qubasa/clan-core:replace_machine_name_with_machine_obj into main"
...
This reverts commit 572ce8885f , reversing
changes made to 0bee027251 .
2025-05-07 15:24:57 +02:00
Qubasa
7129c38675
clan-cli: Refactor the API to use the Flake object
2025-05-07 13:12:48 +02:00
Johannes Kirschbauer
070114ae9f
Fix(clan_lib.api): fix cyclic import problem for api schema export
2025-04-26 20:19:23 +02:00
Johannes Kirschbauer
acbe619883
Refactor(clan_lib): move clan_cli.api into clan_lib.api
2025-04-26 19:51:35 +02:00
Johannes Kirschbauer
7076f1b0e6
Chore(clan/clan_uri): Remove ClanURI class from clan_cli
2025-04-23 16:53:11 +02:00
Jörg Thalheim
7392570859
use machine.{secrets,public}_{vars,fact}_store everywhere
2025-04-22 18:20:35 +02:00
Louis Opter
039b309255
clan-cli: do not crash if a machine being deleted is missing from the inventory
...
We implement that by actually raising `KeyError` in `inventory.delete_by_path`
(as advertised in the docstring), since it makes more sense to catch a
`KeyError` than a generic `ClanError`.
2025-03-19 10:53:38 +00:00
Louis Opter
538374558d
clan-cli: machines delete: delete the machine's vars and secrets
...
When a machine is deleted with `clan machines delete`, remove its
vars and legacy secrets, and update any secrets that reference the
machine's key.
This command is a superset of `clan secrets machine delete`, and I am
wondering if we could remove the `clan secrets machine` subcommand,
unless there is an use case for having a machine defined without its
key, and any secrets/vars?
Note:
- This deletes the `ListSecretsOptions` dataclass, as it did not seem to
bring any value, especially since `list_secrets` was receiving its
individual members instead of the whole dataclass. We can always bring
it back if complexity grows to demand it.
2025-03-19 10:53:38 +00:00
Johannes Kirschbauer
153b5560c3
Cli: delete machines bugfix. Dont modify the inventory in other places
2025-02-15 09:03:54 +07:00
lassulus
32748c14f4
clan_cli machines: use Flake instead of FlakeId
2025-02-07 06:26:09 +01:00
Johannes Kirschbauer
2669d6a2cc
Inventory: init delete patial data
2024-12-10 21:19:04 +01:00
Johannes Kirschbauer
f65e92191a
Inventory: fix persistence
2024-12-10 16:41:40 +01:00
Johannes Kirschbauer
b1ba74a27b
inventory.{cli,api}: use only dictionaries
2024-12-06 18:51:20 +01:00
Johannes Kirschbauer
91a9fb23be
API: rename set_inventory
2024-09-13 16:11:10 +02:00
Jörg Thalheim
15ff74f7c2
enable ASYNC, DTZ, YTT and EM lints
2024-09-02 14:07:06 +02:00
Jörg Thalheim
af4b9cc2d5
make all same-module imports relative, the rest absolute
...
This makes sorting more consitent.
2024-09-02 13:00:19 +02:00
Johannes Kirschbauer
679fd914e0
Inventory: add load_eval method
2024-07-24 10:34:10 +02:00
Johannes Kirschbauer
07965598f5
Classgen: add mapped keys and more stuff
2024-07-18 21:58:36 +02:00
Jörg Thalheim
5b606c035f
move FlakeId to flake id
...
move FlakeId to flake id
2024-07-03 18:28:55 +02:00
Johannes Kirschbauer
d6493ed64d
API: tests for module instance update
2024-07-02 16:09:13 +02:00
Johannes Kirschbauer
9f484c1d39
API: migrate machines delete and list to inventory
2024-07-02 11:07:11 +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
lassulus
1ea13646ea
clan_cli: flake_name -> flake_dir
2023-11-15 16:23:28 +01:00
Qubasa
fdcd7ad1d9
Updated to main
2023-10-27 19:15:11 +02:00
DavHau
a56073b051
machines delete: fix - delete all existing files
2023-09-02 18:37:40 +02:00
Jörg Thalheim
c5b16124ef
add machine subcommand
2023-08-24 16:58:22 +02:00