GRM-107: refactor: use devx Makefile aliases, bump devx>=0.23.0
Post-merge / detect-type (push) Successful in 1m3s
Post-merge / release (push) Successful in 1m8s
Post-merge / validate-commit-msg (push) Successful in 1m9s
Post-merge / vikunja (push) Successful in 1m13s
Post-merge / badges (push) Successful in 1m19s
Post-merge / sync-wiki (push) Successful in 1m44s
Post-merge / publish (push) Successful in 1m3s
Post-merge / configure-repo (push) Successful in 1m18s
Post-merge / detect-type (push) Successful in 1m3s
Post-merge / release (push) Successful in 1m8s
Post-merge / validate-commit-msg (push) Successful in 1m9s
Post-merge / vikunja (push) Successful in 1m13s
Post-merge / badges (push) Successful in 1m19s
Post-merge / sync-wiki (push) Successful in 1m44s
Post-merge / publish (push) Successful in 1m3s
Post-merge / configure-repo (push) Successful in 1m18s
This commit was merged in pull request #174.
This commit is contained in:
@@ -226,6 +226,29 @@ class RunnerManager:
|
||||
)
|
||||
tracker.done()
|
||||
|
||||
def restart(
|
||||
self,
|
||||
name: str,
|
||||
host: str | None = None,
|
||||
user: str | None = None,
|
||||
key: str | None = None,
|
||||
ask_become_pass: bool = False,
|
||||
) -> None:
|
||||
"""Restart a runner instance on a remote host (stop, prune images, start)."""
|
||||
actual_host, actual_user, actual_key, _gitea_url = self._resolve_runner(name, host, user, key)
|
||||
with track_steps() as tracker:
|
||||
tracker.begin(_("Restarting Gitea Runner {name} on {host}", name=name, host=actual_host))
|
||||
self._run_playbook(
|
||||
"restart-runner.yml",
|
||||
actual_host,
|
||||
actual_user,
|
||||
{"runner_name": name},
|
||||
actual_key,
|
||||
ask_become_pass,
|
||||
description=_("Restarting Gitea Runner {name} on {host}", name=name, host=actual_host),
|
||||
)
|
||||
tracker.done()
|
||||
|
||||
def enable(
|
||||
self,
|
||||
name: str,
|
||||
@@ -345,8 +368,14 @@ class RunnerManager:
|
||||
self._registry.remove(name)
|
||||
tracker.done()
|
||||
|
||||
def list_runners(self) -> list[dict[str, str]]:
|
||||
"""Return a list of registered runners with live service status."""
|
||||
def list_runners(self, become_pass: str | None = None) -> list[dict[str, str]]:
|
||||
"""Return a list of registered runners with live service status.
|
||||
|
||||
Args:
|
||||
become_pass: Sudo password for ad-hoc status checks. When provided,
|
||||
it is passed via ``--become-password-file`` to avoid stdin
|
||||
consumption issues when checking multiple runners in sequence.
|
||||
"""
|
||||
runners = self._registry.list()
|
||||
result: list[dict[str, str]] = []
|
||||
for name, info in runners.items():
|
||||
@@ -369,10 +398,13 @@ class RunnerManager:
|
||||
user,
|
||||
key,
|
||||
"shell",
|
||||
f"sudo -u grm-{name} systemctl --user is-active gitea-runner 2>/dev/null",
|
||||
f"sudo -u grm-{name} "
|
||||
f"XDG_RUNTIME_DIR=/run/user/$(id -u grm-{name}) "
|
||||
f"systemctl --user is-active gitea-runner 2>/dev/null",
|
||||
become=True,
|
||||
ask_become_pass=True,
|
||||
check=False,
|
||||
become_pass=become_pass,
|
||||
)
|
||||
service_status = self._parse_status(stdout)
|
||||
except AnsibleError:
|
||||
|
||||
Reference in New Issue
Block a user