Jörg Thalheim
f3512b853a
remove nix_shell_legacy
2025-04-16 21:03:58 +02:00
Jörg Thalheim
837789010e
rename nix_shell_legacy to nix_shell and run_cmd to nix_shell
...
Than it's more obvious that we need to migrate.
2025-04-16 18:27:01 +00:00
Jörg Thalheim
43035b85a5
always resolve symlinks for TemporaryDirectory
...
On macOS mktemp returns a temporary directory in a symlink.
Nix has a bug where it won't accept path:// located in a symlink.
This avoid this issue by always resolving symlinks as returned by
TemporaryDirectory.
2025-03-19 16:47:18 +01:00
DavHau
db2e2e974c
vars+facts: use bwrap only if supported
2025-03-09 13:52:15 +07:00
Qubasa
4c138c6377
clan-cli: Revert generating facts in clan facts list, for consistency
2025-03-03 01:40:40 +01:00
Qubasa
0602b9d01c
clan-cli: Fix wrong clan vars generate regression added by 4ff5acfe29
2025-03-02 19:53:17 +01:00
Qubasa
75dc906183
clan-cli: Fix get_all_facts forgetting to generate facts before getting them
2025-03-02 15:07:57 +01:00
lassulus
2a8f40e91a
clan_cli machines: use Flake instead of FlakeId
2025-02-07 06:26:09 +01:00
Johannes Kirschbauer
119e161c6c
Facts/api: export method for getting the public store
2025-01-22 09:02:55 +00:00
Jörg Thalheim
7b3efcec06
vars/fact: isolate secret generation better from the system
2024-12-25 19:21:51 +00:00
Michael Hoang
57966ec91a
facts: don't swallow exceptions when running clan facts generate
2024-12-16 17:06:29 +11:00
Qubasa
6b784f8623
clan-cli: Rework 'clan ssh' command, improve Tor support.
2024-12-13 00:11:18 +01:00
Qubasa
b9091beff9
clan-cli: Replace log.info to machine.info if applicable
2024-12-12 15:36:17 +01:00
Qubasa
570bceff4e
clan-cli: Fix ignored debug flag in clan vms run, refactor Host.run to use RunOpts
2024-12-03 16:01:51 +01:00
Qubasa
1f98df96e3
clan-cli: cmd.run now has its options extracted to a dataclass
2024-11-28 15:26:37 +01:00
Qubasa
b9154fddd2
clan-cli: Refactor ssh classes to dataclasses
2024-11-25 19:47:17 +01:00
Qubasa
4e6051acdc
docs: Fix nix flake check problem with diskId
2024-11-25 18:39:16 +01:00
Qubasa
979e5e839d
clan-cli: Refactor ssh part 2, Refactor custom_logger
2024-11-22 22:08:50 +01:00
Qubasa
26730cd662
clan-cli: upload.py -> Replace rsync with native ssh command
2024-11-15 22:03:47 +07:00
DavHau
4ec218a200
vars,facts: update_check -> needs_upload
2024-11-13 13:34:15 +07:00
a-kenji
3b04c5484c
pkgs/cli: Add @override decorator
2024-11-12 15:14:55 +00:00
DavHau
08fb34aa01
cli: set needs_user_terminal for all ssh commands
2024-10-23 19:40:50 +07:00
Jörg Thalheim
4af1954abf
ruff: enable warning lints
2024-10-23 09:06:02 +00:00
Jörg Thalheim
420958f19d
{vars,facts}/upload: fix ipv6 support
2024-10-10 17:03:32 +02:00
DavHau
29f70640ef
vars,facts: add sops.defaultGroups to new machines
...
Prior to this, when initializing new machines, only the current user had access to it's key which prevents other admin users to deploy this machine later
2024-10-10 19:31:03 +07:00
Jörg Thalheim
db11e7cb92
{vars,facts}/generate: ensure that args.flake is passed
2024-10-08 17:51:55 +00:00
Jörg Thalheim
0a568be528
pass in flakeid to vm_state_dir
2024-10-08 17:51:55 +00:00
Qubasa
2838e468a6
clan-cli: Fix bug where --host-key-check is not applied everywhere
2024-10-08 00:25:15 +00:00
Jörg Thalheim
4826582547
add more custom prefixes for temporary directories
2024-10-01 20:54:19 +02:00
Jörg Thalheim
a5e18fda08
generate: don't set type=bool in argparse.BooleanOptionalAction
2024-10-01 18:48:54 +02:00
DavHau
0a8b7f38a8
vars: implement migration
...
Migrating generated files from the facts subsystem to the vars subsystem is now possible.
HowTo:
1. declare `clan.core.vars.generators.<generator>.migrateFact = my_service` where `my_service` refers to a service from `clan.core.facts.services`
2. run `clan vers generate your_machine` or `clan machines update your_machine`
Vars will only be migrated for a generator if:
1. The facts service specified via `migrateFact` does exist
2. None of the vars to generate exist yet
3. All public var names exist in the public facts store
4. All secret var names exist in the secret fact store
If the migration is deemed possible, the generator script will not be executed. Instead the files from the public or secret facts store are read and stored into the corresponding vars store
2024-09-19 17:57:03 +02:00
Jörg Thalheim
29909e49d3
apply TRY lint
2024-09-03 18:13:46 +02:00
Johannes Kirschbauer
e4f077f2e2
Fix cyclic imports: __init__.py are automatically imported
2024-09-03 17:24:31 +02:00
Johannes Kirschbauer
facc0bd226
UI: Init iwd service for single wifi
2024-09-03 17:24:31 +02:00
Jörg Thalheim
1fa0e72bea
use pathlib everywhere
2024-09-02 18:26:13 +02:00
Jörg Thalheim
483d8ce521
add SIM lint
2024-09-02 16:39:30 +02:00
Jörg Thalheim
cb16cda3fa
add RET, Q, RSE lint
2024-09-02 15:58:49 +02:00
Jörg Thalheim
e150b37fb8
enable ASYNC, DTZ, YTT and EM lints
2024-09-02 14:07:06 +02:00
Jörg Thalheim
22d6e5e153
enable comprehensions linting rules
2024-09-02 13:35:52 +02:00
Jörg Thalheim
b313f2d066
make all same-module imports relative, the rest absolute
...
This makes sorting more consitent.
2024-09-02 13:00:19 +02:00
lassulus
5ced7268a6
password_store: create secrets with correct permissions
2024-08-30 12:13:00 +02:00
Jörg Thalheim
3b40ff8156
fix group settings not applied correctly
2024-08-15 22:52:53 +02:00
DavHau
6892202bf2
vars: add test for deployment
2024-08-13 15:29:51 +02:00
DavHau
1b3dc65b89
vars/sops: store secrets in /sops/vars
2024-07-24 18:42:50 +07:00
Jörg Thalheim
64956a7a0a
Revert "clan-cli: deprecate nix_shell() in favor of run_cmd()"
...
This reverts commit a598b878a5 .
2024-07-17 14:04:49 +02:00
DavHau
a598b878a5
clan-cli: deprecate nix_shell() in favor of run_cmd()
2024-07-16 14:03:17 +07:00
Jörg Thalheim
a582eb9fd4
don't catch all exceptions when generating facts
2024-07-03 18:28:55 +02:00
Jörg Thalheim
6037ad1ce0
move FlakeId to flake id
...
move FlakeId to flake id
2024-07-03 18:28:55 +02:00
Jörg Thalheim
2f1dac6962
make machine class now a dataclass
2024-07-03 12:34:43 +02:00
a-kenji
ffe6e03705
clan: implement OSC8 hyperlinks for help output
...
The name of the terminal help output stays the same to keep
compatibility with legacy terminal implementations.
2024-07-02 08:55:01 +00:00