1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
community.general/plugins/modules/packaging/os
patchback[bot] e03ade818a
pkgutil: add update all, check-mode, squashing and examples (#799) (#1009)
* pkgutil: add update all, check-mode, squashing and examples

Taken from https://github.com/ansible/ansible/pull/51651 by dagwieers, which was taken from https://github.com/ansible/ansible/pull/27866 by scathatheworm.  Let’s have one last attempt to get this merged.

> ##### SUMMARY
>
> Original PR #27866 from scathatheworm
>
> When working with Solaris pkgutil CSW packages, I came across this module being very basic in functionality, in particular, that I could not use it to update all CSW packages.
>
> When going into details into the code I also found it did not incorporate a possibility of doing dry-run from the underlying utility, or supported to specify multiple packages for operations.
>
> This module probably sees very little use, but it seemed like nice functionality to add and make it behave a little more like other package modules.
> ##### ISSUE TYPE
>
>     * Feature Pull Request
>
>
> ##### COMPONENT NAME
>
> pkgutil module
> ##### ANSIBLE VERSION
>
> ```
> ansible 2.3.1.0
>   config file = /etc/ansible/ansible.cfg
>   configured module search path = Default w/o overrides
>   python version = 2.7.5 (default, Aug  2 2016, 04:20:16) [GCC 4.8.5 20150623 (Red Hat 4.8.5-4)]
> ```
>
> ##### ADDITIONAL INFORMATION
>
>     * Added ability to upgrade all packages:
>
>
> ```yaml
> - pkgutil:
>     name: '*'
>     state: latest
> ```
>
>     * Added ability to modify state of a list of packages:
>
>
> ```yaml
> - pkgutil:
>     name:
>     - CSWtop
>     - CSWwget
>     - CSWlsof
>     state: present
> ```
>
>     * Added ability to have underlying tool perform a dry-run when using check mode, pkgutil -n
>
>     * Added ability to configure force option to force packages to state determined by repository (downgrade for example)
>
>
> ```yaml
> - pkgutil:
>     name: CSWtop
>     state: latest
>     force: yes
> ```
>
>     * Added more examples and documentation to show the new functionality

* Add changelog fragment.

* Observe changelog style guide

https://docs.ansible.com/ansible/devel/community/development_process.html#changelogs

Co-authored-by: Felix Fontein <felix@fontein.de>

* Since module split, version_added no-longer refers to core Ansbile

Co-authored-by: Felix Fontein <felix@fontein.de>

* Tweak documentation

* Apply the new `elements` feature for specifying list types

Co-authored-by: Felix Fontein <felix@fontein.de>

* Set version_added

Co-authored-by: Felix Fontein <felix@fontein.de>

* Document `pkg` alias for `name`

* Be explicit about the purpose of states `installed` and `removed`.

* Force the user to specify their desired state.

* Review documentation for pkgutil module.

* Fully qualify svr4pkg module name

Co-authored-by: Felix Fontein <felix@fontein.de>

Co-authored-by: Felix Fontein <felix@fontein.de>
(cherry picked from commit dd9e999c9f)

Co-authored-by: Peter Oliver <git@mavit.org.uk>
2020-09-30 06:57:10 +02:00
..
apk.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
apt_repo.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
apt_rpm.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
flatpak.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
flatpak_remote.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
homebrew.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
homebrew_cask.py Fix for error trying to install cask with '@' in the name (#763) (#910) 2020-09-17 19:41:00 +02:00
homebrew_tap.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
installp.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
layman.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
macports.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
mas.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
openbsd_pkg.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
opkg.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
pacman.py pacman: Treat .zst package names as files (#650) 2020-07-19 12:07:38 +02:00
pkg5.py pkg5: wrap 'to modify' package list (#789) (#911) 2020-09-17 19:29:44 +02:00
pkg5_publisher.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
pkgin.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
pkgng.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
pkgutil.py pkgutil: add update all, check-mode, squashing and examples (#799) (#1009) 2020-09-30 06:57:10 +02:00
portage.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
portinstall.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
pulp_repo.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
redhat_subscription.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
rhn_channel.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
rhn_register.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
rhsm_release.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
rhsm_repository.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
slackpkg.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
snap.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
sorcery.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
svr4pkg.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
swdepot.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
swupd.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
urpmi.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
xbps.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
zypper.py modules: fix examples to use FQCN (#644) 2020-07-13 21:50:31 +02:00
zypper_repository.py zypper_repository: Proper failure when python-xml is missing (#939) (#940) 2020-09-21 13:56:37 +02:00