Commit graph

614 commits

Author SHA1 Message Date
Christopher Snyder
09f68fc659 redhat_subscription: Fix usage of ConfigParser (#54815) 2019-04-09 09:36:51 +02:00
Adam Miller
21d692cace fix dnf module removal in dnf upstream 4.2.2+ (#54923)
* fix dnf module removal in dnf upstream 4.2.2+

Signed-off-by: Adam Miller <admiller@redhat.com>

* Remove extra blank line in changelog fragment.
2019-04-05 14:28:24 -07:00
James Cassell
bc4ef99533 standardize TLS connection properties (#54315)
* openstack: standardize tls params

* tower: tower_verify_ssl->validate_certs

* docker: use standard tls config params

- cacert_path -> ca_cert
- cert_path -> client_cert
- key_path -> client_key
- tls_verify -> validate_certs

* k8s: standardize tls connection params

- verify_ssl -> validate_certs
- ssl_ca_cert -> ca_cert
- cert_file -> client_cert
- key_file -> client_key

* ingate: verify_ssl -> validate_certs

* manageiq: standardize tls params

- verify_ssl -> validate_certs
- ca_bundle_path -> ca_cert

* mysql: standardize tls params

- ssl_ca -> ca_cert
- ssl_cert -> client_cert
- ssl_key -> client_key

* nios: ssl_verify -> validate_certs

* postgresql: ssl_rootcert -> ca_cert

* rabbitmq: standardize tls params

- cacert -> ca_cert
- cert -> client_cert
- key -> client_key

* rackspace: verify_ssl -> validate_certs

* vca: verify_certs -> validate_certs

* kubevirt_cdi_upload: upload_host_verify_ssl -> upload_host_validate_certs

* lxd: standardize tls params

- key_file -> client_key
- cert_file -> client_cert

* get_certificate: ca_certs -> ca_cert

* get_certificate.py: clarify one or more certs in a file

Co-Authored-By: jamescassell <code@james.cassell.me>

* zabbix: tls_issuer -> ca_cert

* bigip_device_auth_ldap: standardize tls params

- ssl_check_peer -> validate_certs
- ssl_client_cert -> client_cert
- ssl_client_key -> client_key
- ssl_ca_cert -> ca_cert

* vdirect: vdirect_validate_certs -> validate_certs

* mqtt: standardize tls params

- ca_certs -> ca_cert
- certfile -> client_cert
- keyfile -> client_key

* pulp_repo: standardize tls params

remove `importer_ssl` prefix

* rhn_register: sslcacert -> ca_cert

* yum_repository: standardize tls params

The fix for yum_repository is not straightforward since this module is
only a thin wrapper for the underlying commands and config.  In this
case, we add the new values as aliases, keeping the old as primary,
only due to the internal structure of the module.

Aliases added:
- sslcacert -> ca_cert
- sslclientcert -> client_cert
- sslclientkey -> client_key
- sslverify -> validate_certs

* gitlab_hook: enable_ssl_verification -> hook_validate_certs

* Adjust arguments for docker_swarm inventory plugin.

* foreman callback: standardize tls params

- ssl_cert -> client_cert
- ssl_key -> client_key

* grafana_annotations: validate_grafana_certs -> validate_certs

* nrdp callback: validate_nrdp_certs -> validate_certs

* kubectl connection: standardize tls params

- kubectl_cert_file -> client_cert
- kubectl_key_file -> client_key
- kubectl_ssl_ca_cert -> ca_cert
- kubectl_verify_ssl -> validate_certs

* oc connection: standardize tls params

- oc_cert_file -> client_cert
- oc_key_file -> client_key
- oc_ssl_ca_cert -> ca_cert
- oc_verify_ssl -> validate_certs

* psrp connection: cert_trust_path -> ca_cert

TODO: cert_validation -> validate_certs (multi-valued vs bool)

* k8s inventory: standardize tls params

- cert_file -> client_cert
- key_file -> client_key
- ca_cert -> ca_cert
- verify_ssl -> validate_certs

* openshift inventory: standardize tls params

- cert_file -> client_cert
- key_file -> client_key
- ca_cert -> ca_cert
- verify_ssl -> validate_certs

* tower inventory: verify_ssl -> validate_certs

* hashi_vault lookup: cacert -> ca_cert

* k8s lookup: standardize tls params

- cert_file -> client_cert
- key_file -> client_key
- ca_cert -> ca_cert
- verify_ssl -> validate_certs

* laps_passord lookup: cacert_file -> ca_cert

* changelog for TLS parameter standardization
2019-03-28 00:19:28 -05:00
Brian Coca
fee4a0df94
Handle errors correctly in rhn_channel (#54194)
* Handle errors correctly in rhn_channel

* also fail if required info is not available
2019-03-27 19:43:28 -04:00
Alexander Bethke
f9c7ccbb41 Fixes flatpak module to work with flatpak >=1.2.0, fixes #51485 (#51482)
* Fixes flatpak module to work with flatpak >=1.2.0, fixes #51481

This keeps backwards-compatibility for flatpak versions before 1.2.0

* Fixes typeo

Co-Authored-By: oolongbrothers <oolongbrothers@zeibar.net>
2019-03-21 15:57:41 +00:00
James Cassell
530771e6f8 rename rhsm_repository_release to rhsm_release (#53430)
no changelog needed, as it is a new module for 2.8
2019-03-21 10:21:45 -05:00
Martin Krizek
42731ec73f
yum: fix disable_excludes in repoquery fallback (#53552)
Fixes #53134
2019-03-12 18:41:26 +01:00
Sebastian Meyer
86ba4f3e46 remove some instances of state: installed (#53537)
This fixes the examples in multiple modules so they use `state: present`
instead of `state: installed`.
2019-03-11 12:13:52 -05:00
Adam Miller
7b98ff6a31 fix pkg name nevra parsing regex in dnf (#53572) 2019-03-08 20:53:46 -08:00
Martin Krizek
4e39b9fe02 apt: clarify cache_valid_time (#53442) 2019-03-08 14:35:52 -06:00
Masaki Furuta
ba3345b52b Make "absent" runnable with specifying NVR in DNF module. (#53206)
* Make "absent" runnable with specifying NVR in DNF module.

* Fix indent and comment.

* Adjust indent.

* Fix removing multiple packages with NVR.

* Replace nevra_strict with nevra , since it's not included in libdnf on Fedora 28.
2019-03-08 09:48:18 -05:00
Brian Coca
b94bfed1a6
scan_packages: made adding package managers easier (#49079)
* made adding package managers easier

  added portage support

* moar pkg mgrs and moar info

 - added 'pkg' pkg manager (freebsd)
 - added pip
 - more apt info

* updated clgo

* Updates from feedback

Co-Authored-By: bcoca <bcoca@users.noreply.github.com>

* incorporated more feedback and added docstrings

* moar from feedback

  - made manager list dynamic and names based on class
  - better not found msg
  - made abstract metaclass again
  - test is now init exception
  - module to global
  - better dedupe comments

* more targetted errors/warnings

* added strategy, reordered to conserve priority

* rpm > apt

* move break to top

* fix trate

* piping it

* lines and meta

* refactored common functions

 - moved pip into it's own module
 - cleaned up base clases
 - ensure 'lower' match in package_facts

* missing license

* avoid facts

* update clog

* addressed feedback

* fix clog

* cleanup

* upd

* removed pip as that was removed

* renamed cpan

* added a single line since 2 lines are needed to be

readabnle instead of just 1 line, it is a huge problem otherwise

* fix internal ref

* not intended in this round

* updated as per fb
2019-03-06 12:29:51 -05:00
Martin Krizek
239fb1f68d yum/dnf: Add download_dir param (#53171) 2019-03-04 13:08:58 -05:00
Till Maas
0469134f16 rhsm_repository: Properly handle no repos (#51938)
When no repos are defined, the `repo` variable is undefined. Therefore
append it only to the result if a repo was found. Otherwise Ansible will
fail with an UnboundLocalError.
2019-02-22 11:44:18 +00:00
Chandler Wilkerson
8b8c4aa473 Exempt register vars from shell expansion (#52594) 2019-02-21 20:21:00 +00:00
Paweł Rozlach
fcb6f136cd flatpak_remote: Handle empty output in remote_exists (#52010)
`flatpak remote-list -d` can return an empty output on Fedora 29 (version 1.2.0).
2019-02-18 17:40:51 +00:00
Philippe Makowski
61743ab39a fix bug #47154 (#49881) 2019-02-18 17:09:23 +00:00
Abhijeet Kasurde
52d8f9c397 pacman: Check for package list before installing (#52246)
Fixes: #45638

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-17 06:04:46 -05:00
Dag Wieers
b4802350ec
Fix one issue (#52370) 2019-02-15 22:33:31 +01:00
Dag Wieers
203caf2570
Fix module issues (#52209) 2019-02-15 12:57:20 +01:00
Matt Clay
3e778d3f8f Fix pycodestyle E117 issues. 2019-02-13 23:35:39 -08:00
Adam Miller
ea0e2bf2b3 yum always return changes dict, not only in check mode (#51987)
Previously the yum module would provide a `changes` dict when
executed in check mode but omit it when not in check mode in favor
of the `results` data which is raw output from the yum command. This
pull request makes that output uniform.

Fixes #51724

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-02-13 17:46:32 -05:00
おすし
c2a409a9e0 Fix: Yum module does not use proxy when username is not set #51548 (#51994)
* add test of yum with proxy

* Properly handle unauthenticated yum proxy config

Fixes #51548

* shell executable is bash
2019-02-13 14:10:47 -05:00
Adam Miller
2721ed260e Properly handle unauthenticated yum proxy config (#51915)
Fixes #51548

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-02-09 01:17:22 -05:00
Jordan Borean
c1e51ef486 Use common functions for handling import errors (#51851)
* Use common functions for handling import errors

* use refactored version of gitlab modules
2019-02-07 16:51:16 -05:00
Martin Krizek
33b07f322c
yum: disableexcludes is supported on centos6 (#51698)
* yum: disableexcludes is supported on centos6

* Add changelog
2019-02-05 18:18:56 +01:00
tatref
b682381d1d Update "yum group list" command (#51743) 2019-02-05 16:23:01 +00:00
Adam Miller
61ed229732 dnf load substitutions from installroot (#51206)
Fixes #51059

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-01-29 15:10:53 -05:00
Kairo Araujo
55f0cfb2b8 New module: installp for AIX packages (#30238)
* Included module installp for AIX packages

This module works with installp AIX packages.
With this module is possible manage (install and remove) native
AIX packages using simple playbooks.

* Included module installp for AIX packages

This module works with installp AIX packages.
With this module is possible to manage (install and remove) native
AIX packages using simple playbooks.

* Fixed variable for installp parameters and docs

Followed the comments for merge
- changed variable for installp params
- doc for name and multiple packges using comma

* Replaced manual split to a list according argument_spec

Changed manual split for module.params["name"] to argument_spec

* Fixed PEP8 space after operator

Fixed PEP8 space after operator

* improved package verification and pep8

- improved package/fileset verification on AIX before to take
actions to remove or install
- Applied PEP8 and non-written conventions
- better comments and documentation

note: even If the package is already installed, even the
package/fileset is new, the module will not install it.
On AIX it is not recommended because it can break your
OS version with missen filesets.

* applied single/double quotes convention.

applied single/double quotes convention.

* Package name 'all' allowed as AIX command line

- Allowed use 'name'  as all such as AIX allows
- Removed 'global' varible regarding licence that is used
only by install()

* Documentation format issue

E302 DOCUMENTATION is not valid YAM

* Required (cosmetic) changes and improvements

* Small changes

* Silly PEP8 fixes

* Fix underscore variable
2019-01-28 16:29:46 +01:00
Dag Wieers
d2c739e9e7 A few small cosmetic changes 2019-01-22 20:03:03 -05:00
Julian Paul Dasmarinas
0622f387c4 Provide a boolean switch to enable/disable publisher refresh 2019-01-22 20:03:03 -05:00
Martin Krizek
9ec9f18b13 dnf: allow to operate on file paths (#51080)
Fixes #50843
2019-01-21 17:20:27 -05:00
Daniel Jaouen
c9bc47b354 homebrew_cask - add sudo_password parameter(#46471)
* Fixes #29403: homebrew_cask: Add SUDO_ASKPASS to module.run_command

* homebrew_cask: refactor sudo_password code

* homebrew_cask: more refactoring

* homebrew_cask: use %s instead of string addition
2019-01-21 10:15:40 -05:00
Manuel Molina Cuberos
3b5ac77a16 Preventing '/dev/tty not found' problems (#49950)
* Preventing '/dev/tty not found' problems when ' apt_repository` calls GPG in order to import keys.
2019-01-14 15:38:54 -05:00
Jordan Borean
b967f4dcc1 dnf/yum - added install_weak_deps option (#50525)
* dnf/yum - added install_weak_deps option

* skip creating weak dep packages if rpm doesn't support it

* fix rpm check for older hosts
2019-01-04 11:37:59 -05:00
Jordan Borean
63e454a4b2 dnf - fix conf_file loading (#50515) 2019-01-03 15:25:58 -05:00
Adam Miller
ca084889c7 fix order of dnf api operations so transactions don't fail (#50038)
* fix order of dnf api operations so transactions don't fail

Previously dnf.base.fill_sack() was called before
dnf.base.update_cache() which apparently breaks dnf transaction
logic as per https://bugzilla.redhat.com/show_bug.cgi?id=1658694

Fixes #49060

Signed-off-by: Adam Miller <admiller@redhat.com>

* add changelog and test case

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-01-02 17:50:06 -05:00
Dag Wieers
84210e6b17
Fix typo 2018-12-21 22:49:08 +01:00
John R Barker
69abf984a1 Remove incorect author (#50191) 2018-12-20 07:22:30 -05:00
Dag Wieers
05c6ff79f9 Convert to reduced list of known types (#50010) 2018-12-19 07:25:30 +10:00
Michael Scherer
2734895c48 Do switch to apt if aptitude is not installed (#30738)
Trying to use the apt module on a freshly install 16.04 Ubuntu VM with
"ansible -m apt -a 'name=* state=latest' all" fail with this backtrace:

  Traceback (most recent call last):
    File \"/tmp/ansible_2inxygge/ansible_module_apt.py\", line 1055, in <module>
      main()
    File \"/tmp/ansible_2inxygge/ansible_module_apt.py\", line 998, in main
      upgrade(module, 'yes', force_yes, p['default_release'], use_apt_get, dpkg_options)
    File \"/tmp/ansible_2inxygge/ansible_module_apt.py\", line 759, in upgrade
      apt_cmd_path = m.get_bin_path(apt_cmd, required=True)
    File \"/tmp/ansible_2inxygge/ansible_modlib.zip/ansible/module_utils/basic.py\", line 2182, in get_bin_path
    File \"/usr/lib/python3.5/posixpath.py\", line 89, in join
      genericpath._check_arg_types('join', a, *p)
    File \"/usr/lib/python3.5/genericpath.py\", line 143, in _check_arg_types
      (funcname, s.__class__.__name__)) from None
    TypeError: join() argument must be str or bytes, not 'NoneType'

It seems that since aptitude is not installed on Xenial, so APTITUDE_CMD is None
and we later hit the bug in the upgrade function since it assume APTITUDE_CMD
is set.
2018-12-18 12:48:11 -05:00
Toshio Kuratomi
3fba006207 Update bare exceptions to specify Exception.
This will keep us from accidentally catching program-exiting exceptions
like KeyboardInterupt and SystemExit.
2018-12-16 15:03:19 -08:00
Adam Miller
0eabb8097b
Fix yum/dnf handling of URIs that don't end in .rpm (#49912)
Fixes #49727

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-12-14 13:44:40 -06:00
Giuseppe Mancuso
d29f647f09 issue with activation_key and proxy on subscription-manager (#42624)
* Update redhat_subscription.py

I need to use a proxy server/user/password also if I user an activation_key

* remove spaces
2018-12-14 12:27:58 -05:00
Greg Hellings
af5d84b70b Properly report install failures from dnf module (#49760)
Reporting of install failures was improperly guarded behind a list of
packages to install when the first element changed in a list was found.
This lead to the dnf module silently failing at times when it should not
fail.

Fixes issue 49759
2018-12-13 05:22:53 -05:00
Richlv
46d2a3eddc Update rhsm_repository.py (#49480)
typo fixes
2018-12-12 13:37:11 -06:00
WhyIsThisOpen
7bdca72713 rhn_register fixes for username and password when unregistering
- Require username and password for unregistering and avoid "cannot marshal None unless allow_none is enabled" error when using an activation key and no channels specified.
- Update test fixtures and add changelog


Co-authored-by: WhyIsThisOpen <WhyIsThisOpen@users.noreply.github.com>
2018-12-12 11:32:48 -05:00
James Tanner
b6220ce16a rhn_channel lacks sufficient testing and supportability 2018-12-07 11:13:19 -08:00
Sam Doran
3d5d0d355f Add purge feature to rhsm_repository (#48123)
This feature makes it easy to enforce exactly which repos are enabled on a managed system without the need for multiple tasks.
2018-12-07 11:53:42 -05:00
Alexander Bethke
27fd8e4dc6 Fix two regressions in flatpak and flatpak_remote modules (#49651)
* Fix python 3 compatibility in flatpak_remote module

* Fix flatpak module for recent versions of flatpak

* Add reminder for contributors to run integration tests manually

There has been several Python version compatibility regressions
introduced into the module which could have been avoided by the
integration tests.
2018-12-07 11:38:42 -05:00