Files
computer-playbook/roles/svc-runner/tasks/01_cleanup_instance.yml
kevinveenbirkenbachandClaude Opus 4.8 4039313266 refactor(tasks): enforce and apply a single task-file numbering scheme
Add tests/lint/repository/test_task_file_numbering.py: numbered task
files use exactly two leading digits, a numbered *_core.yml must be
00_core.yml, per directory the numbers are unique/consecutive and start
at 01 (00 with a core file), numbered includes appear in ascending
order, and shared helpers live in tasks/utils/ instead of the numbered
chain.

Apply it across every role: rename NN_core.yml to 00_core.yml with a
consecutive down-shift of the siblings, move letter-suffix children into
a subdirectory named after their parent task, relocate helpers included
from more than one place into tasks/utils/, and update every reference
(include_tasks, path_absolute, .ansible-lint-ignore, requirement docs).
Legacy narration comments in the touched files are deleted; the upstream
xwiki.properties reference block opts out via nocheck. The unused
MAILU_IP6_PUBLIC var (only ever named in now-removed comments) is dropped.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-23 20:01:31 +02:00

41 lines
1.6 KiB
YAML

---
- name: 🗑️ Stop and remove runner container for instance {{ runner_instance }}
ansible.builtin.command: "container rm -f runner-{{ runner_instance }}"
changed_when: true
failed_when: false
- name: 🔍 Gather containers for runner instance {{ runner_instance }}
community.docker.docker_host_info: # nocheck: docker-module-uses-container-cli read-only info module; returns structured container facts the wrapper's raw JSON would need parsed
containers: true
containers_filters:
label:
- "com.docker.compose.project={{ RUNNER_PROJECT_PREFIX }}-{{ runner_instance }}"
register: _runner_container_info
changed_when: false
failed_when: false
- name: 🗑️ Remove containers for runner instance {{ runner_instance }}
ansible.builtin.command: "container rm -f {{ (item.Names | default([item.Name]))[0] | regex_replace('^/', '') }}"
loop: "{{ _runner_container_info.containers | default([]) }}"
loop_control:
label: "{{ (item.Names | default([item.Name]))[0] }}"
changed_when: true
failed_when: false
- name: 📂 Remove runner instance directory {{ runner_instance }}
file:
path: "{{ RUNNER_INSTALL_DIR }}/{{ runner_instance }}"
state: absent
- name: 🚿 Unmount tmpfs from Docker volume dir for runner {{ runner_instance }}
ansible.builtin.mount:
path: "{{ RUNNER_DOCKER_BASE }}/{{ runner_instance }}"
state: unmounted
failed_when: false
changed_when: false
- name: 🗑️ Remove Docker volume directory for runner instance {{ runner_instance }}
ansible.builtin.file:
path: "{{ RUNNER_DOCKER_BASE }}/{{ runner_instance }}"
state: absent