GRM-16: feat: add --force flag to grm remove for unreachable runners

- Add force parameter to RunnerManager.remove() — skips remote Ansible
  playbook and only removes the local registry entry
- Add --force/-f CLI flag to grm remove command
- Add translations for --force help text across all 5 languages
- Add unit tests for force skip and CLI flag propagation
- 118 tests, 100% coverage, pyright clean, ruff clean
This commit is contained in:
Emil Simeonov
2026-06-19 02:00:45 +02:00
parent 6ede871054
commit 677745ac99
5 changed files with 64 additions and 10 deletions
+8
View File
@@ -306,6 +306,12 @@ def status(
type=click.Choice(["docker", "binary"]),
help=_("Override deployment mode from registry"),
)
@click.option(
"--force",
"-f",
is_flag=True,
help=_("Skip remote cleanup and only remove the local registry entry"),
)
@_handle_errors("Remove failed: {error}")
def remove(
runner_name: str,
@@ -314,6 +320,7 @@ def remove(
key: str | None,
token: str | None,
mode: str | None,
force: bool,
ask_become_pass: bool,
) -> None:
manager = RunnerManager()
@@ -326,6 +333,7 @@ def remove(
gitea_url=os.getenv("GITEA_URL", ""),
mode=mode,
ask_become_pass=ask_become_pass,
force=force,
)