Working on source packages

Signed-off-by: Matthew Stobbs <matthew@stobbs.ca>
This commit is contained in:
Matthew Stobbs
2026-02-02 02:35:16 -07:00
parent fa78c0aa0c
commit c613a29ce4
14 changed files with 470 additions and 396 deletions

View File

@@ -1,58 +1,54 @@
# vim: set filetype=yaml.ansible :
---
- name: Configure ansible-lint
- name: Configure ansible_lint
when:
- __ansible_lint_configured is undefined or
not __ansible_lint_configured
block:
- name: Set basic variables
ansible.builtin.set_fact:
ansible_lint_version: latest
ansible_lint_version: "{{ ansible_lint_version | default('latest') }}"
- name: Configure package options
ansible.builtin.set_fact:
ansible_lint_install_method: "{{ ansible_lint_install_method | default(install_method) }}"
- name: Set pipx name
- name: Set ansible_lint install method
when:
- ansible_lint_install_method == 'pipx'
- ansible_lint_install_method is undefined
ansible.builtin.set_fact:
ansible_lint_install_method: "{% if install_method in ansible_lint_install_methods %}{{ install_method }}{% else %}{{ ansible_lint_install_methods[0] }}{% endif %}"
- name: Set pipx pkgnname
when:
- ansible_lint_install_method == 'pipx' or
ansible_lint_install_method == 'system_pip'
ansible.builtin.set_fact:
ansible_lint_pkgname: "{{ 'ansible_lint' if ansible_lint_version == 'latest' else 'ansible-lint==' ~ ansible_lint_version }}"
- name: Set package name
when:
- install_method == 'system'
block:
- name: Set package name RedHat/Debian/Alpine/Arch distros
when:
- ansible_os_family in ['RedHat', 'Debian', 'Alpine', 'Archlinux']
ansible.builtin.set_fact:
ansible_lint_pkgname: ansible-lint
- name: Set package name for FreeBSD
when:
- ansible_os_family == 'FreeBSD'
ansible.builtin.set_fact:
ansible_lint_pkgname: py311-ansible-lint
- name: Ensure ansible_lint_install_method is valid
when:
- ansible_lint_install_method not in ansible_lint_install_methods
ansible.builtin.set_fact:
ansible_lint_install_method: ansible_lint_install_methods[0]
ansible_lint_pkgname:
RedHat: ansible-lint
Debian: ansible-lint
Archlinux: ansible-lint
Alpine: ansible-lint
FreeBSD: py311-ansible-lint
- name: Complete ansible_lint configuration
ansible.builtin.set_fact:
__ansible_lint_configured: true
- name: Add ansible-lint to pipx install list
- name: Add ansible_lint to pipx install list
when:
- ansible_lint_install_method == 'pipx'
ansible.builtin.set_fact:
pkg_pipx: "{{ pkg_pipx + [ansible_lint_pkgname] }}"
- name: Add ansible_lint to system_pip install list
when:
- ansible_lint_install_method == 'system_pip'
- name: Append ansible-lint to system install list
when:
- ansible_lint_install_method == 'system'
ansible.builtin.set_fact:
pkg_sys: "{{ pkg_sys + [ansible_lint_pkgname] }}"
pkg_sys: "{{ pkg_sys + [ansible_lint_pkgname[ansible_os_family]] }}"