mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
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>
49 lines
1.7 KiB
YAML
49 lines
1.7 KiB
YAML
---
|
|
- name: 📂 Create runner instance {{ runner_instance }} directory
|
|
file:
|
|
path: "{{ RUNNER_INSTALL_DIR }}/{{ runner_instance }}"
|
|
state: directory
|
|
owner: "{{ RUNNER_USER }}"
|
|
group: "{{ RUNNER_USER }}"
|
|
mode: "0755"
|
|
|
|
- name: 🔍 Check runner binary installed for instance {{ runner_instance }}
|
|
ansible.builtin.stat:
|
|
path: "{{ RUNNER_INSTALL_DIR }}/{{ runner_instance }}/run.sh"
|
|
register: _runner_binary_stat
|
|
|
|
- name: 📦 Extract runner archive for instance {{ runner_instance }}
|
|
unarchive: # nocheck: stack-host-consumer (node-local runner: every node extracts its own run.sh)
|
|
src: "{{ RUNNER_INSTALL_DIR }}/actions-runner.tar.gz"
|
|
dest: "{{ RUNNER_INSTALL_DIR }}/{{ runner_instance }}"
|
|
remote_src: true
|
|
owner: "{{ RUNNER_USER }}"
|
|
group: "{{ RUNNER_USER }}"
|
|
when: not _runner_binary_stat.stat.exists
|
|
|
|
- name: 🔍 Find runner configuration for instance {{ runner_instance }}
|
|
ansible.builtin.find:
|
|
paths: "{{ RUNNER_INSTALL_DIR }}/{{ runner_instance }}"
|
|
patterns: ".*"
|
|
hidden: true
|
|
file_type: file
|
|
depth: 1
|
|
register: _runner_config_files
|
|
|
|
- name: 🗑️ Delete stale runner config files for instance {{ runner_instance }}
|
|
ansible.builtin.file:
|
|
path: "{{ item.path }}"
|
|
state: absent
|
|
loop: "{{ _runner_config_files.files }}"
|
|
loop_control:
|
|
label: "{{ item.path }}"
|
|
when: item.path | basename not in ['.env']
|
|
|
|
- name: 📄 Write runner environment file for instance {{ runner_instance }}
|
|
template: # nocheck: stack-host-template (node-local runner: each node registers its own instances)
|
|
src: runner_instance_env.j2
|
|
dest: "{{ RUNNER_INSTALL_DIR }}/{{ runner_instance }}/.env"
|
|
owner: "{{ RUNNER_USER }}"
|
|
group: "{{ RUNNER_USER }}"
|
|
mode: "0600"
|