Commit graph

57 commits

Author SHA1 Message Date
James Cammarata
8afa090417 Resolving differences in core modules post-merge 2016-12-08 11:25:36 -05:00
Toshio Kuratomi
7319104552 Refreshed metadata for core modules 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
8ae7d2dcc4 Unquote urls in YAML - packaging (#5793) 2016-12-08 11:25:34 -05:00
Dag Wieers
54fdff16db Performance improvement using in-operator on dicts
Just a small cleanup for the existing occurrences.

Using the in-operator for hash lookups is faster than using .keys()
http://stackoverflow.com/questions/29314269/why-do-key-in-dict-and-key-in-dict-keys-have-the-same-output
2016-12-08 11:25:31 -05:00
Sam Doran
4c93d3edf0 Change example syntax on yum module 2016-12-08 11:25:30 -05:00
jctanner
019acfa9b0 Correct the handling of state=latest for yum groups. (#4141)
* Correct the handling up state=latest for yum groups.
* Use yum-deprecated when available

Fixes #4119
2016-12-08 11:25:27 -05:00
Matt Martz
08ce50c2b3 If fetch_url failed to download the URL fail early with a proper error message. Fixes #5474 (#5476) 2016-12-08 11:25:26 -05:00
Filip Hubík
9a2d8337f2 Fix incorrect line wrapping in output from yum check-updates
https://github.com/ansible/ansible-modules-core/issues/4318#issuecomment-251416661
2016-12-08 11:25:22 -05:00
Dag Wieers
858d02ac4c Ensure yum failures in with-loop result into a failed task
The implementation is fairly simple, we force the rc= parameter to not be zero so that the check in _executor/task_result.py_ correctly determines that it failed. Without this change Ansible would report the task to be ok (despite failed=True and msg=Some_error_message) although Ansible stops and the summary output reports a failed task.

This fixes #4214, #4384 and also relates to ansible/ansible#12070, ansible/ansible#16006, ansible/ansible##16597, ansible/ansible#17208 and ansible/ansible#17252
2016-12-08 11:25:21 -05:00
John Barker
bca8bbe7c2 Correct functional typos 2016-12-08 11:25:19 -05:00
Will Thames
10af591da2 Check whether yum file or URL install is an upgrade (#4547)
Rather than just checking whether a package with the right
name is installed, use `local_nvra` to check whether the
version/release/arch differs too.

Remove `local_name` as it is a shortcut too far.

Fixes #3807
Fixes #4529
2016-12-08 11:25:11 -05:00
jctanner
4480b8d37f Cleanup unused variable in yum.py (#4009) 2016-12-08 11:24:40 -05:00
jctanner
17ebf51bd4 Add local and url support to yum state=latest (#4003)
Fixes #3807
2016-12-08 11:24:39 -05:00
Michael Scherer
b8175f70ce Convert packaging/* to py3/py2.4 syntax (#3702) 2016-12-08 11:24:30 -05:00
Strahinja Kustudić
db45268b75 Yum module always downloads remote rpms. fixes #1452 2016-12-08 11:24:14 -05:00
toshihisa
7fee8a78c9 One more bug yum non English locales
d7fac82f97
2016-12-08 11:24:12 -05:00
Toshio Kuratomi
f4c9c4596f Fix for yum's use of rpm with non English locales
Depends upon https://github.com/ansible/ansible/pull/14025

Fixes https://github.com/ansible/ansible/issues/13996
Fixes https://github.com/ansible/ansible/issues/13975
2016-12-08 11:24:00 -05:00
Albert Mikaelyan
a61095b0b1 Update yum.py 2016-12-08 11:23:59 -05:00
Toshio Kuratomi
687257bd62 Use rpm instead of repoquery for is_installed()
* This keeps us from hitting bugs in repoquery/yum plugins in certain
  instances (#2559).

* The previous is also a small performance boost

* Also in is_installed(), when using the yum API, return if we detect
  a package name has been installed.  We don't need to also check
  virtual provides in that case.  This is another small performance
  boost.

* Sort the list of packages returned by the list parameter.
2016-12-08 11:23:52 -05:00
Veaceslav Mindru
fa98f55c44 fix typo s/defaults/default 2016-12-08 11:23:52 -05:00
Daniel Kimsey
a8f7fda210 Fix yum module failing to initalize yum plugins 2016-12-08 11:23:51 -05:00
Veaceslav Mindru
0f456d7e61 adding validate_certs for YUM. #2582 2016-12-08 11:23:50 -05:00
Charles Ferguson
3969bba771 Update documentation of the 'pkg' and 'state' parameters in yum.
The yum module allows the 'name' parameter to be given as 'pkg', in
a similar way to some of the other package managers. This change
documents this alias.

The module's 'state' parameter has two other aliases, in line with
the 'apt' action; the 'state' parameter can take 'installed' as an
alias for 'present', and 'removed' as an alias for 'absent'. These
aliases are documented.
2016-12-08 11:23:49 -05:00
Toshio Kuratomi
5425f3e757 Correct typo in yum module docs 2016-12-08 11:23:44 -05:00
Toshio Kuratomi
5f87f9deda Note the difference between yum package groups and environment groups.
Fixes https://github.com/ansible/ansible/issues/12873
2016-12-08 11:23:44 -05:00
Toshio Kuratomi
2c378cc78a Fix for state=latest with wildcard or virtual provide package names 2016-12-08 11:23:40 -05:00
Brian Coca
d55ba3ab7c removed syslog in favor of common module logging functions 2016-12-08 11:23:38 -05:00
Toshio Kuratomi
1102afed43 Fix for the case where plugins aren't loaded on old RHEL systems 2016-12-08 11:23:32 -05:00
Toshio Kuratomi
77457feda6 Return change results in a dictionary listing the package names.
Fix a parsing problem when package names contain a dot.
2016-12-08 11:23:32 -05:00
queridiculo
92615669c0 yum: improved check_mode handling and package update flow. 2016-12-08 11:23:29 -05:00
Toshio Kuratomi
05be82183f Add notes about loop squashing and 1.9.2 change to install packages in one yum transaction 2016-12-08 11:23:19 -05:00
Toshio Kuratomi
bd87c11c2a Read the url in in chunks so that we don't use as much memory for large packages 2016-12-08 11:23:11 -05:00
Toshio Kuratomi
88ae201b20 Fix bugs found by @kustodian 2016-12-08 11:23:09 -05:00
Toshio Kuratomi
f0f1dc985f Fix incorrect line breaking 2016-12-08 11:23:09 -05:00
Toshio Kuratomi
9f043d9ba8 Further optimizations pointed out by @kustodian in #1516
* Only install yum-utils if needed (b/c we're going to use repoquery)
* Add a warning message explaining that why slower repoquery was used
  rather than yum API.
2016-12-08 11:23:08 -05:00
Toshio Kuratomi
ba566501a8 Yum API is faster than calling out to repoquery. Looking through the commit logs it looks like we weren't previously doing that because of commit 14479e6adc
The message there is that Yum API prints an error message if the
rhn-plugin is in use and no rhn-certificate is available.  So instead of
using repoquery in preference always here we use repoquery in preference
if the rhn-plugin is enabled.
2016-12-08 11:23:08 -05:00
Toshio Kuratomi
ada424078b Restore setting cachedir when non-root but don't take a useless cachedir parameter to the function
* Revert "Remove unused code"
  This reverts commit bcfba0c05098696b6e770335870a9c22792fec38.
* Re-add the changes to remove cachedir as a parameter
2016-12-08 11:23:08 -05:00
Greg DeKoenigsberg
eb881d7d5d Proper author info for all remaining modules 2016-12-08 11:23:07 -05:00
Edward Torbett
3a4d8f22a6 Renamed previous pkgs variable to installed_pkgs as spotted by @strahinja 2016-12-08 11:23:06 -05:00
Edward Torbett
dad26d70fa Corrected pkg to pkgs as noted by @abadger 2016-12-08 11:23:06 -05:00
Edward Torbett
9707a5a95e Added multi package operation to remove as suggested by @abadger. Adding to latest is a little more complex due to '*' support. 2016-12-08 11:23:06 -05:00
Edward Torbett
32180c3c0e Comments by @abadger 2016-12-08 11:23:06 -05:00
Edward Torbett
4b3fff108d Rather than executing yum once per package, execute yum once for all supplied packages. This is necessary when performing a yum upgrade involving multiple dependent packages installed from RPM, for example when upgrading from PostgreSQL 9.0.11 to 9.0.21 on a Red Hat server. 2016-12-08 11:23:06 -05:00
Toshio Kuratomi
8976b46888 Import ansible module_utils at bottom of file to not mess with line numbers in tracebacks 2016-12-08 11:23:02 -05:00
Jonathan Mainguy
a3f30540ca add :// url support for EL 5 2016-12-08 11:23:02 -05:00
Zoltan Kozma
1a6b273a4f - Fixed annoying bug that disablerepo was essentially broken if a package needed updating by state latest. - Replaced some unsafe practice with default parameters. However looking at the code this does not seem to matter much as the calling functions always seem to supply these parameters anyway. 2016-12-08 11:23:00 -05:00
Jonathan Mainguy
f662a48de7 Adds the exclude= option to the yum module. Works the same way --exclude does when yum install or yum update 2016-12-08 11:22:57 -05:00
Toshio Kuratomi
9133ae8c55 Allow yum module to take a yaml list of package names and also ", " separated string-list (in addition to comma separated string-list) 2016-12-08 11:22:55 -05:00
Brian Coca
b6e3ddba9a ifxed error message as code remove the repo r var 2016-12-08 11:22:54 -05:00
David Wittman
be0d28a4ac Set disabled repos before enabled repos
The ordering of disabling/enabling yum repositories matters, and
the yum module was mixing and matching the order. Specifically,
when yum-utils isn't installed, the codepath which uses the yum
python module was incorrectly ordering enabling and disabling.

The preferred order is to disable repositories and then enable them
to prevent clobbering. This was previously discussed in
ansible/ansible#5255 and incompletely addressed in 0cca4a3.
2016-12-08 11:22:53 -05:00