Commit Graph

715 Commits (f29256e4dac431782fd91d23ac77d4c897d0ea3c)

Author SHA1 Message Date
Abhijeet Kasurde f59d189d02 Minor typo fix in package module documentation (#44617)
Added missing round bracket

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-08-24 10:14:58 +02:00
photoninger d68c734ae2 Fix for "cannot marshal None unless.." (#33660)
when using only an activation key without any channels.
As already suggested by mattclay in
https://github.com/ansible/ansible/pull/25079

and also patch unit test for rhn_register and
add test case for activationkey only
2018-08-22 12:25:58 -04:00
Zhikang Zhang 501503f4cb
Allow version specifiers for pip install (#41792)
Allow version specifiers for pip install.
2018-08-17 11:46:53 -04:00
Adam Miller 6d95624c22 Refactor yum and dnf, add feature parity (#43621)
* Refactor yum and dnf, add feature parity

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

* remove unnecessary module_utils, move the classes into the module code

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

* remove yum -> yum4, out of scope

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

* use ABCMeta

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

* re-arrange run() caller vs callee

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

* make sanity checks happy

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

* fix yum unit tests

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

* remove unecessary debug statements, fix typo

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

* fix licensing and attribution in yumdnf module_util

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

* include fix from PR 40737

original commit 5cbda9658a
original Author: Strahinja Kustudic <kustodian@gmail.com>

yum will fail on 'No space left on device', fixes #32791 (#40737)

During the installing of packages if yum runs out of free disk space,
some post install scripts could fail (like e.g. when the kernel
package generates initramfs), but yum would still exit with a status
0.  This is bad, especially for the kernel package, because it makes
it unable to boot.  Because the yum module is usually used for
automation, which means the users cannot read every message yum
prints, it's better that the yum module fails if it detects that
there is no free space on the disk.

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

* Revert "fix licensing and attribution in yumdnf module_util"

This reverts commit 59e11de5a2a6efa17ac3f0076bb162348c02e1bd.

* move fetch_rpm_from_url out of yumdnf module_util

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

* fix the move of fetch_rpm_from_url

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-08-17 11:15:11 -04:00
Raúl Cuza c84e70cf10 Add note to `apt_key` doc about update requirement (#25111)
* Add note about adding new key requiring update

When a new repo and new key are added, attempts to install packages
signed by that key fail until `apt-get update` is run.  This note
is an attempt to help users avoid getting errors when they miss
this step.

* related to issue #25091

* switch example to apt module
2018-08-16 13:18:17 -05:00
Strahinja Kustudic 5cbda9658a yum will fail on 'No space left on device', fixes #32791 (#40737)
During the installing of packages if yum runs out of free disk space,
some post install scripts could fail (like e.g. when the kernel package
generates initramfs), but yum would still exit with a status 0.  This is
bad, especially for the kernel package, because it makes it unable to
boot.  Because the yum module is usually used for automation, which
means the users cannot read every message yum prints, it's better that
the yum module fails if it detects that there is no free space on the
disk.
2018-08-14 13:41:34 +02:00
Till Maas bb85bbceeb pip: combine chdir and env only when env is set (#40793)
* pip: combine chdir and env only when env is set

This fixes an AttributeError when chdir without virtualenv is specified:

 File "/tmp/ansible_2UAFsZ/ansible_module_pip.py", line 387, in main
    env = os.path.join(chdir, env)
 File "/usr/lib64/python2.7/posixpath.py", line 75, in join
    if b.startswith('/'):
AttributeError: 'NoneType' object has no attribute 'startswith'

* Add test for pip with chdir

Signed-off-by: Till Maas <opensource@till.name>
2018-08-13 19:59:01 +02:00
Matt Martz c1c229c6d4
Remove use of simplejson throughout code base (#43548)
* Remove use of simplejson throughout code base. Fixes #42761

* Address failing tests

* Remove simplejson from contrib and other outlying files

* Add changelog fragment for simplejson removal
2018-08-10 11:13:29 -05:00
curry9999 9c4be54625 To improve readability, we added a line feed. (#43764)
* A line break was added.

<!--- Your description here -->

+label: docsite_pr

* "blank line contains whitespace" was fixed.
2018-08-07 16:07:35 -04:00
Arnaud Venturi 130824c3e1 Correct a typo in pip module error message (#43784) 2018-08-07 19:53:19 +02:00
AlexisLessard 3055ca2cc0 Clarifications of parameters in yum_repo module (#38453)
* Clarifications of parameters in yum_repo module

Added a note defining where the "name" parameter of the module will appear in the repo file and note explaining that the description parameter of the module is actually the name parameter in the repo file. It might help people transform their existing yum repository files in ansible managed repos.
2018-08-07 11:48:29 -05:00
Michael Dodwell 5130b67159 Allow for the specification of a rhsm_repo_ca_cert if changing baseurl (#43343)
* Allow for the specification of a rhsm_repo_ca_cert if changing baseurl

If changing the baseurl we should allow for a ca cert to be updated from redhat-uep.pem

* Fixing documentation section

* added version to option rhsm_repo_ca_cert

* got rid of extra CR
2018-08-03 07:48:40 -04:00
Matt Martz 01c0446cb5
Add AnsibleModule signature schema, and fix associated issues (#43512) 2018-07-31 15:04:22 -05:00
Joren Vrancken b954917761 Surround top-level function and class definitions with two blank lines. 2018-07-31 12:06:56 -07:00
Adam Miller 09eac6bab9 Revert "dnf: Call dnf.Base.close() before exit to cleanup. (#41810)"
This reverts commit 32436ea9a5.
2018-07-31 09:17:40 -07:00
Adam Harwell a9b1af8bdd Yum: Add support for --downloadonly (#41506) 2018-07-18 23:34:54 -04:00
Bryce Verdier b16fef9aad removing duplicate operations from the use of list comprehensions. None of the logic within the code has been changed, just more refined. (#41098) 2018-07-18 15:48:12 -04:00
Frank Vissing 66adabfd42 disable_excludes (#42510)
* implementing disable_excludes

* add check for yum version

* limit choices

* add testcases for disable_exclude

* fix formating

* add documentation

* syntax fix for test case

* fix indentation

* need to ignore errors when we want to do a test that fails

* test disable_excludes with zip and not sos

* add tests for yum < 3.4 not supported

* fix formating

* centos 6.1 does not support map

* drop unsupported selectattr

* cleanup testcases

* fix test cases beloging to wrong test scenarion (propper when)

* evaluate expression

* minor test fixes

* check output of msg
2018-07-18 15:37:50 -04:00
Orion Poplawski 32436ea9a5 dnf: Call dnf.Base.close() before exit to cleanup. (#41810) 2018-07-18 15:11:32 -04:00
Michael Steffens 4af16d0c76 Python3: compare bytes with bytes and strings with strings. (Fixes #42677) (#42878) 2018-07-17 17:52:49 -04:00
Adam Conway b6e9df2065 Update yum_repository.py (#42859)
* Update yum_repository.py

Having spent some time trying and googling how to enable an installed repo with this, I discovered that the thread at https://github.com/ansible/ansible-modules-extras/issues/2384 had decided that this would not be supported and recommended use of ini_file instead.  Since I am sure I'm not alone in expecting yum-repository to support enabling/disabling a configured repo, I suggest adding a note so people find this easier.
2018-07-17 16:57:36 +05:30
Kevin Mooney 7a0c28cc37 Put umask value in quotation marks (#41409)
The given example causes the pip module to fail. If the umask is given as an octal string without quotation marks, the pip module converts it into an integer (i.e., an invalid umask). 

+label: docsite_pr
2018-07-13 10:35:23 -04:00
Toshio Kuratomi 9350a81ae4 Port modules away from __file__
* __file__ won't work if we want to invoke modules via -m or if we
  figure out how to keep modules from hitting the disk with pipelining.
* module.tmpdir is the new way to place a file where it will be cleaned
  automatically.

Change format string to not depend on __file__:

* cloud/amazon/ec2_elb_lb.py
* cloud/amazon/elb_classic_lb.py

Use module.tempdir:

* packaging/os/apt.py
* files/unarchive.py
2018-07-09 15:51:20 -07:00
Jordan Borean 8bdd04c147 Fix remote_tmp when become with non admin user (#42396)
* Fix tmpdir on non root become

 - also avoid exception if tmpdir and remote_tmp are None
 - give 'None' on deescalation so tempfile will fallback to it's default behaviour
   and use system dirs
 - fix issue with bad tempdir (not existing/not createable/not writeable)
   i.e nobody and ~/.ansible/tmp
 - added tests for blockfile case

* Revert "Temporarily revert c119d54"

This reverts commit 5c614a59a6.

* changes based on PR feedback and changelog fragment

* changes based on the review

* Fix tmpdir when makedirs failed so we just use the system tmp

* Let missing remote_tmp fail

If remote_tmp is missing then there's something more basic wrong in the
communication from the controller to the module-side.  It's better to
be alerted in this case than to silently ignore it.

jborean and I have independently checked what happens if the user sets
ansible_remote_tmp to empty string and !!null and both cases work fine.
(null is turned into a default value controller-side.  empty string
triggers the warning because it is probably not a directory that the
become user is able to use).
2018-07-06 10:49:19 -07:00
Julien Brochet 2762c4fe1a Fix error message when using the params option (#42305) 2018-07-04 21:08:25 +05:30
Robin Roth 24e94ec3c6 Make zypper work with python3 2018-06-25 15:58:24 -04:00
Martin Krizek 2e68811c34 apt: fix apt-mark on debian6 (#41530) 2018-06-20 05:57:59 -04:00
David Moreau Simard 89a9fb79da Add RETURN docs for the pip module (#39907)
The pip module returns some things. Let's document them.
2018-06-19 13:34:14 -04:00
Jacob 617093efa7 Add upgrade ('latest') support to pkgng module (#41623)
* Add upgrade ('latest') support to pkgng module

* fixup for bad yaml

* fixup for bcoca review:
- add `version_added:` to description
- change examples to use `name:` and remove comments
- DRY out install_packages()
- clean up state conditional check in modules.params

* fixup to remove extra whitespace

* fixup to handle custom pkgsite when checking for updates

* fixup to remove misleading `version_added:`
2018-06-19 10:42:22 -04:00
Jason Tedor f71ad4e315 Enable to use greedy checks for outdated casks (#40799)
* Enable to use greedy checks for outdated casks

When using brew cask outdated to check if an installed cask is outdated
or not, brew cask will skip casks that have auto_updates set to true or
version: latest. This means that Ansible tasks using the homebrew_cask
module to upgrade packages installed by brew cask will miss upgrading
such packages. However such packages can still be managed by brew cask
so we need to be able detect such packages. This can be done with the
--greedy flag passed to brew cask outdated as this will also include
such packages that are outdated. This commit adds a greedy parameter to
the homebrew_cask module to enable upgrading such packages using Ansible
tasks with the homebrew_cask module. The default behavior preserves the
same behavior as today. Example usage would be:

- homebrew_cask:
  name: 1password
  state: upgraded
  update_homebrew: yes
  greedy: yes

* Fix test issues

* Add extra comma to match style
2018-06-18 17:30:32 -04:00
Toshio Kuratomi 5c614a59a6 Temporarily revert c119d54
There were bugs in this that needed to be resolved.  No time to get the
fix reviewed sufficiently for 2.6.0.

We'll get this into 2.7.0 and try to get this into 2.6.1 as well.

Will need the work done in https://github.com/ansible/ansible/pull/36218
when it does get merged.
2018-06-15 13:00:54 -07:00
Jonathan Lozada D 0061ec4a09 Changes to Yum Documentation (#41054)
* added an example for a list of packages to install and added C() to some areas since it cannot be read right
* fixed the changes to list for
2018-06-08 15:41:01 +05:30
David Moreau Simard 828e33f419 Do not consider an empty version string as a version (#41044)
When using an empty string as the version argument, the module would
before attempt to run something akin to:

    pip install module==""

This changes the behavior to:

    pip install module

Fixes #41043
2018-06-06 09:52:43 +02:00
Baptiste Clavié 3b2f5dd606 composer: add new autoloader options (#40439)
* Add support for classmap-authoritative option for composer

* Add support for apcu-autoloader option for composer

* Fix a typo for the no-plugins option
2018-06-06 08:34:53 +02:00
Daniel Jaouen e90265e716 homebrew_tap: fixes #40853 (#40863) 2018-06-01 11:43:04 -04:00
Johannes Brunswicker cb636eb522 Fix for #40782 (#40783)
* check if timestamp is set in maven-metadata.xml. If it is not set, we don't have unique snapshot artifacts and can return the artifact name with the appended -SNAPSHOT
2018-05-29 05:04:25 -04:00
Matt Martz b07f779296 Update dnf module argument_spec and docs to match (#39819)
* Update dnf module argument_spec and docs to match. Fixes #39800

* Always evaluate autoremove as boolean
2018-05-28 06:26:04 -04:00
tgates81 f65df5f62a yum.py module: added option for yum --bugfix updates. (#36203) 2018-05-25 09:58:35 -04:00
Peter Janes 67493ebdee Add a 'releasever' parameter for dnf. Fixes #33314. (#37493)
* Add a 'releasever' parameter for dnf. #33314

* Set a default value for releasever

* Fix a variable name typo
2018-05-24 23:22:53 -04:00
Andrew Widdersheim 8d1f2ba9d9 yum: Propagate plugins to all parts of the module (#40085)
In `2.5` (d1b63bd5), the `yum` module received the capability to disable
and enable specific plugins. However, these changes only applied to
certain parts of the logic. This change propagates those changes to the
rest of the module, specifically those using the `yum` API.
2018-05-23 21:04:05 -05:00
S. Veyrié 012003c871 maven_artifact: raise an explicit exception if the .md5 url returns 404 (#40477) 2018-05-23 12:09:23 -04:00
Brian Coca 4cc4d63289 relocated flatpak 2018-05-23 10:06:44 -04:00
Martin Krizek a3cfe0d72f
apt: don't markmanual if apt-mark is not installed (#40600)
* apt: don't markmanual if apt-mark is not installed

* Add warning
2018-05-23 14:43:18 +02:00
Alexander Bethke 0840cb1fde Add flatpak_remote module (#40189)
* Adding flatpack_remote module

Includes contributions by oolongbrothers: adding documentation fixes, fixing import placements, fix module idempotency, improving error propagation.

* Aligns module with conventions and best practices

For improved robustness and readability; based on feedback by
dagwieers.

* Improves the module documentation

* Aligns copyright statement to conventions

* Renames remote > flatpakrepo_url and reworks documentation
2018-05-22 15:08:16 -05:00
Antoine Catton 39f9d3e4a6 Add the ability to specify an install_dir to the gem module (#38195)
* Add the ability to specify an install_dir to the gem module

* Add GEM_HOME when installing a non-global gem

* Add tests for custom gem path

* Fix sanity tests

* Add changelog entry

* Rebase and add tests for incorrect options

Co-authored by: Antoine Catton <devel@antoine.catton.fr>
2018-05-21 09:55:43 -04:00
Martin Krizek a996d4836a
rhsm_repository: use C locale for out/err scraping (#40338) 2018-05-18 07:55:37 +02:00
Martin Krizek ca3390377a
redhat_subscription: C locale for stdout scraping (#40165) 2018-05-17 20:44:06 +02:00
Peter Oliver caddf863df pkg returns 4 for "nothing to do" (#23007)
* pkg returns 4 for "nothing to do"

We need to handle this because our own checking for whether there's anything to do returns false negatives in certain circumstances.

We need to rename the response `rc`, because that name is reserved by
Ansible to indicate a failure if it is non-zero.

Fixes ansible/ansible#22781 and ansible/ansible-modules-extras#932.

* Don't rename `rc` to to `pkg_rc`, and instead override the failure state.

* Drop mention of renamed variable in `pkg5` module.
2018-05-15 11:52:54 -04:00
Martin Krizek def434b5c3
apt_repository: fix rendering default mode in docs (#40152) 2018-05-15 17:36:23 +02:00
Robin Roth d6e711b1de Allow empty list of names in pip module (#38789)
pip 10 gives exit code 1 for empty argument lists (pip < 10 gave exit 0)
see also https://github.com/pypa/pip/pull/4210

To still allow playbooks to pass when giving empty lists, don't call
pip in that case, but show a warning.
2018-05-14 14:51:10 +02:00
Robin Roth 42953c40ce Pip: Make main method smaller (#38788) 2018-05-14 14:49:41 +02:00
Brian Coca 8654508cbd
added check mode spport to package_facts (#39801)
* added check mode spport to package_facts

fixes #39789

* also service_facts
2018-05-11 14:04:08 -04:00
Martin Krizek 2db375e4aa
apt_key: clarify the keyring option in docs (#39950) 2018-05-11 07:45:20 +02:00
Martin Krizek bf702e6d88
dnf: handle error when latest pkg not found (#39720)
* dnf: handle error when latest pkg not found

* Add integration test
2018-05-09 10:05:00 +02:00
Daniel Jaouen 63ce4cf03d Homebrew: Update _uninstall_current_package to use the --force option (#33360) 2018-05-05 13:03:05 -04:00
Eric O'Callaghan c11248c456 Update redhat_subscription.py (#39512)
fixed small typo of depracated to deprecated in redhat_subscription doc

+label: docsite_pr
2018-05-01 14:09:13 -05:00
Matt Clay 32d786af65 Convert more http links to https. 2018-04-25 23:12:46 -07:00
John R Barker 7c4b91844d
More validate module fixes (#39097)
* Fix type bool DOCUMENTATION issues
2018-04-24 18:05:50 +01:00
Martin Krizek 62d2df74b0 apt: fix build-dep idempotency (#38999) 2018-04-20 07:57:14 +02:00
David Gunter a833281e22 Add Yarn module (#19026)
* Add yarn module based off of NPM module, adjust syntax for install cmd

* Update author list

* Add Return docbloc

* Remove extra var assignment

* Always return output without emojis, small changes for yarn 0.16.1

* Move import line, add ANSIBLE_METADATA, bump version_added

* Updating module format to meet newest lint requirements. Update options and example docs.

* Bring back RETURN block and main() execution.

* All trailing whitespace removed.

* Remove json try/except.

* Add initial pass at setting up Yarn integration tests.

* Add better handling for latest and removal states. Add tests for upgrading a single package.

* Fix issue where state=latest for installing all packages caused failure.

* Set yarn bin to latest version for tests. Fix sanity tests.

* Switch template task to copy task in yarn integration tests.
2018-04-18 08:19:38 -05:00
Ryo IGARASHI 1cc2aeb40a Update apt.py (#37972)
* Update apt.py

Proposing description of "cache_valid_time" for Ansible 2.4 or greater.
If 'cache_valid_time' is set, 'update_cache' is set implicitly.
This means the logic should be reversed.

 label: docsite_pr

* Proposing the description of "cache_valid_time"..

This commit follows the discussion in #37972.

 label: docsite_pr
2018-04-18 08:41:10 +02:00
jjshoe 3664c74cb8 Fix idempotency in apt module (#38858)
* Idempotency fix

Only show a change, if we did indeed update the cache.

* Apply changes from review feedback
2018-04-17 08:33:22 -05:00
ppanczyk 7850dfa9d9 [fix] issue #30638 - onlyupgrade handling (#31577)
Fixes #30638
2018-04-17 03:49:21 -04:00
Martin Krizek 1ff5e975d9 yum: docs: name is not required (#38758) 2018-04-16 07:15:57 +05:30
Philippe Makowski 0f9a66a32c urpmi module improvements (#37596)
* fix urpmi.update path #37432

* improve urpmi

* use get_bin_path rather than hard coding the path

* fix pep8 issue

* avoid using global

* - `RPM_PATH`, `URPMIUPDATE_PATH`, `URPME_PATH`) aren't constants, they should be lowercase rather than uppercase
- shorten too long lines
- remove unused import

* revert removed imports

* use lowercase rather than uppercase

* update doc

* update doc

* update doc after sanity check
2018-04-10 13:10:56 -04:00
Martin Krizek d97952dbf4
apt: allow for --allow-unauthenticated in upgrade (#38381)
* apt: allow for --allow-unauthenticated in upgrade

* Style fix

* Another style fix

* Add trailing comma
2018-04-10 15:37:41 +02:00
Martin Krizek bb6f90ff6f
apt: properly set changed for autoremove/autoclean (#38329) 2018-04-09 11:10:42 +02:00
René Moser af3598343d doc: apt, yum: add example with package lists (#38333) 2018-04-06 10:58:51 +02:00
shadbarton 613f24a346 Fix typo in apt.py (#38332) 2018-04-05 14:06:12 +02:00
brhatiga 8199b448e8 Add no_log to activationkey (#36657) 2018-04-03 07:35:21 -04:00
gmaes 27c47f75ad #29334 handle maven local repo (#36159) 2018-03-29 16:16:46 -04:00
Martin Krizek 447b342662
apt: use --auto-remove with dist-upgrade (#37594) 2018-03-28 12:18:36 +02:00
Adam Miller 7cd3d9cc1a Correct msg to detect idempotent yum groupinstall (#37858)
The message text used to check stderr for a warning about
groupinstall in order to determine if a change occurred is specific
to the version of yum that is in RHEL7 and newer. This change simply
removes a couple words off the end in order to only use text found
in the warning message in older versions of yum.

Fixes #35982

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-03-26 10:46:24 +02:00
Strahinja Kustudic 68ff986708 Fix 'repomd.xml signature could not be verified' (#35989)
If a repo with `repo_gpgcheck=1` is added and the repo GPG key was never
accepted, quering this repo would throw an error `repomd.xml signature
could not be verified` and the module would fail. If that happens now
`yum -y makecache` will be run which will fetch the new repo data and
accept the repo GPG key.
2018-03-23 16:13:49 -05:00
Martin Krizek 687f3bbef3
apt: fix mark when no packages (#37835) 2018-03-23 15:06:03 +01:00
Martin Krizek 00d9345158
apt: mark installed packages manual (#37751)
* apt: mark installed packages manual

* Add fallback for when manual is not a thing
2018-03-23 12:23:12 +01:00
Matt Clay aee01564a9 Clean up non-standard module shebangs. 2018-03-21 11:04:55 -07:00
Dmitry Ulyanov 1d6bc094cf Add http(s)_proxy support in yum module (#36800)
* added set_env_proxy function for setting proxy environment

Added set_env_proxy function, that set system http(s)_proxy
environment for fetching RPM if proxy settings set in yum.conf file
that fix Issue - #18979

* fix automatic field numbering specification

* changed if statement in setting http_proxy environment

* Change set_env_proxy function to function with decorator

That decorator set system proxy environment from yum.conf and revert
back to system configuration after fetching RPM

* Minor fix

- rename variable schem  to scheme
- change 'in' to 'startswith'

* change decorator set_env_proxy to decorating through contextmanager

- added import contextmanager from contextlib
- set_env_proxy now decorating through contextmanager
- fix http/https setting environment principle
2018-03-21 11:55:36 -05:00
Aleksander Kovtunenko f51a6ea832 implemented installroot option (#33613)
* fix

* move version to 2.6
2018-03-20 10:41:50 +00:00
Julien Vey 26d9de6f3e apt_repository: check attribute repo for None value (#36944) 2018-03-19 10:16:43 -04:00
Martin Krizek 5be9315603 apt: use to_native instead of str for exc (#37595) 2018-03-19 19:00:58 +05:30
Dag Wieers cdd21e2170
Clean up module documentation (#36909)
* Clean up module documentation

This PR includes:
- Removal of `default: None` (and variations)
- Removal of `required: false`
- Fixing booleans and `type: bool` where required

* Fix remaining (new) validation issues
2018-03-15 22:15:24 +01:00
Martin Krizek a6d31b6fb1
apt: better error msg when update_cache fails (#37410) 2018-03-15 17:32:25 +01:00
S. Veyrié d3df0249af maven_artifact: add verify_checksum option - fixes #31799 (#33370)
* maven_artifact: add verify_checksum option - fixes #31799

* maven_artifact: some cleaning

* Remove blank lines to please the format checker

* Now targeting 2.6...
2018-03-15 06:43:08 -04:00
Martin Krizek 995f6c7689
apt: clarify allow_unauthenticated docs (#37453)
* apt: clarify allow_unauthenticated docs

* Fix sanity check
2018-03-15 10:07:18 +01:00
Toshio Kuratomi 5bdc8fe9f6 Clarify the apt module force documentation (#37353)
The force parameter is inherently insecure.  Be clearer in the
documentation that this is the case.

Fixes #25242
2018-03-15 01:24:32 -07:00
William L Thomson Jr d1332b83ee Add support for --quiet-build and --quiet-fail to portage module
PR #36452
2018-03-12 11:19:07 +01:00
Markos Chandras 5234b78b5f modules: zypper: Optimize the 'search' subcommand (#37191)
When looking for installed packages we do not need to query
repositories since we only care about the rpmdb. As such, we can
disable all the repositories operations in order to improve the
performance of that step

Before this patch, when using 'state: present' in the zypper module,
the operation was taking about 12 seconds to complete:

time ansible-playbook foo.yml 1>/dev/null

real	0m12.614s
user	0m10.880s
sys	0m0.683s

After this patch:

time ansible-playbook foo.yml 1>/dev/null

real	0m4.193s
user	0m2.560s
sys	0m0.575s

see:
https://bugzilla.opensuse.org/show_bug.cgi?id=1084525
2018-03-09 03:28:36 -05:00
Ivan Mikheykin 58261a42e9 Auto install of python-apt without recommends.
debian:9

`apt-get install python-apt` - this will install python2.7 and python3
After this operation, *88.4 MB* of additional disk space will be used.

`apt-get install --no-install-recommends python-apt` - only python2.7
After this operation, *35.0 MB* of additional disk space will be used.

(cherry picked from commit c542e62)
2018-03-08 16:21:30 -05:00
John R Barker 6c8d40f653
yum is Python 2 only. If Python 3 use dnf (#37140)
* PY3 = dnf

Red Hat are unlikely to provide a Python 2 version of the yum bindings
as they are moving to `dnf`.

If Ansible can't find the yum Python library give the user a hint about
dnf and Python 3
2018-03-08 08:10:07 +00:00
Toshio Kuratomi 1bc860fafd
Python3 issues in maven_artifact (#37035)
Fixes #33761
2018-03-05 12:11:27 -08:00
Martin Krizek a79a5439c8
yum: fix yum version comparison (#36573) 2018-02-23 08:55:11 +01:00
Brian Coca c119d54e4a
now get_url defaults to module temp dir (#36218)
* now get_url and other modules default to module temp dir

also fixed 'bare' exception

* allow modules to work with older versions

* updated docs per feedback
2018-02-20 08:40:45 -05:00
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
Xavier Cambar cea681a5c0 npm module compatible with npm5 (#26582)
* npm module compatible with npm5

Uses the `--long` flag in `npm list` to get the `missing` key back.

* npm: add integration tests

* npm: test the module with npm 4 as well

* Remove debug tasks, use variables

* Use tests instead of filters

* Adds xcambar as a maintainer of the npm module
2018-01-19 15:47:43 +01: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
Pilou 02e965ba20 maven_artifact: fix broken import (#33749)
* Fail when lxml isn't available

* whole project requires Python >= 2.6
2017-12-13 13:54:05 +00: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 R Barker 18529a275b Bulk pep8 fixes - hand crafted (#33690)
* Bulk pep8 fixes - hand crafted

Fix by hand the remaining issues that autopep8 couldn't

* Next batch of hand crafted pep8 fixes

* Ignore W503

https://github.com/PyCQA/pycodestyle/pull/499

* Revert more of W503
2017-12-07 19:29:21 -08:00
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
John Slay 065a2fe10d Add requirements to npm module (#33641)
npm is required in order for this module to work.
2017-12-07 08:03:32 +10: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
Pilou 7fe69daa4d Modules metadata: fix invalid GitHub ID in author field (#31856)
* Replace Twitter username with GitHub ID

See 8bfa19c4af

* Replace Twitter username with GitHub ID

See 22766906b0

* Fix GitHub ID: add missing letters

See:
- nxos_banner.py: 9c6ee8d0bb
- nxos_logging.py: e37e736ddb
- net_user.py: f6a4803669

* Remove nonexistent author, use GitHub organization

See https://github.com/ansible/ansible-modules-core/pull/2880

Not sure how Ansibullbot will handle an organization ID, but
other deprecated modules already use it.

* Replace Twitter username with GitHub ID

* Replace Twitter username with GitHub ID

See bf59d1cc1e

* Replace Twitter username with GitHub ID

See d02a9016a2

* Author: use GitHub ID

See 0847bfecd672f6b2e0e4429e998df7c6e7042b1c

* Replace Twitter username with GitHub ID

See a59684fddd

* Replace Twitter username with GitHub ID

See 94f9bb962f

* Replace Twitter username with GitHub ID

See 40b7dffea8
2017-11-02 06:52:18 -04: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
René Moser e7d7a29a46 composer: return skipped if command has no --dry-run (#32010) 2017-10-22 10:04:46 +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
Lujeni 91ab88dac7 pip: Use chdir directive in the venv path (fixes #25122) (#26865) 2017-10-13 12:39:47 +02: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