Files
computer-playbook/roles/pkgmgr-install/tasks/main.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

38 lines
1.2 KiB
YAML

---
- include_tasks: 00_core.yml
when: run_once_pkgmgr_install is not defined
- name: "📦 Install '{{ package_name }}' via pkgmgr (non-interactive)"
shell: |
set -euo pipefail
export PKGMGR_VENV="{{ ansible_facts['env']['HOME'] }}/.venvs/pkgmgr"
export PATH="${PKGMGR_VENV}/bin:${PATH}"
export GIT_TERMINAL_PROMPT=0
export GIT_SSH_COMMAND="ssh -o BatchMode=yes -o StrictHostKeyChecking=yes"
export PYTHONUNBUFFERED=1
timeout --signal=KILL 600s \
"${PKGMGR_VENV}/bin/pkgmgr" update "{{ package_name }}" --clone-mode shallow </dev/null
args:
executable: /bin/bash
register: pkgmgr_update
notify: "{{ package_notify | default(omit,true) }}"
changed_when: "'already up to date' not in (pkgmgr_update.stdout | lower)"
become: true
retries: 7
delay: 20
until: pkgmgr_update.rc == 0
- name: "✅ Assert | pkgmgr path resolves '{{ package_name }}'"
shell: |
set -euo pipefail
"{{ ansible_facts['env']['HOME'] }}/.venvs/pkgmgr/bin/pkgmgr" path "{{ package_name }}" >/dev/null
args:
executable: /bin/bash
register: pkgmgr_path_assert
changed_when: false
failed_when: pkgmgr_path_assert.rc != 0
when: MODE_ASSERT | bool