Files
ansible_role_package/tasks/pkgs/pipx.yml

41 lines
1.1 KiB
YAML

# vim: set filetype=yaml.ansible :
#
## Package: pipx
## Description: a runnable venv for simpler python packaging
## Version: system
## Methods: system
## Helpers: -
---
- name: Set pipx default facts # {{{
ansible.builtin.set_fact:
pipx:
methods:
- system
pkgname:
RedHat: pipx
Debian: pipx
Archlinux: python-pipx
# }}}
- name: Configure pipx
when:
- "'pipx' not in __configured"
block:
- name: Set pipx install method
when:
- pipx_imethod is undefined
ansible.builtin.set_fact:
pipx_imethod: "{{ imethod if imethod in pipx.methods else pipx.methods[0] }}"
- name: Configure pipx system install
when:
- pipx_imethod == 'system'
block:
- name: Queue pipx for system install
ansible.builtin.set_fact:
pkg_sys: "{{ pkg_sys + [pipx.pkgname[os_family]] }}"
pipx_install: "{{ pipx_imethod }}={{ pipx.pkgname[os_family] }}"
- name: Finalise pipx configuration
ansible.builtin.set_fact:
__configured: "{{ __configured | combine( { 'pipx': pipx_install } ) }}"