Commit Graph

670 Commits (0e1dca6e8fae229e39489f558e121983b8301361)

Author SHA1 Message Date
Adam Miller 34fc66185e make yum update_only option actually work (#47942)
* make yum update_only option actually work

Fixes #40615

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

* fix changlog fragment for sanity check

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

* only attempt an update when there are packages to update

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

* fix logic to properly handle the precedent of operations

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

* remove q debug statements

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-11-13 15:04:19 -05:00
Jason Walsh 96cdc9ec06 Add release argument for redhat_subscription (#47888) 2018-11-09 17:19:06 -05:00
Strahinja Kustudic b89b688d52 Fix pip idempotence in check mode
PIP package names must be case insensitive, and must consider hyphens
and underscores to be equivalent
(https://www.python.org/dev/peps/pep-0426/#name), because of this the
module didn't work correctly in check mode. For example if the passed
package name had a different case or an underscore instead of a hyphen
(or the other way around) compared to the installed package, check mode
reported as changed, even though packages were installed. Now the module
ignores case and hyphens/underscores in package names, so check mode
works correctly.
2018-11-08 17:09:34 -08:00
Sam Doran 1e3b704ff1
Prevent duplicate entries in rhsm_repository module (#48107)
* Complie regular expressions for better performance

* Skip on empty lines

This fixes a bug where the previous repo would be inserted in the result twice since an empty line did not match any of the conditions that would exit the loop iteration.
2018-11-07 17:49:12 -05:00
AndyG 20e1a33959 Update yum.py (#47749)
add explanation why you must use "shell: yum clean all" and why it won't be included in the yum module as per https://github.com/ansible/ansible/pull/31450#issuecomment-352889579
2018-11-07 09:27:31 -06:00
Adam Miller 091fb1dc3f yum also parse obsolete package output (#45365)
* yum also parse obsolete package output

This is a rebase of the patch originally proposed in
https://github.com/ansible/ansible/pull/40001 by machacekondra

Fixes #39978

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

* properly parse the obsoletes, provide a new output entry, add changelog

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

* make pep8 happy

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

* remove q debugging output

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-11-06 16:07:50 -05:00
Adam Miller 1c777976c5 Correct yum and dnf autoremove behavior (#47902)
* Correct yum and dnf autoremove behavior

Sanity check args passed to autoremove

Fixes #47184

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

* fix docs

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-11-05 16:00:42 -05:00
Matthias Fuchs 7e8d9081a7 Make the flatpak module work with Python 3.
Fixes #46994
Fixes #46995
2018-11-05 10:00:42 -05:00
e-taylor 90ea6c8d12 add support for the --be-name option (#43030)
* add support for the --be-name option
2018-11-05 09:27:38 -05:00
Jordan Borean 73141d5035 pip: produce better error msg on import error (#47743)
* pip: produce better error msg on import error

* Added porting guide entry for 2.7
2018-10-31 15:30:37 +01:00
Paul Harvey cd75074fc5 fix yum proxy regex (closes #47797) (#47800)
* Modify yum/tasks/proxy.yml to usernames that expose regex bug

* Fix bad regex backref/interpolation w/yum proxy username

A yum proxy username that begins with a number was being
interpolated as part of the backref, resulting in an error:
"sre_constants.error: invalid group reference"

Closes #47797
2018-10-30 16:35:37 +01:00
René Moser 58238375b4 apt: warn users on auto-install dep (#47704)
* apt: warn users on auto-install dep

* add changelog
2018-10-29 19:56:15 +01:00
Artem Bityutskiy b3ec97cd36 swupd: fail in case of an incorrect bundle (#45993)
For some strange reasons the 'swupd' module does not fail if I specify a
non-existing bundle like "xxx". This is inconsistent with other modules, for
example 'dnf'.

The end result is that if someone uses the 'package' module, the result is
inconsistent across OSes: for Fedora trying to install an non-existing module
fails, bot for Clear Linux it just prints a warning and succeeds.

This patch fixes the inconsistent behavior. With this patch 'swupd' will fail
if one tries to install a bundle that does not exist.

Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
2018-10-26 09:13:03 +01:00
Ross Williams 300db3af84 Module portinstall: use_packages is a bool (#47370)
The module has been checking if use_packages is
a string equal to "yes", but AnsibleModule actually
converts the use_packages argument to a bool.
2018-10-26 10:49:31 +10:00
AndyG e5664c45a5 Update pip.py (#47568)
adding the option to install pip modules via  proxy, as per https://github.com/ansible/ansible/issues/36333#issuecomment-366374083
2018-10-25 15:29:01 -04:00
Adam Miller 079705f8da
dnf properly gpg check local packages based on param (#47455)
* dnf properly gpg check local packages based on param

Fixes #43624

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-10-23 11:41:27 -05:00
Adam Miller 0e3e646189
don't restrict disable_excludes choices incorrectly (#47453)
* don't restrict disable_excludes choices incorrectly

Fixes #47085

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-10-23 11:39:55 -05:00
Zhikang Zhang b697da39c8 Fix problem where pip module cannot accept multiple extras
PR #46937
Fixes #46519
2018-10-22 22:21:45 +02:00
Martin Krizek e8b6864e21 yum/dnf: fail when space separated string of names (#47109)
* yum/dnf: fail when space separated string of names

* Groups allow spaces in names
2018-10-19 14:29:27 -04:00
flowerysong c21f92f8f7 Fix yum/dnf lock file polling (#47250) 2018-10-19 14:18:09 -04:00
Petr Ruzicka 6cd17401ec with_items should not be used any more - using loop instead (#47294) 2018-10-19 12:43:00 -04:00
Matt Clay c24c19594e
Enable pylint rules and fix exposed bugs. (#47219)
* Resolve invalid-unary-operand-type.

* Resolve raising-format-tuple.

* Resolve stop-iteration-return.

* Use disable comment instead of fixing logic.

The affected line in _find_address_range will only fail on Python 3.7
and later if the function is called with an empty address list. As an
internal method it is never called in this way, making it a non-issue
for use via public methods.

Using a comment to disable the rule in favor of an ignore.txt entry
since there are no plans to change the logic in the code itself. This
will also prevent any potential future issues being added in other
parts of the code when updating it based on upstream changes.
2018-10-19 08:32:52 -07:00
Baptiste Mille-Mathias 65bb6a5af3 Use loop instead of with_items in examples (#47318) 2018-10-18 17:14:50 -04:00
Stanislas 9cc9ca584a Implement snap packaging module
PR #44939

Fixes #39155
Closes #40852

Co-authored-by: Victor Carceler <vcarceler@iespuigcastellar.xeill.net>
Co-authored-by: Stanislas Lange <angristan@pm.me>
Co-authored-by: Sviatoslav Sydorenko <wk@sydorenko.org.ua>
2018-10-17 22:59:41 +02:00
Loïc a661b5f825 Add unsafe_perm flag (#36946) 2018-10-17 21:35:51 +01:00
Adam Miller fd97c8e56c
fix yum proxy username/password handling (#46291)
Fixes #46249

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-10-11 12:51:40 -05:00
Adam Miller fb6e91bf98
yum module properly check for None config_file (#46641)
* yum module properly check for None config_file
* add conf_file test cases to yum integration tests

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-10-11 10:11:34 -05:00
gardouille 0d824ad777 Add xz-utils requirement (#46159)
* Document xz-utils requirement for deb parameter of apt module
2018-10-10 09:45:58 -05:00
Cyril Jouve 05ca828619 create sources.list.d directory if needed (#36981) 2018-10-08 18:35:05 -04:00
Tom 'Biwaa' Riat 6ad9e1c3de feat(apt): add -f --fix-broken option to apt module (#27162) 2018-10-08 18:07:52 -04:00
Evgeni Golov 7c66c90afc introduce `module_utils.urls.fetch_file` as a wrapper to download and save files (#19172)
* module_utils.urls: add fetch_file function

* apt: use fetch_file instead of own download()

* unarchive: use fetch_file instead of own codecopy

* apt: add test for deb=http://…

* unarchive: add test for a remote file download and unarchive

* yum: replace fetch_rpm_from_url by fetch_file

* use NamedTemporaryFile

* don't add a dot to fileext, it's already there
2018-10-08 14:41:57 +02:00
Adam Miller c8ed5c29e9 allow update_cache as stand alone operation for yum/dnf (#46183)
* allow update_cache as stand alone operation for yum/dnf

Fixes #40068

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

* make sanity tests happy

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-10-08 08:39:49 -04:00
newtonne bd849e8fb4 Macports: Add upgrade parameter and replace update_ports with selfupdate (#45049)
* macports: Replace update_ports with selfupdate

- Macports discourages use of `port sync` and recommends using `port
selfupdate` instead.
- Keep `update_cache` and `update_ports` as aliases.
- No longer require the `name` parameter so that `selfupdate` can be
used in a task by itself.

* macports: Add upgrade parameter

- New upgrade parameter which can be used to upgrade all outdated ports.

* Add changelog fragment
2018-10-03 13:58:55 -04:00
Daniel Jaouen 404b7140b6 homebrew_cask: Fixes #38772 2018-10-01 09:49:06 -04:00
Adam Miller 71280ee773 Handle dnf immutable mutable datatypes (#46176)
In DNF < 3.0 are lists, and modifying them works
In DNF >= 3.0 < 3.6 are lists, but modifying them doesn't work
In DNF >= 3.6 have been turned into tuples, to communicate that
modifying them doesn't work

Further explanation of this is available via Adam Williamson from
the Fedora QA Team.

    https://www.happyassassin.net/2018/06/27/adams-debugging-adventures-the-immutable-mutable-object/

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-09-27 03:45:58 -04:00
newtonne aac1ce7333 homebrew_cask: Pass install_options during uninstall (#44938)
Until https://github.com/Homebrew/homebrew-cask/issues/40866 is fixed,
install_options should be passed when uninstalling casks to ensure that
all artefacts are removed.
2018-09-25 12:21:52 +01:00
Adam Miller 2fe150a1ef fix dnf wildcard pkg removal - fixes #27744 and #36970 (#45357)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-09-20 12:13:17 -04:00
Alicia Cozine 34b8cbd365 Explain what happens when gpgcheck is not set in yum
PR #45796
2018-09-20 15:14:55 +03:00
Adam Miller 5fdf0290d0 handle yum and dnf lockfiles - fixes #44120 (#45359)
* handle yum and dnf lockfiles - fixes #44120

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

* fix logic problem to properly check for dnf lockfile glob

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-09-19 16:14:25 -04:00
Dag Wieers 2edf20d1ed Docs: Avoid use of 'default: null' (#45795)
Various modules document the default 'null' value, but it causes None to
be shown in the documentation explicitly.
2018-09-19 09:02:27 -05:00
Rémy Jacquin 63444136ba Add example for multiple package selection with dnf (#45610)
Thanks for enhancing the Ansible documentation!
2018-09-17 15:54:48 -04:00
julianladisch 5adcaf4538 Suggest full fingerprint for apt_key. (#44697)
* Suggest full fingerprint for apt_key.
Background: https://gwolf.org/node/4070 (Gunnar Wolf: Stop it with those short PGP key IDs!)
I've put the full fingerprint into the examples.
* avoids the phrase 'best practice'
2018-09-14 14:50:46 -05:00
Strahinja Kustudic 8d8df46fe6 Add an error message if a pkg cannot be removed, fixes #35672 (#40723) 2018-09-13 02:54:38 -04:00
Adam Miller db34d3923a Improve dnf group output for clarity
Add note about group removal bug upstream dnf

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-09-06 09:27:24 -07:00
Allen Fair 8fb589d55e Returns reason on pkg update error (#44982)
Previously, it returned no additional information:

     "msg": "Could not update catalogue"

Now it passes that reason with the error message:

    {"changed": false, "msg": "Could not update catalogue [77]:  pkg: Insufficient privileges to update the repository catalogue.\n"}
2018-09-04 10:27:57 -04:00
S. Veyrié 60af5ab962 maven_artifact: enforce required params (fixes #44823) (#44967) 2018-08-31 11:38:09 -04:00
S. Veyrié 5b358db83f maven_artifact: download with shutil.copyfileobj to a temp file (#44956)
* maven_artifact: replace homemade chunked download with shutil.copyfileobj

* maven_artifact: copy to temp file first
2018-08-31 07:35:26 -04:00
bonzi316 eee406dfd2 Fix maven_artifact md5 checksum check with archiva repository (#43250) 2018-08-31 05:32:37 -04:00
Stéphane Wirtel 711944aa97 Fix a comparison with a string and a byte in flatpak_remote (#44835)
* flatpak_remote: Fix the comparison between string and bytes for the remote_exists function

* Use to_text instead a new compare function

* Compare bytes to bytes
2018-08-30 22:36:34 +02:00
newtonne 30fd326953 Various updates to macports module (#44605)
- Add support for installing specific variants of a port.
- Add support for using yaml lists with 'name' parameter, rather than comma-separated lists.
- Add to and clarify documentation and examples.
- Use Macports nomenclature:
  - s/package/port/g
  - Rename update_cache to sync_ports but keep update_cache as an alias. Remove undocumented update-cache alias.
  - Remove undocumented 'pkg' alias for 'name'. Replace with 'port' alias and document it.
- Print stdout and stderr output if `port sync` fails.
- Print stderr output, rather than stdout, if `port install/uninstall/activate/deactivate` fail.
2018-08-30 05:03:29 +02:00