mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-22 21:00:22 -07:00
pipx: add state latest (#5105)
* pipx: add state latest * add changelog fragment * Update plugins/modules/packaging/language/pipx.py Co-authored-by: Felix Fontein <felix@fontein.de> Co-authored-by: Felix Fontein <felix@fontein.de>
This commit is contained in:
parent
ad0c7095d4
commit
3c960ac620
3 changed files with 128 additions and 49 deletions
|
@ -20,6 +20,10 @@
|
|||
name: tox
|
||||
register: install_tox
|
||||
|
||||
- name: set fact latest_tox_version
|
||||
set_fact:
|
||||
latest_tox_version: "{{ install_tox.application.tox.version }}"
|
||||
|
||||
- name: install application tox again
|
||||
community.general.pipx:
|
||||
name: tox
|
||||
|
@ -40,12 +44,12 @@
|
|||
- name: check assertions tox
|
||||
assert:
|
||||
that:
|
||||
- install_tox is changed
|
||||
- "'tox' in install_tox.application"
|
||||
- install_tox_again is not changed
|
||||
- install_tox_again_force is changed
|
||||
- uninstall_tox is changed
|
||||
- "'tox' not in uninstall_tox.application"
|
||||
- install_tox is changed
|
||||
- "'tox' in install_tox.application"
|
||||
- install_tox_again is not changed
|
||||
- install_tox_again_force is changed
|
||||
- uninstall_tox is changed
|
||||
- "'tox' not in uninstall_tox.application"
|
||||
|
||||
##############################################################################
|
||||
- name: install application tox 3.24.0
|
||||
|
@ -66,7 +70,7 @@
|
|||
register: reinstall_noname
|
||||
ignore_errors: yes
|
||||
|
||||
- name: upgrade tox 3.24.0
|
||||
- name: upgrade tox from 3.24.0
|
||||
community.general.pipx:
|
||||
name: tox
|
||||
state: upgrade
|
||||
|
@ -94,19 +98,78 @@
|
|||
- name: check assertions tox 3.24.0
|
||||
assert:
|
||||
that:
|
||||
- install_tox_324 is changed
|
||||
- "'tox' in install_tox_324.application"
|
||||
- install_tox_324.application.tox.version == '3.24.0'
|
||||
- reinstall_tox_324 is changed
|
||||
- reinstall_tox_324.application.tox.version == '3.24.0'
|
||||
- upgrade_tox_324 is changed
|
||||
- upgrade_tox_324.application.tox.version != '3.24.0'
|
||||
- downgrade_tox_324 is changed
|
||||
- downgrade_tox_324.application.tox.version == '3.24.0'
|
||||
- uninstall_tox_324 is changed
|
||||
- "'tox' not in uninstall_tox_324.application"
|
||||
- upgrade_noname is failed
|
||||
- reinstall_noname is failed
|
||||
- install_tox_324 is changed
|
||||
- "'tox' in install_tox_324.application"
|
||||
- install_tox_324.application.tox.version == '3.24.0'
|
||||
- reinstall_tox_324 is changed
|
||||
- reinstall_tox_324.application.tox.version == '3.24.0'
|
||||
- upgrade_tox_324 is changed
|
||||
- upgrade_tox_324.application.tox.version != '3.24.0'
|
||||
- downgrade_tox_324 is changed
|
||||
- downgrade_tox_324.application.tox.version == '3.24.0'
|
||||
- uninstall_tox_324 is changed
|
||||
- "'tox' not in uninstall_tox_324.application"
|
||||
- upgrade_noname is failed
|
||||
- reinstall_noname is failed
|
||||
|
||||
##############################################################################
|
||||
- name: install application latest tox
|
||||
community.general.pipx:
|
||||
name: tox
|
||||
state: latest
|
||||
register: install_tox_latest
|
||||
|
||||
- name: cleanup tox latest
|
||||
community.general.pipx:
|
||||
state: absent
|
||||
name: tox
|
||||
register: uninstall_tox_latest
|
||||
|
||||
- name: install application tox 3.24.0 for latest
|
||||
community.general.pipx:
|
||||
name: tox
|
||||
source: tox==3.24.0
|
||||
register: install_tox_324_for_latest
|
||||
|
||||
- name: install application latest tox
|
||||
community.general.pipx:
|
||||
name: tox
|
||||
state: latest
|
||||
register: install_tox_latest_with_preinstall
|
||||
|
||||
- name: install application latest tox again
|
||||
community.general.pipx:
|
||||
name: tox
|
||||
state: latest
|
||||
register: install_tox_latest_with_preinstall_again
|
||||
|
||||
- name: install application latest tox
|
||||
community.general.pipx:
|
||||
name: tox
|
||||
state: latest
|
||||
force: true
|
||||
register: install_tox_latest_with_preinstall_again_force
|
||||
|
||||
- name: cleanup tox latest again
|
||||
community.general.pipx:
|
||||
state: absent
|
||||
name: tox
|
||||
register: uninstall_tox_latest_again
|
||||
|
||||
- name: check assertions tox latest
|
||||
assert:
|
||||
that:
|
||||
- install_tox_latest is changed
|
||||
- uninstall_tox_latest is changed
|
||||
- install_tox_324_for_latest is changed
|
||||
- install_tox_324_for_latest.application.tox.version == '3.24.0'
|
||||
- install_tox_latest_with_preinstall is changed
|
||||
- install_tox_latest_with_preinstall.application.tox.version == latest_tox_version
|
||||
- install_tox_latest_with_preinstall_again is not changed
|
||||
- install_tox_latest_with_preinstall_again.application.tox.version == latest_tox_version
|
||||
- install_tox_latest_with_preinstall_again_force is changed
|
||||
- install_tox_latest_with_preinstall_again_force.application.tox.version == latest_tox_version
|
||||
- uninstall_tox_latest_again is changed
|
||||
|
||||
##############################################################################
|
||||
- name: ensure application ansible-lint is uninstalled
|
||||
|
@ -136,34 +199,34 @@
|
|||
- name: check assertions inject_packages
|
||||
assert:
|
||||
that:
|
||||
- install_ansible_lint is changed
|
||||
- inject_pkgs_ansible_lint is changed
|
||||
- '"ansible-lint" in inject_pkgs_ansible_lint.application'
|
||||
- '"licenses" in inject_pkgs_ansible_lint.application["ansible-lint"]["injected"]'
|
||||
- uninstall_ansible_lint is changed
|
||||
- install_ansible_lint is changed
|
||||
- inject_pkgs_ansible_lint is changed
|
||||
- '"ansible-lint" in inject_pkgs_ansible_lint.application'
|
||||
- '"licenses" in inject_pkgs_ansible_lint.application["ansible-lint"]["injected"]'
|
||||
- uninstall_ansible_lint is changed
|
||||
|
||||
##############################################################################
|
||||
- name: install jupyter - not working smoothly in freebsd
|
||||
block:
|
||||
- name: ensure application jupyter is uninstalled
|
||||
community.general.pipx:
|
||||
name: jupyter
|
||||
state: absent
|
||||
|
||||
- name: install application jupyter
|
||||
community.general.pipx:
|
||||
name: jupyter
|
||||
install_deps: true
|
||||
register: install_jupyter
|
||||
|
||||
- name: cleanup jupyter
|
||||
community.general.pipx:
|
||||
state: absent
|
||||
name: jupyter
|
||||
|
||||
- name: check assertions
|
||||
assert:
|
||||
that:
|
||||
- install_jupyter is changed
|
||||
- '"ipython" in install_jupyter.stdout'
|
||||
when: ansible_system != 'FreeBSD'
|
||||
block:
|
||||
- name: ensure application jupyter is uninstalled
|
||||
community.general.pipx:
|
||||
name: jupyter
|
||||
state: absent
|
||||
|
||||
- name: install application jupyter
|
||||
community.general.pipx:
|
||||
name: jupyter
|
||||
install_deps: true
|
||||
register: install_jupyter
|
||||
|
||||
- name: cleanup jupyter
|
||||
community.general.pipx:
|
||||
state: absent
|
||||
name: jupyter
|
||||
|
||||
- name: check assertions
|
||||
assert:
|
||||
that:
|
||||
- install_jupyter is changed
|
||||
- '"ipython" in install_jupyter.stdout'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue