Commit Graph

622 Commits (63e33f7e71622c47318f7c5c240cbabfcd8b333a)

Author SHA1 Message Date
Jiri Tyr 000387ac23 Fix default value of gpgcheck in doc (PR #36267) 2018-02-20 13:47:12 +01:00
Sviatoslav Sydorenko 2ce1009c04
Fix portage mod usage of jobs and load-average opt
In short, it enables portage module to emit emerge
command with --jobs and --load-average options
with and without argument.

To emit emerge with such CLI argument without
a value, the user must set the corresponding
module option to 0.

By default, if these arguments are missing from
playbook they are omitted.

Misc changes:

* Use to_native to ensure crosspython compat

* Adjust jobs and LA options to accept 0 as reset

* Add docstring to emerge_packages

* Explicitly note in doc that False will work as 0

PR  #36355 by @webknjaz
2018-02-20 13:04:10 +01:00
Sviatoslav Sydorenko 3a097063d9 Drop duplicate imports from apt_repository module (#36320)
* Drop duplicate imports from apt_repository module
* Drop json import from apt_repository module
2018-02-17 16:33:12 +05:30
Anwesha Chatterjee d2ac7ace01 Add information on the various package states (#35882) 2018-02-16 14:22:49 +05:30
Daniel Jaouen 33cbbe0b39 Homebrew Cask: Multiple updates (#35759) 2018-02-08 11:00:06 -05:00
Sam Doran 6264a55cdc Add aliases for parameters to rhsm_repository module (#35800)
Allow 'enabled' and 'disabled' as synonymns to 'present' and 'absent'.

Minor updates to module docs.
2018-02-08 14:13:47 +01:00
Martin Krizek e2c0865800 redhat_subscription: do not use defaults from the conf file (#33763)
* redhat_subscription: do not read defaults from the rhsm.conf file, let subman provide those.

* Only pass options specified by user to the config
2018-02-07 10:18:58 -05:00
Toshio Kuratomi a5b80464df Fix packaging/os modules for wildcard imports and get_exception 2018-02-06 08:44:49 -08:00
Abhijeet Kasurde 6bd0fbb63c Remove deprecated get_exception API
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-02-05 23:39:56 -05:00
Giovanni Sciortino b4736a8741 Add rhsm_repository module (#28292)
Add rhsm_repository module
2018-01-22 12:42:29 -05:00
tdtrask 676ce74cbf apk: Fix package dependency bugs (#34419)
Fixes: #34325, #35062
2018-01-18 17:20:14 -05:00
John R Barker 195beebcb4
Module DOCUMENTATION should match argspec (#34895)
* Module DOCUMENTATION should match argspec

Large update of many modules so that DOCUMENTATION option name and
aliases match those defined in the argspec.

Issues identified by https://github.com/ansible/ansible/pull/34809

In addition to many typos and missing aliases, the following notable
changes were made:

* Create `module_docs_fragments/url.py` for `url_argument_spec`
* `dellos*_command` shouldn't have ever had `waitfor` (was incorrectly copied)
* `ce_aaa_server_host.py` `s/raduis_server_type/radius_server_type/g`
* `Junos_lldp` enable should be part of `state`.
2018-01-16 12:18:51 +00:00
Matt Martz dcc05093db Validate modules arg spec fixes (#34477)
* Update validate-modules arg_spec introspection to be faster, by only mocking the imports we explicitly list
* The use of types.MethodType in redhat_subscription wasn't py3 compatible, use partial instead
* Remove argument_spec import hacks, make them errors, we can ignore them with ansible-test
* Enable the --arg-spec flag for validate-modules
2018-01-11 15:41:53 -08:00
Abhijeet Kasurde f84f386ea7 yum: Add example for enable and disable repo (#34492)
Fixes: #29897

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-10 09:51:00 -08:00
Matt Clay 232dc7110c Fix Python 3.7 syntax error in yum_repository. 2018-01-09 17:54:10 -08:00
Abhijeet Kasurde b14c8b130f yum: handle exception in local_envra (#34400)
This fix adds rpm.error exception which is raised when
API unable to get envra information from RPM package.
Also, adds integration test for local_envra method.

Fixes: #30074

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-09 12:28:55 +01:00
Abhijeet Kasurde daae4d922a Add missing msg keyword for fail_json (#34387)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-03 04:44:53 -05:00
Martin Krizek 3681d0e3e0
yum: support installroot in is_group_env_installed (#34182) 2018-01-02 12:42:53 +01:00
Abhijeet Kasurde d1b63bd5ef yum: Add option for enable and disable plugin (#34306)
This fix adds parameter to enable and disable plugins for yum
command.

Fixes: #30016

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-02 12:37:02 +01:00
Robin Roth fcd3db27f9 Add comment on auto_import_key for .repo files in zypper_repository (#33941)
Fixes #32375
2017-12-22 01:05:47 -05:00
Abhijeet Kasurde bc91258124 apt_get: add warning for force_apt_get (#33994)
This fix adds strict check for package manager binary checking in given
path.

Fixes: #32940

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-19 22:39:15 -06:00
Toshio Kuratomi 120af786af Remove params option from examples 2017-12-19 12:04:14 -08:00
Adam Miller 6cb388a98a New Module: package_facts (#33195)
* new package_facts module

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>

* remove package_facts pkg manager aliases, they are misleading

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>

* fix package_facts tests now that aliases are dropped

Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-12-14 13:47:47 -05:00
Martin Krizek 7170751703 redhat_subscription: remove python2.4 compat (#33762)
* Replace get_exception with native error handling.
2017-12-12 07:19:08 +05:30
John Barker c57a7f05e1 Bulk autopep8 (modules)
As agreed in 2017-12-07 Core meeting bulk fix pep8 issues

Generated using:
autopep8 1.3.3 (pycodestyle: 2.3.1)
autopep8 -r  --max-line-length 160 --in-place --ignore E305,E402,E722,E741 lib/ansible/modules

Manually fix issues that autopep8 has introduced
2017-12-07 20:25:55 +00:00
Dag Wieers af59817850 pkg5: PEP8 compliancy and documentation changes (#33559)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-05 07:56:16 -05:00
Dag Wieers aec8e7784a urpmi: PEP8 compliancy and documentation changes (#33560)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-05 03:32:58 -05:00
Dag Wieers ff50b7893c
rpm_key: PEP8 compliancy and documentation changes (#33426)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-04 13:30:27 +01:00
Dag Wieers fbfeeff6bf
apt_repository: PEP8 compliancy and documentation changes (#33429)
* apt_repository: PEP8 compliancy and documentation changes

This PR includes:
- PEP8 compliancy changes
- Documentation changes

* Fix merge issue
2017-12-04 13:29:23 +01:00
Dag Wieers c4ef5bb922
apt_key: PEP8 compliancy and documentation changes (#33427)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-04 13:27:32 +01:00
Dag Wieers 2416a8806d apt: PEP8 compliancy and documentation changes (#33425)
This PR includes:
- PEP compliancy changes
- Documentation changes
2017-12-03 17:14:49 +01:00
Dag Wieers 5b5d767c0b apt_rpm: PEP8 compliancy and documentation changes (#33431)
This PR includes:
- PEP8 compliancy changes
- Documentation changes
2017-12-01 08:19:35 -05:00
Andy Nguyen 89b65e81d1 fix typo in failure message (packaging/apt) (#33444) 2017-12-01 07:42:59 +01:00
Dag Wieers e0c94aa6a7 yum: PEP8 compliancy and documentation changes (#33424)
This PR includes:
- PEP8 compliancy changes
- documentation changes
2017-11-30 13:32:05 -05:00
Matt Clay 9735a70059 Fix invalid string escape sequences. 2017-11-21 20:59:08 -08:00
Brian Coca 8e56133b3d
updated docs to reflect list/loop lack of sqashing (#32522)
* updated docs to reflect list/loop lack of sqashing

* fix dnf

* line len
2017-11-20 10:16:19 -05:00
Martin Krizek 4c58ad1266 pacman: fix closing parenthesis (#32783) 2017-11-10 09:52:40 -05:00
Jiri Tyr 1a3037ff63 Making options of type list (fixing #32704) (#32706) 2017-11-09 10:57:27 -05:00
Martin Krizek 356901b72d yum: case for multilib when installing from a file (#32236) 2017-11-09 06:04:53 -05:00
Martin Krizek 38444bb76c yum: the rpm command requires newline in --qf (#32244) 2017-11-09 05:41:47 -05:00
Toshio Kuratomi facbf7f14d
Remove the params option from jenkns_plugin and yum_repository (#32708)
* Remove the params option from jenkns_plugin and yum_repository

It was decided that these options which override Ansible module options
from a generic, unchecked dict are an antipattern for Ansible Modules
and must be removed:

https://meetbot.fedoraproject.org/ansible-meeting/2017-09-28/ansible_dev_meeting.2017-09-28-15.00.log.html

Fixes #30874
2017-11-08 13:59:59 -08:00
tdtrask 760ea4b49e apk: Override system repositories (#32689)
Override system repositories when repository option is specified. This fixes inconsistencies when using check mode.
2017-11-08 11:13:56 -05:00
Martin Krizek a8ab1a0b20 yum: use the C locale when screen scraping (#32203) 2017-11-05 09:28:05 -05:00
akatch ea2afc6ebc Fixes #32092 (#32412)
* Fixes #32092

* Linter fix
2017-11-02 08:54:11 +10:00
Brian Coca 43714a0091 corrected package docs 2017-10-31 15:31:42 -04:00
Martin Krizek ee6ba5d590 yum: allow for downgrade using rpm file (#31647) 2017-10-24 14:33:38 +02:00
James Molet 42deaf2c71 updating argument validation for activation keys to match subscription-manager command line, fixes #27283 (#30236) 2017-10-13 08:59:49 -04:00
Martin Krizek 24c360287e yum: fix crashes installing from file/url 2017-10-10 11:39:47 -07:00
Brian Coca 9a8055a8e5 add note on how to avoid service start in apt 2017-10-10 09:24:09 -04:00
Lukas Bednar 5ccc1072ea [rpm_key] Fix to import first key on the system (#31514)
* [rpm_key] Fix to import first key on the system

Fixes: #31483

* [rpm_key] removed unsafe_shell and "throwaway" underscore

* [rpm_key] adding test to add the first key on system
2017-10-10 13:31:20 +02:00
Brian Coca adcd185273 version is string and should be 2.9 2017-10-09 12:15:56 -04:00
Sebastien Boyron 6b34dc788a [feat] module apt: add warning on deprecated states 2017-10-09 12:14:36 -04:00
Martin Krizek 13631ececa yum: check if env groups are installed (#31182) 2017-10-09 06:01:34 -04:00
Eduardo Suarez-Santana 4337b7a777 Fix rpm_key absent. (#31045)
When keyid is 8 charactes long, drop_key function cuts everything
issuing an error: "package gpg-pubkey- is not installed"
2017-10-05 14:45:14 +02:00
Martin Krizek 115b4fdc9b yum: fix name parsing out of envra (#31247) 2017-10-04 20:48:00 +02:00
Stephen 9c6ad3d076 Add update_only parameter for yum module (#22206)
* Add update_only parameter for yum module

When using latest, `update_only: yes` will ensure that only existing
packages are updated and no additional packages are installed.

* Update yum.py

Update version added for `update_only` parameter to 2.5

* add unit tests for update_only flag in yum module
2017-10-04 10:25:13 +02:00
Dag Wieers 17fbeeb2f0 rhn_channel: PEP8 compliancy and doc fixes (#30912)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-10-03 09:50:44 +02:00
Sebastien Boyron af3e8950d6 [fix] issue #30516 : take care about autoremove in upgrade function 2017-10-02 16:19:55 -04:00
Dag Wieers 4832b9a2d2 yum: doc fixes (#30897)
This PR includes:
- Documentation fixes
2017-09-28 12:57:21 +10:00
Dag Wieers fd91da7297 pacman: PEP8 compliancy and doc fixes (#30913)
This PR includes:
- PEP8 compliancy fixes
- Documentation fixes
2017-09-27 03:13:18 -04:00
Martin Krizek 55739c1e46 redhat_subscription: replace deprecated autosubscribe (#30927) 2017-09-27 02:33:00 -04:00
Martin Krizek 8b416abb49 Allow for creating yum repo based on metalink only (#30736) 2017-09-22 13:44:26 +02:00
Martin Krizek cca4f94736 Mention all yum list options in docs (#30706) 2017-09-21 19:11:53 +02:00
Jiri Tyr 962528f511 Make clear the file must not contain .repo (fixes #30644) (#30656) 2017-09-21 19:11:07 +02:00
Hervé Beraud b8e21bca46 [fix] sanity check errors on pylint 2017-09-20 17:38:55 -07:00
Moshe Shitrit 7da69a23e6 Added nopackages option and Fix #24997 (#28831)
* Added nopackages option and Fix #24997
Adding a new option - nopackages.
This enables the option to add the --nopackages flag while registering a new node to RHN Satellite. We are not uploading the rpm data on our nodes and since we started utilizing ansible for nodes registration, I figures it would be useful for others as well.
Also-
Fixes #24997 (verified in my lab)

* Fixed documentation

* Documentation changes:
- typo fix in "default"
- Added "version_added" and set to 2.4

* Documentation changes:
- Removed trailing whitespaces in nopackages['version_added']

* This change is unrelated for this feature pull request and shouldn't be here (and also seems wrong, see #25079).

* Changed "version_added" to 2.5 in the module docs
2017-09-15 10:50:47 -04:00
Martin Krizek 59702318e1 yum: fallback to epoch=0 if not available 2017-09-12 13:30:35 -07:00
Martin Krizek d52316fcc2 yum cleanup (#28818) 2017-09-12 06:59:15 -04:00
Martin Krizek de299ef77c dnf: fix TypeError when env/group failed 2017-09-11 09:16:39 -07:00
Martin Krizek f31696f77f yum: do not use get_exception() (#28826)
Python 2.4 support was dropped in Ansible 2.4.
2017-08-31 13:47:16 -04:00
Dag Wieers effa5085ca Remove trailing whitespace 2017-08-31 12:34:59 +02:00
Dag Wieers 1c140cd90d More changes. 2017-08-31 12:34:59 +02:00
Andreas Olsson f2c0969d27 Clarify the apt_key module's absent state behavior
Currently the apt_key module only supports removing keys based on
explicitly stated key ids. The documentation should reflect that.

Related to #26005
2017-08-31 12:34:59 +02:00
ppanczyk c9b74a3af3 Fixed 'only_upgrade' so that the status was not always 'changed' (#25213) 2017-08-30 14:46:52 -04:00
Martin Krizek e4ea999e6d yum: use envra instead of nevra (#28284) 2017-08-29 13:26:42 -04:00
René Moser c97f4653be fix typos in various modules and docsite (#28747) 2017-08-29 17:59:41 +02:00
Martin Krizek 98b19f0623 yum: fix changed in group remove 2017-08-29 11:48:29 -04:00
Dag Wieers a1876bac9c pkg5_publisher: Fix on failed, PEP8 compliancy (#26019) 2017-08-27 00:30:05 +02:00
René Moser fbcf6e23af yum: fix state=latest (#28547) 2017-08-23 10:22:16 +02:00
Martin Krizek 711ae03845 yum: fix reporting group changes in check_mode (#28331) 2017-08-22 16:35:23 -04:00
Martin Krizek c59f3f841e yum: remove duplicite code introduced in d1fa210be (#28511) 2017-08-22 22:03:50 +02:00
Dag Wieers 78dfbed2a5 openbsd_pkg: Fix when failed, PEP8-compliant (#26018)
This PR includes:
- PEP8 compliancy
- A fix to ensure the module fails when it failed for a package
- Various cosmetic changes to documentation
- Make `state: present` the default (and not required)
2017-08-17 18:20:02 -04:00
Martin Krizek bcb9644f39 yum: cover "Nothing to do" not only for groups (#28283) 2017-08-16 17:24:51 +02:00
Toshio Kuratomi f203ca7907 Update metadata to 1.1 2017-08-15 23:12:08 -07:00
Jiri Tyr 1b8fe94e5a Support list for baseurl and gpgkey params in yum_repository (fixes #24948) (#24967)
* Support list for baseurl and gpgkey params in yum_repository

* Adding tests
2017-08-15 11:51:33 -04:00
René Moser d1fa210bed yum: using install to update specified packages (#26266)
* yum: using install for update packages

* yum: fix return changed when latest version installed

* yum: fix changed when nothing to do
2017-08-15 16:20:10 +02:00
Arne Demmers 000df2709d Support downgrade to specific version in yum module. 2017-08-14 04:55:39 -07:00
Pierre-Louis Bonicoli dbc422ea1c Fix 'module' object is not callable 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli f9404b0d85 Fix exit_json usage: really call client.auth.logout 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli b556def4d3 Update DOCUMENTATION metadata 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli ac05645bce Remove commented statements 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli f761fc1d1f rhn_channel: fix py3 compatibility (use six)
and remove unused import
2017-08-12 10:21:14 -07:00
Philip Gough fee42a01d9 Redhat subscription proxy support (#22544) 2017-08-10 20:26:57 +02:00
Martin Krizek 1c4e491eac yum: do not hide yum's errors (#27696) 2017-08-10 13:57:08 -04:00
Valentin Krasontovitsch cfff72e9db Use apt-get as fallback for apt upgrade
In answer to #2540, `aptitude` was introduced as tool of choice for running
upgrades in the apt module and installing new packages that arise as
dependencies during upgrades.

This recently lead to problems, as for example Ubuntu Xenial (16.04) ships
without aptitude (installed).

Studying the man pages of both apt-get and aptitude, it appears that we can
achieve the effects of `aptitude safe-upgrade` using

```
apt-get upgrade --with-new-pkgs --autoremove
```

while `aptitude full-upgrade` seems to be identical to `apt-get dist-upgrade`.

We use `apt-get` as described above as a fall-back in case that `aptitude`
cannot be found, issuing a warning when it does so.

Furthermore it introduces a flag `force_apt_get` which may be used to enforce
usage of apt-get (which does not issue a warning).

The integration tests are updated accordingly.

Cf. also the discussion in #27370.

Fixes #18987
2017-08-10 09:25:56 -04:00
schwatvogel b8d371ca8b Fixes #23558 rpm key ids (#27847)
* Changed rpm-keyid extraction and verification method
* minor style fixes
* fixed rpm key deletion,added integration test for mono key,fixed wording in integration tests
2017-08-08 11:56:03 -07:00
Toshio Kuratomi 43f6a97bdc Fix security documentation to note it only works in conjunction with state=latest 2017-08-07 23:11:55 -07:00
Abhijeet Kasurde d3fe598202 [WIP] Add security option in yum module
Fix adds option to specify security updates in yum module

Fixes #11498

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-07 23:05:00 -07:00
Will Thames 2276c5f206 apt: Update cache if cache_valid_time is set (#27618)
It's not clear from the docs whether you need to set `update_cache`
when using `cache_valid_time`.

Setting `cache_valid_time` should imply `update_cache`. Update docs
to reflect this.
2017-08-07 14:36:51 +02:00
Nicolas Porcel fa6ce54011 Fix yum with rpm file or url when state=latest (#27775) 2017-08-07 10:48:30 +02:00
Nicolas Porcel 616d5ddc93 Clean downloaded rpm files after install (#20594) 2017-08-07 09:17:49 +02:00
Pilou b57af4428d rhn_register: fix broken imports, add unit tests (#26878)
Fix 'module' object is not callable

* rhn_register: fix Python 3 compatibility
* rhn_register: update requirements
* rhn_register: add unit tests
* Add missing method name
* use a dedicated line for XML related requirements
* rhn_register: drop support for Python 2.4
* rhn_register unit tests: fix Python 3 compatibility
* refactor in order to check order of the requests
2017-08-04 10:12:27 -04:00
Pilou 96784160b1 rhn_register: call logout (#27533)
* missing requirement: list sufficient pkgs in error

* rhn_register: call logout when necessary

* rhn_register: remove useless return, small rewrite
2017-08-03 15:05:59 -04:00
Dmitry Telegin 6841763d70 Support install root in URPMI module. Fixes #23475 2017-08-03 11:35:33 -07:00
Toshio Kuratomi e992e4f436 Add missing copyright header in modules cleaned up yesterday 2017-08-02 09:53:28 -07:00
Robin Roth b134352d8c WIP: Replace boilerplate (#27554)
* Replace boilerplate

* Enable test on packaging/os
2017-08-01 14:37:37 -07:00
Martin Krizek 19d119f43c Pass server_hostname from task to subscription-manager (#27420) 2017-07-31 09:15:15 -04:00
Martin Krizek 119c9e5d6e Fix using DNF group upgrade/remove api 2017-07-26 07:39:26 -07:00
Toshio Kuratomi 225fa5d092 Fix undefined variables, basestring usage, and some associated python3 issues 2017-07-25 15:58:23 -07:00
Jason Tibbitts ccce74cf7b Avoid using deprecated group_install API
DNF's base.group_install() function accepts a string as its first
argument.  Prior to DNF-2, compatibility code existed which allowed this
function to accept a base.comps.Group object instead.  That is no longer
possible.

Pass "group.id" to base.group_install() instead of "group" to work
around this.
2017-07-25 15:34:22 -07:00
TSDominguez b9a2dc979f Add dist-upgrade and extra_args to zypper module (#21313)
* Implement state='dist-upgrade'

Implements `zypper dist-upgrade` for the zypper module. This follows
how `zypper upgrade` is invoked, except `state='dist-upgrade'`.

Setting name to anything other than '*' would cause the module to error
out. `dist-upgrade` affects all packages and would not make sense to
apply to a specific package.

* Implement option extra_args

Add option to append additional arguments to zypper command. This
should be able to accommodate other options that are not (yet) covered
by zypper module.

Arguments are given as if written in the command line, complete with
dashes.
2017-07-25 11:12:29 -04:00
Sam Doran 1c40631382 Use atomic_move rather than writing in place in redhat_subscription (#27132)
* Use atomic_move rather than writing in place in redhat_subscription and redhat utils

* Change status to curated

* Put curated in the proper field

* Add RETURN doc section

* Disable yum plugins when unregistering

* Change back to community supported

* Alphabetize imports
2017-07-21 18:22:58 -04:00
Pilou 4b3d6dfa8a Use pycodestyle instead of pep8 (#25947) 2017-07-13 11:46:31 -07:00
tdtrask c24398cfd9 apk: Fix failure when both install and upgrade in same command (#26666)
* apk: Fix failure when both install and upgrade in same command

If name list contains an installed package that needs upgrade plus a new package, apk command would fail due to missing space character.

* Simplify fix by concatenating lists
2017-07-12 12:26:30 -04:00
champtar f25637e07a openwrt_init / opkg: clearly state that python is required (#26471)
* openwrt_init: clearly state that python is required

As python isn't installed by default on OpenWrt/LEDE,
clearly state that python is required

Signed-off-by: Etienne CHAMPETIER <echampetier@anevia.com>

* opkg: clearly state that python is required

As python isn't installed by default on OpenWrt/LEDE,
clearly state that python is required

Signed-off-by: Etienne CHAMPETIER <echampetier@anevia.com>
2017-07-06 16:30:06 -04:00
Duncan Lock 6d7647be54 yum: added example for `exclude` parameter. (#26216)
* Added example for `exclude` parameter.

* Remove trailing whitespace
2017-06-29 11:21:49 -07:00
Dag Wieers 7d7051fc54 Mutually reference Windows and non-Windows modules (#25482)
* Mutually reference Windows and non-Windows modules

To make it easier for Windows or non-Windows users to find the relevant
module information, we are mutually referencing both variants in their
documentation.

We are also adding a special note if a module works on both Windows and
non-Windows targets.

* Mutually reference Windows and non-Windows modules

To make it easier for Windows or non-Windows users to find the relevant
module information, we are mutually referencing both variants in their
documentation.

We are also adding a special note if a module works on both Windows and
non-Windows targets.

* Replace 'look at' with 'use', as requested

ci_complete
2017-06-26 16:26:53 +01:00
Abhijeet Kasurde 1f8575ec97 Remove get_exception from zypper (#25890)
Fix removes get_exception in favor of native Python exception
handling. Also, added to_native to manage exception message.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-26 14:30:51 +01:00
Patrik Lundin a439f45a18 openbsd_pkg: Handle versionless names with branch. (#26016)
* openbsd_pkg: Handle versionless names with branch.

This makes package names such as "openldap-server--%openldap" work.
Problem reported by Landry Breuil.

While here fix cornercase check for versionless packages and add some
more debug output to packet parsing.

Fixes #25910.

* openbsd_pkg: Split up lines to pass build checks.

===
The test ansible-test sanity --test pep8 failed with the following errors:
lib/ansible/modules/packaging/os/openbsd_pkg.py:383:161: E501 line too long (292 > 160 characters)
lib/ansible/modules/packaging/os/openbsd_pkg.py:398:161: E501 line too long (198 > 160 characters)
===
2017-06-23 12:25:41 -04:00
Brian Coca ff4c308359 fixed issue with empty string 'packages'
also cleaned up unused imports/vars
fixes #25582
2017-06-12 12:59:16 -04:00
Abhijeet Kasurde e160bcf237 Correct fail_json call in rpm_key
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-12 09:11:03 -04:00
Abhijeet Kasurde b89cb95609 Fix spelling mistakes (comments only) (#25564)
Original Author : klemens <ka7@github.com>

Taking over previous PR as per
https://github.com/ansible/ansible/pull/23644#issuecomment-307334525

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-12 07:55:19 +01:00
Peter Oliver d0d33262cb pkg5 with `latest` shouldn't ignore absent packages (#23006)
When the state is set to `latest` we should install absent packages, not just upgrade already-instaled packages.

This should fix #22823.
2017-06-02 01:10:24 +02:00
Peter Oliver ea56d18c99 Support check mode in pkg5 module. (#23008) 2017-06-01 23:59:07 +02:00
Abhijeet Kasurde 07be5f2b67 spelling fixes (non-trivial, changing messages) (#25094)
Multiple spell fixes in single commit.
Taking over existing PR as per comment -
https://github.com/ansible/ansible/pull/23645#issuecomment-304312275

Original Author: klemens <ka7@github.com>

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-01 10:45:19 +01:00
Evgeni Golov 1f78715848 apt: include arch in check for installed packages on multi-arch systems (#24846)
* apt: include arch in check for installed packages on multi-arch systems

Thanks: Stefan Löwen <stefan.loewen@gmail.com>

Fixes: #24673

* add an integration test for apt's multi-arch handling
2017-05-30 16:09:43 -04:00
Brendan Almonte 2af5556901 Added autoclean/autoremove for the apt module
- Removed alias autoclean from autoremove.
- Added independent execution of apt-get autoclean/autoremove
- Continued to support --auto-remove as a flag to install/remove

Fixes #22222 #24718
2017-05-25 14:18:20 -07:00
Robin Roth 8fca263560 Refactor zypper version parsing and handling (#24056)
Fixes #23516
2017-05-25 17:05:25 -04:00
Brendan Almonte b820d024fc Add alternative syntax for upgrading all installed packages via apt (#25007)
syntax: 'apt: name=* state=latest'

feature #24189
2017-05-24 16:04:38 -07:00
tdtrask 0d761e4568 Add apk available and repository (#24146)
* apk: Allow update and upgrade in same task

* apk: Add repository option

* apk: Add available option

* apk: Add stdout and stderr output where possible

* apk: Add packages return with list of changed packages
2017-05-24 12:28:41 -04:00
kgottholm 5240e5a230 Vertica schema fix (#24915)
* replace deprecated cmp() with custom conditional
cmp is not present in Python3 but several modules use it
Reference 24756
2017-05-23 10:49:54 -07:00
Dylan Silva bba4549b43 Downgraded more modules from Curated to Community (#24751) 2017-05-18 08:28:41 -07:00
Kevin Howell 65f0668475 Add pool_ids option to redhat_subscription (#23266) 2017-05-12 14:10:41 -04:00
Dylan Silva fc3cc73b73 Downgrading module from core to community (#24463) 2017-05-11 08:05:49 -07:00
Martin Kopta c4ad0f86c7 fixed yum.parse_check_update regex (#24331)
Output of `yum check-update` can contain lines with long package names and long
repository label names, which will be broken into multiple lines, which need to
be sanitized. The solution to this has been fixed and refactored in 2.3 in form
of parse_check_update(), but it still contains subtle bug, which makes such
multi-lines invisible to later logic (such packages aren't included in
parse_check_update()) output. The problem is caused by using '\1' in re.sub(),
instead of proper r'\1', which literally puts unicode symbol \1 into resulting
output.
2017-05-05 17:01:30 -04:00
Alberto Murillo Silva 136a6eec9e dnf: Add autoremove option
This allow users to write better playbooks by replacing

- shell: dnf autoremove -y
with
- dnf: autoremove=yes

Fixes #18815

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
2017-05-04 13:52:16 -07:00
Ritesh Khadgaray fb6e9e8fbe rhn+register: do not pass username/passwd for registration if none is specified. (#24244) 2017-05-03 12:12:16 -04:00
Kevin Howell a93aa6dc04 Fix typo in rhsm.configure (system -> server) (#24179)
This fix makes it so that the module works as expected when
`server_hostname` is provided. It was being silently ignored
previously. I suppose this may also fix similar behavior with
`server_insecure`, but I did not check that explicitly.
2017-05-03 11:08:58 -04:00
Abhijeet Kasurde 8ba069315e Pylint fixes for packaging (#23553)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-05-01 10:25:39 -05:00
Abhijeet Kasurde 86a63cfcd7 Handle fetch_url error gracefully (#23821)
Fix adds http response code check for fetch_url.
Also, method in fetch_url call.

Fixes https://github.com/ansible/ansible/issues/23800

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-04-26 10:35:40 -05:00
Andrea Tartaglia d1517f997a fixed RETURN docs for modules (#24011)
* fixed RETURN docs for remaining modules

* updated proxymysql_mysql_users 'sample' to yaml dict

* fixed whitespace errors
2017-04-26 15:56:13 +01:00
Abhijeet Kasurde d16fe5bef3 Minor typo and PEP8 fixes for dnf module (#23845)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-04-26 12:57:49 +01:00
Indrajit Raychaudhuri 45252b79be pacman: Fail fast when 'rc != 0'
We fail-fast and display 'stderr' in case 'pacman' returns with 'rc != 0'.
There is no point computing 'module._diff' in such case anyway.

Fixes #23910

(cherry picked from commit 8c6a2a848cf6a6d6522c8f5be56decf8df1ed6ab)
2017-04-24 21:12:20 -04:00
Kevin Brebanov 5775bb2a4e apk: Fix regex search patterns
Regex patterns were not being escaped properly so package names
containing characters that could be interpreted as regex symbols
were causing failures.

Fixes: #19714
2017-04-18 15:07:55 +02:00
Abhijeet Kasurde ba3295dd3f Pylint fixes for yum module
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-04-11 16:31:35 -07:00
Toshio Kuratomi b4f976e9b9 When apt errors, include it's exit code
We invoke /usr/bin/apt inside of the ansible module.  When that command
exits, it doesn't always include a helpful error message.  Include the
exit code so that user's have all the information we can gice them as to
why apt failed.

Addresses #19128
2017-04-10 11:41:09 -04:00
Indrajit Raychaudhuri 971187e54c pacman: Fix package matching pattern in upgraded package list (#23433)
(cherry picked from commit 9a850db605a2db3c4f7f1cbc5bf88a8852ea17c4)
2017-04-09 11:39:40 +02:00
Lucas Alvares Gomes cee8cc2a52 rpm_key: Decode bytes to string to work with Python 3 (Fixes #20326) (#20385)
* rpm_key: Decode bytes to string to work with Python 3 (#20326)

The read() method will return bytes we need to then decode() those bytes
to a string before trying to match() it using the re module.

* Make the rpm_key pgp regex more robust on both py2 and py3
2017-04-07 16:22:39 -07:00
Dr Josef Karthauser 0752906ae5 Add --jail support to pkgng. (#22958)
* Add --jail support to pkgng.

* Bump the version number for the --jail argument.
2017-03-28 17:38:47 -04:00
Toshio Kuratomi d0712b1ec7 Make yum's state=list obey disablerepo and enablerepo
Fixes #22876
2017-03-23 12:10:59 -07:00
Matt Martz 3164e8b561 E501 fixes (#22879) 2017-03-22 20:50:28 -05:00
Toshio Kuratomi eb1214baad New metadata 1.0 (#22587)
Changes to the metadata format were approved here:
https://github.com/ansible/proposals/issues/54
* Update documentation to the new metadata format
* Changes to metadata-tool to account for new metadata
  * Add GPL license header
  * Add upgrade subcommand to upgrade metadata version
  * Change default metadata to the new format
  * Fix exclusion of non-modules from the metadata report
* Fix ansible-doc for new module metadata
* Exclude metadata version from ansible-doc output
* Fix website docs generation for the new metadata
* Update metadata schema in valiate-modules test
* Update the metadata in all modules to the new version
2017-03-14 09:07:22 -07:00
John R Barker e5b990a55a Fix invalid fields in module DOCUMENATION (#22297)
* fix module doc fields

* More module docs corrections

* More module docs corrections

* More module docs corrections

* More module docs corrections

* correct aliases

* Review comments

* Must quote ':'

* More authors

* Use suboptions:

* restore type: bool

* type should be in the same place

* More tidyups

* authors

* Use suboptions

* revert

* remove duplicate author

* More issues post rebase
2017-03-09 16:20:25 +00:00
Alex Chvatal f1d8d7ba13 include upgraded packages in pacman upgrade action (#20713)
* include upgraded packages in pacman upgrade action

* display upgraded packages as diff output for pacman upgrade

* document the packages return key

* add --diff support for installing, removing and checking packages

* include package versions in pacman diff output
2017-03-08 10:32:02 -05:00
Kamil Cholewiński ec9582fd83 Fix invocations of module.fail_json with no msg=
Bonus: add missing % in cs_nic.py
2017-03-07 10:17:14 -05:00
Clemens Weiß 7018aa3316 Update expired keys (#21539)
If a key has expired it will not be added by this module, so check for "expired" in the list of keys.
Example output with expired key:

pub   1024D/5072E1F5 2003-02-03 [expired: 2017-02-16]
uid                  MySQL Release Engineering <mysql-build@oss.oracle.com>
2017-03-03 20:53:21 +01:00
Brian Coca 7966beb6c9 minor fixes to apt
fixes #22124
2017-03-02 13:56:58 -05:00
William L. Thomson Jr b7229b0467 Adds latest to portage module (#21918) 2017-02-27 10:19:26 -05:00
Adrian Likins ae1a610482 Rhsm pool not name 3898 (#21911)
* Subscibe to pools matched by id before name matches.

If the pools regex matches any pool ids, then subscribe only to those pools.
If there are no pool id matches, then attempt to match the regexp and pool names.
If there are pool name matches, subscribe to those pools.

Fixes #19466, https://github.com/ansible/ansible-modules-core/issues/3898 (partially)

* Add pool id/name matches to 'to keep' list

use subscribe() to use the pools-first logic on update
2017-02-27 10:04:44 -05:00
Matt Martz 305c88700d PEP8 E712 fixes (#21916) 2017-02-24 16:49:43 -06:00
Pavel Malyshev 7063db64c2 redhat_subcription module accepts id in the pool argument [#3898] 2017-02-24 10:38:46 -05:00
Matt Clay 4554e8d769 Remove unnecessary shebangs and execute bits. 2017-02-22 18:13:46 -08:00
James Cooke 8ec28a2ba4 Download remote apt deb file in bytes mode in Python 2 and 3
Fixes #19710
2017-02-21 14:26:58 -08:00
Veaceslav Mindru cdcdc1d81b #19587 add yum skip-broken (#21475)
* #19587: refactor to PEP8

* Issue: #19587: add skip_broken option to yum module
PNTSYSOPS-1901 - internal reference

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* Issue: #19587: fix line break, attempt to make readble

        things at line 646 look ugly ..
        trying to make them look a bit more human readble
        though the entire approach should be rewriten

PNTSYSOPS-1901 - internal reference

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* #19587: fixing typo, skip-broken has to be passed as list

* PR: #21475: peer review changes
            relates to: revert comment deletion https://github.com/ansible/ansible/pull/21475#discussion_r101574146
            relates to: remove irelevant var https://github.com/ansible/ansible/pull/21475#discussion_r101573388
            relates to: reformat https://github.com/ansible/ansible/pull/21475#discussion_r101572840

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* PR: #21475: peer review changes
            relates to: https://github.com/ansible/ansible/pull/21475#discussion_r101573736

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* Issue: #21475: fixing typo in the Man section

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* PR: #21475 - Peer review: revert variable a
        Relates to: https://github.com/ansible/ansible/pull/21475#pullrequestreview-22404868

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* Issue: 19587 - small correction

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>
2017-02-21 07:59:07 -08:00
Matt Martz 78a000502e YAML fixes for examples in additional modules 2017-02-15 13:01:43 -08:00
Matt Martz 7c00346714 Validate EXAMPLES as YAML 2017-02-15 13:01:43 -08:00
Adrián López e1761d7724 yum: improve disk usage when update_cache used (#21098)
* Marks metadata files as outdated

Eliminates time records of the metadata and mirrorlists download
for each repository. This forces yum to revalidate the cache for
each repository the next time it is used.

* Command arguments in two separate strings to be compatible if run_command implementation changes. Doc explains a little better what is that parameter doing
2017-02-14 18:53:14 +01:00
Robin Roth 82eaa9735c Add try/except around xml parsing in zypper
Zypper sometimes produces invalid XML. Catch that in a nicer way.

Potential future improvement: Work around broken XML by removing some
sections.
2017-02-13 12:28:22 -05:00
Brian Coca 74e8aa22af no log passwords (#21229)
* no log passwords

* removed unneeded no_log
2017-02-10 15:13:59 -05:00
Alberto Murillo aba2b38b07 Add swupd plugin (#20834)
* Add swupd plugin

Add support for ClearLinux update manager (swupd)

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>

* swupd: Document RETURN values

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>

* swupd: Add a meaningful description for failures

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>

* swupd: Clarify documentation

Provide more information about the options supported by the module
since some concepts are new for people not used to clearlinux/swupd

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
2017-02-10 13:55:27 -05:00
Adrian Likins e511326222 Fix 'yum skips updates' bug (#21113)
* Fix 'yum skips updates' bug

When the 'yum check-update' output is parsed, the regex used
to stitch wrapped lines together would fail on the first package.

It would fail because there is an empty line before the first
package, and this triggered the regex. To avoid a more complicated
regex, preprocess the check-update output to strip out any
empty lines.

The regex is also updated to include a group on the non whitespace
match to be used in the sub.

Add test cases based on info provided in the bug reports.

Fixes #20608
2017-02-08 16:07:43 -05:00
Marius Gedminas 577d0e43ba apt_repository: check for enabled repositories correctly
Fixes #20754.

Details: UbuntuSourcesList.add_source() had a quick check for PPAs being
already present in the source lists.  The check was looking for the PPAs
URL to be present in self.repo_urls, which should contain all valid and
enabled repositories.

The enabled check in repo_urls was incorrect.  It was checking the tuple's
2nd item (which means "valid") and ignoring the 3rd item (which means
"enabled").

self.files contains tuples (line_number, valid, enabled, source_line,
comment_text).  Ideally it would be using named tuples instead of
indexing, to avoid bugs like that, but Python 2.4 didn't have named
tuples, so we can't do that (yet).
2017-02-07 18:42:57 -08:00
Adrian Likins 7278308ca2 Redhat subscription (#20729)
* Make unused redhat_subscriptions do something

rhsm_baseurl/server_insecure were module params that were
never used previously. Hook them up for register options.

* pep8/style cleanups
* Set a module scope SUBMAN_CMD before we ref it as a global
* move ansible imports to top, remove '*' imports
* remove redhat_subscriptions from pep8 legacy
2017-02-07 12:07:01 -05:00
Evgeni Golov 827723db90 use require_if to check for username or AK instead of custom code (#20937)
the logical or parameter to require_if was introduced in #20220
2017-02-06 13:53:12 -05:00
Daniel Andrei Mincă 62434d9955 update vague description of only_upgrade (#21050)
* the `only_update` param description was kinda vague:
  * either install if not installed
  * or upgrade if installed
  * or both!?
    * as a result, remove the "install" statement from this sentence

Resolves:
Related:
Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2017-02-06 09:50:43 +00:00
Toshio Kuratomi f75ffe46db Make configparser imports python3 ready
the ConfigParser module was renamed to configparser in Python3.  Use
six.moves to import it so that the modules will function on Python3.
2017-02-03 21:15:34 -08:00
Matt Martz 829c0b8f62 Update validate-modules (#20932)
* Update validate-modules

* Validates ANSIBLE_METADATA
* Ensures imports happen after documentation vars
* Some pep8 cleanup

* Clean up some left over unneeded code

* Update modules for new module guidelines and validate-modules checks

* Update imports for ec2_vpc_route_table and ec2_vpc_nat_gateway
2017-02-02 11:45:22 -08:00
Adrian Likins b3b598c835 Rhn register misc fixes (#20724)
* Remove monkeypatching of rhn config in rhn_register

rhn_register.Rhn() was doing some complicated monkeypatching of
the up2date_client.config.Config() class to add a default config
value. Since that was only used in one place, remove the monkeypatch
and handle the single default case.

That case was 'server_url' option, so replace it with a Rhn.server_url
property. Also handle the error case when no server url is provided.

* refactoring
* flatten some indention levels
* add 'enable_eus' to module doc
* set enable_eus var and use it directly
* style/pep8/etc cleanups
* some import cleanups

types was unused, os/re were from module_utils * import

* remove * import from module_utils.redhat
* remove * imports from module_utils.base
* remove unused Rhn._subscribe method
* cleanup pep8 style stuff
* remove a unused default mutable arg from Rhn.subscribe

Rhn.subscribe() only gets called in one place, and thats
with channels from module_params which default to [] and
are typed as a list.
2017-01-31 15:23:27 -05:00
Matt Clay cb76200c7d PEP 8 E111 & E114 cleanup. (#20838) 2017-01-30 15:01:47 -08:00
Brian Coca 8030f6fd45 removed module merged by mistake with facts change
should be it's own PR
2017-01-30 15:11:15 -05:00
Toshio Kuratomi 1434d5f11f Fix for swupd documentation 2017-01-30 11:58:53 -08:00
Alberto Murillo Silva 108b5fc502 Add support for ClearLinux
* Set ansible_os_family to 'ClearLinux'
* Set ansible_distribution to 'ClearLinux'
* Add swupd.py plugin

Fixes #20824

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
2017-01-30 14:12:20 -05:00
Matt Clay 10d9318de7 PEP 8 indent cleanup. (#20800)
* PEP 8 E121 cleanup.

* PEP 8 E126 cleanup.

* PEP 8 E122 cleanup.
2017-01-29 07:28:53 +00:00
Matt Clay d0d1158c5e PEP 8 cleanup. (#20789)
* PEP 8 E703 cleanup.
* PEP 8 E701 cleanup.
* PEP 8 E711 cleanup.
* PEP 8 W191 and E101 cleanup.
2017-01-28 00:12:11 -08:00
Matt Clay d913f69ba1 PEP 8 W291 whitespace cleanup. 2017-01-27 17:08:02 -08:00
Matt Clay 95789f3949 PEP 8 whitespace cleanup. (#20783)
* PEP 8 E271 whitespace cleanup.
* PEP 8 W293 whitespace cleanup.
* Fix whitespace issue from recent PR.
2017-01-27 15:45:23 -08:00
Matt Clay 63b1e0c277 Fix infrequent PEP 8 issues. 2017-01-27 14:06:21 -08:00
Kamil Boratyński 9d8c1923ab [redhat_subscription]: fixed force option. (#20667)
`force` option is not unique for non-activationkey registrations and it should
be parsed separately; it is possible to register host with activation key and
force such process.
2017-01-26 13:28:24 -05:00
Evgeni Golov 47892a0034 redhat_subscription: Document & enforce org_id (#20548)
* redhat_subscription: enforce the need for org_id when AK is used

also update the documentation to reflect that

Fixes: #20542

* redhat_subscription: check for existence of subscription-manager
2017-01-26 13:22:30 -05:00
Jonathan Mainguy 39608128c5 Fixup documentation for the list option in yum module (#20605) 2017-01-25 11:35:28 +00:00
ABond cef0adfba0 Issue #20179 Fix doc string handler notify call (#20499) 2017-01-20 08:00:26 -05:00
Robin Roth 4976429e42 Zypper: Fix update_cache in checkmode (#20143)
Fixes #20139

Refresh does not support dry-run, so don't run it in check mode.
Also add a test for this case.
2017-01-11 18:47:16 +00:00
Robin Roth e4bfc2b84c Add ZYPP_LOCK_TIMEOUT environment example (#20130)
Retries to require lock for zypper operation.
2017-01-11 18:30:18 +00:00
Gaëtan Duchaussois f5c61650a7 Add information about lookup file constraint. 2017-01-10 13:20:00 -05:00
Romain Richard e341135431 Duplicated line in the documentation of the apt_repository module
Removing that extra line.
2017-01-10 12:28:37 -05:00
Toshio Kuratomi 08d6990e67 Fix code-blocks to use correct syntax highlighting 2017-01-08 09:18:45 -08:00
Toshio Kuratomi 95df8977b6 Fix yum install root (#19925)
* Reenable yum install root tests

No need for sos to test installroot.  Something with less deps works
just as well.

* Fix yum installroot.

Fix module import to use fail_json when the modules aren't installed.

Remove wildcard imports

* Lsat task is supposed to remove sos so make that happen
2017-01-05 10:42:43 -08:00
Dag Wieers e1fe403075 Inform user that the yum metadata cache remains (#19753)
This PR improves the documentation so that it is clear that this module does
not clean the repository metadata cache on removal, and add an example
notification handler to the removal example as an extra reminder.

This fixes #19730
2017-01-05 10:30:37 -08:00
Toshio Kuratomi cd2516bf8d Revert "Revert "Add --installroot to YUM and DNF modules, issue #11310""
This reverts commit b73ddd5212.
2017-01-05 00:24:20 -08:00
Matt Clay b73ddd5212 Revert "Add --installroot to YUM and DNF modules, issue #11310" 2017-01-05 00:14:33 -08:00
berenddeschouwer 1fdcda0996 Add --installroot to YUM and DNF modules, issue #11310 (#19861)
* Add --installroot to YUM and DNF modules, issue #11310

This continues ansible-modules-core#1558, and
ansible-modules-core#1669

Allow specifying installroot for the yum and dnf modules
to install and remove packages in a location other than /.

* Remove empty aliases

* Simpler installroot set default logic
2017-01-04 19:20:00 -08:00
Patrik Lundin ee5364f983 openbsd_pkg: make "name" take a list.
This commit also adds the module to DEFAULT_SQUASH_ACTIONS which is
possible with this change.

The module still calls the pkg_* tools once per name internally, so the only
difference is less invocations of the module itself when using with_items.
2017-01-04 18:45:31 -08:00
Toshio Kuratomi a33e34894b Move some modules into proper categories 2017-01-04 18:09:45 -08:00
Martin Bektchiev 1c13ddf7c8 Add @ to valid package name characters (#18862)
NodeJS formulae are now named node@<major_version>

E.g. https://github.com/Homebrew/homebrew-core/blob/master/Formula/node@6.rb
2017-01-03 21:05:37 +01:00
Jasper Lievisse Adriaanse 2eb8f4cc70 Add new 'clean' and 'quick' parameters, correspondig to -c and -q in pkg tools (#19680) 2016-12-26 20:57:37 +01:00
Matthew Gamble 8292cadc7f Tell pacman not to display progress bars
Displaying progress bars is not recommended for any scripted usage of
pacman, such as the ansible pacman module.
2016-12-20 09:47:25 -05:00
Matthew Gamble f24ab68f04 Improve and optimise pacman package installation
Previously, packages were installed one at a time in a loop. This caused
a couple of problems.

First, it was a performance issue - pacman would have to perform all of
its checks once per package. This is unnecessarily costly, especially
when you're trying to install several related packages at the same time.

Second, if a package you're trying to install depends on a virtual
package that is provided by several different packages (such as the
"libgl" package on Arch) and you aren't also installing something that
provides that virtual package at the same time, pacman will produce an
interactive prompt to allow the user to select a relevant package. This
is obviously incompatible with how ansible operates. Yes, this problem
could be avoided by installing packages in a different order, but the
order of installation shouldn't matter, and there may be situations
where it is not possible to control the order of installation.

With this refactoring, all of the above problems are avoided. The code
will now work out all of the packages that need to be installed from any
configured repositories and any packages that need to be installed from
local files, and then install all the repository packages in one go and
then all of the local file packages in one go.
2016-12-19 21:09:25 -05:00
Matthew c58461596a Support pacman packages using different types of compression (#19503)
It's possible to compress packages using several different compression
methods, or not compressed at all. Previously, the pacman module only
supported files compressed using xz. This update ensures that all
compression types currently supported by pacman are supported by the
ansible pacman module.

The list of supported compression methods at the time of writing can be
found here:
https://git.archlinux.org/pacman.git/tree/scripts/makepkg.sh.in#n747
2016-12-19 12:08:45 +00:00
Brian Coca 5d82fe545f minor docs and option fixes 2016-12-16 16:17:52 -05:00
Carlos E. Garcia 0b8011436d minor spelling changes 2016-12-13 13:51:13 -05:00
Vlad Glagolev 4b27d08643 dropped 'BOOLEANS' choices, converted env vars to str 2016-12-12 14:25:19 -08:00
Vlad Glagolev 45b2f4b479 Source Mage GNU/Linux package manager support (#19072)
* added alpha version of the 'sorcery' module

* fully conforming YAML

* use bundled check for executables

* - codex_list(): use commands instead of checksums to get sorcery version and verify codex equality - renamed: - manage_depends() -> match_depends() - tocast -> cast_queue, todispel -> dispel_queue, needs_recast -> depends_ok - SORCERY_LOG -> SORCERY_LOG_DIR, SORCERY_STATE -> SORCERY_STATE_DIR - removed: - SORCERY_VERSION_FILE - CODEX - added commentary to match_depends() and manage_spells() - fixed bug about dropped dependency line for previously existed dependency - fixed bug about not fixing depends for the 'latest' state - simplified several code constructions

* cleaned up some docs

* do not use separate message for Codex update, rely on the 'changed' status instead

* use built-in list conversion (_check_type_list()) for spells

* corrected spell name extraction from list in match_depends()

* avoid non-matching dependencies line duplication in depends file

* added more complex playbook example

* tiny stylistic fix for docs

* replaced ternary construction with a regular statement

* replaced yet another ternary construction with a regular statement

* enable Python 2.4 compatibility by splitting try-finally block

* enable Python 2.4 compatibility by replacing 'with' statement with try-except+try-finally blocks

* unify spells' assign

* replaced one regex with startswith()

* go Ansible 2.1

* added dummy RETURN template

* go Ansible 2.2

* better clarify permissions' requirements

* - updated copyright years - fixed rebuild command bug - re-used run_command_environ_update dict for env var management

* handle Python 3.5

* Revert "handle Python 3.5"

This reverts commit 33a5a0eb64c1193318298e111f063cdd5f93b73a.

* handle Python 3.5 (2nd try)

* go Ansible 2.3

* clarity++
2016-12-10 16:38:15 -05:00
Matt Clay c709b22e5c Fix differences with devel. 2016-12-08 11:35:21 -05:00
James Cammarata 011ea55a8f Relocating extras into lib/ansible/modules/ after merge 2016-12-08 11:35:18 -05:00
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 5edbbabe0b Call main in conditional way - packaging (#5826) 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
Toshio Kuratomi 52698596bc Clarify the comment 2016-12-08 11:25:31 -05:00
Toshio Kuratomi 91d98bb1a6 Older versions of rhn-client-tools don't understand containment tests. 2016-12-08 11:25:31 -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
Dag Wieers c843eeabc2 Performance improvement using in-operator for hash lookups
Just a small cleanup for the existing occurrences.

Using the in-operator for hash lookups is faster than using .has_key()
http://stackoverflow.com/questions/1323410/has-key-or-in
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
Sam Doran ea3c8ee406 Change example syntax on rpm_key module 2016-12-08 11:25:30 -05:00
Sam Doran 66c92d5623 Change example syntax on rhn_register module 2016-12-08 11:25:30 -05:00
Sam Doran 25af0652b9 Change example syntax on rhn_subscription module 2016-12-08 11:25:30 -05:00
Sam Doran 3208cf5abf Change example syntax on redhat_subscription module 2016-12-08 11:25:30 -05:00
Sam Doran 6c16ab6ca8 Change example syntax on package module 2016-12-08 11:25:30 -05:00
Sam Doran ca12f5acac Change example syntax on apt_rpm module 2016-12-08 11:25:30 -05:00
Sam Doran e4978ea98d Change example syntax on apt_repository module 2016-12-08 11:25:30 -05:00
Sam Doran b2ffded3a7 Change example syntax on apt_key module 2016-12-08 11:25:30 -05:00
Sam Doran f8ce66cbde Change example syntax on apt 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
René Moser 447842c524 apt: fix changed when cache updated but not pkg (#5487) 2016-12-08 11:25:26 -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
Matt Robinson df70a58d72 apt_repository: Relax PPA checks and add basename (#5432)
Allow installation of PPA repositories on non-Ubuntu Debian derived
distribution targets (e.g. neon, Mint, Debian itself) by removing the
specific check for UbuntuDistribution before allowing PPA: format
sources. This fixes the addition of PPA repositories under KDE neon (as
the codenames match the base Ubuntu distribution).

To make the functionality also useful under Mint and Debian which have
different codenames to their Ubuntu upstream / downstream releases, add
a 'codename' option to override the default used in the PPA source
entry.
2016-12-08 11:25:26 -05:00
Chris Becker fabb63c43f Add more specific language to module description and examples
* Add 'on the remote server' to `file` parameter description
* Add example showing how to use the `file` parameter, with specific
  language about the file's location being on the 'remote server'
2016-12-08 11:25:25 -05:00
jctanner 60dd2f1fff apt: update cache until corrupt package lists are fixed (#5448)
* apt: If the cache object fails to lost due to a corrupt file, try to update the cache until it is fixed.
* Append -q to the update parameters
* Remove unused variable
* Use a string that doesn't rely on internationalization
* Use py24 exception style
* Use get_exception

Fixes #2951
2016-12-08 11:25:25 -05:00
Evgenii Terechkov da71acf1bf Replace dangerous shell calls with module.run_command 2016-12-08 11:25:23 -05:00
Evgenii Terechkov 8fd4785062 Ensure that we use shell
to run apt-get -y install ... >/dev/null

this commit must fix #2839
2016-12-08 11:25:23 -05:00
Toshio Kuratomi e2fce828f6 Order of return values was reversed 2016-12-08 11:25:23 -05:00
Toshio Kuratomi 9aac87e08c Fix builddep when a source package exists without a binary package
builddep only requires a source package to be in the repos but our code
was checking for a binary package before running buiddep.  Reversing the
order makes it work correctly.

Fixes #4519
2016-12-08 11:25:23 -05:00
Toshio Kuratomi b8279e7447 Only change to short IDs for delete (#5353)
* Only change to short IDs for delete

If the user specifies long IDs, use them for all commands except for
deleting a key.  Need to use short IDs there because of an upstream
apt_key bug.  Fixed in apt_key 1.10 (fix is present in Ubuntu 16.04 but
not Ubuntu 14.0 or some Debians).

Fixes #5237

* Check that apt-key really erased the key

When erasing a key, apt-key does not understand how to process subkeys.
This update explicitly checks that the key_id is no longer present and
throws an error if it is.  It also hints at subkeys being a possible
problem in the error message and the documentation.

Fixes #5119

* Fix apt_key check mode with long ids

apt-key can be given a key id longer than 16 chars to more accurately
define what key to download.  However, we can use a maximum of 16
chars to verify whether a key is installed or not.  So we need to use
different lengths for the id depending on what we're doing with it.

Fixes #2622

Also:

* Some style cleanups
* Use get_bin_path to find the path to apt-key and then use that when
  invoking apt-key
* Return a nice user error message if the key was not found on the
  keyserver
* Make file and keyring parameters type='path' so envars and tilde are
  expanded
2016-12-08 11:25:23 -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
Alfredo Solano 88d7f0c692 apt: doc: use yaml syntax in examples (#5070) 2016-12-08 11:25:20 -05:00
John R Barker 25b6492d37 Bulk spelling improvement to modules-core (#5225)
* Correct spelling mistakes

* Correct more spelling issues

* merge conflict

* Revert typo in parms
2016-12-08 11:25:20 -05:00
John Barker bca8bbe7c2 Correct functional typos 2016-12-08 11:25:19 -05:00
Kevin Carter e2e7f20e34 apt: fix cache time handling (#1517)
This change is in response to issue #1497 where the apt module would not properly updating the apt cache in some situations and never returned a state change on cache update when the module was used without or without an item to be installed or upgraded.

The change simply allows the apt module to update the cache when update_cache option is used without or without a set cache_valid_time.
If cache_valid_time is set and the on disk mtime for apt cache is ">" the provided amount of seconds, which now has a default of 0, the apt cache will be updated. Additionally if no upgrade, package, or deb is installed or changed but the apt cache is updated the module will return a changed state which will help users to know that the state of the environment has changed due to a task operation, even if it was only an apt cache update.

fixes #1497

Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-12-08 11:25:14 -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