Commit Graph

153 Commits (7144a8889786f6ceafc1ff3639708d540a6f91a9)

Author SHA1 Message Date
Chris Weber c3a1efee4f Fixed exception compatablity for py3 (and 2.4 in yum_repository.py) (#2369)
* Fixed exception compatablity for py3 (and 2.4 in yum_repository.py)

* Moved Import
2016-12-08 11:34:20 -05:00
Jiri Tyr 8d09b74908 Fixing wrong type of params option in yum_repository module (#2371)
This commit fixes incorrect type of the "params" option of the
"yum_repository" module. Without this fix the value of the "params"
option is read as a string instead of as a dictionary which makes
it impossible to define any additional YUM repository parameters.
2016-12-08 11:34:20 -05:00
Dmitry Marakasov a6ee449d6b Improve documentation for pkgng module (#2338)
According to module checklist:

- Descriptions should always start with a Capital letter and end with a
  full stop.
- Ensure that you make use of U() for urls, C() for files and options,
  I() for params, M() for modules.
2016-12-08 11:34:19 -05:00
Brian Coca beabafa99f minor fixes
removed unused imports
rearranged basic import
added if/main for testing/importability
2016-12-08 11:34:19 -05:00
Dmitry Marakasov 472bf733e0 Freebsd pkgng autoremove support (#2324)
* Whitespace cleanup

* Add autoremove capability to pkgng

* Add "default" and "choices" documentnation items for autoremove
2016-12-08 11:34:18 -05:00
Adrian Likins f096cd6322 Fix pkgutil "upgrade_catalog must be one of" err (#2149)
The arg spec for update_catalog include 'type=bool'
and 'choices=["yes", "no"] which can never both be
true.

Remove the 'choices' directive, and update doc string.

Fixes #2144
2016-12-08 11:34:17 -05:00
Alex e031f37407 zypper: (Bugfix) Change command option --verbose to --details which is supported since 2008 (#2224) 2016-12-08 11:34:15 -05:00
Rene Moser 9ba13c2d1c homebrew_cask: fix doc version_added for install_options
See #2086
2016-12-08 11:34:12 -05:00
Robin Roth 107c257293 refactor zypper module
* refactor zypper module

Cleanup:
* remove mention of old_zypper (no longer supported)
  * requirement goes up to zypper 1.0, SLES 11.0, openSUSE 11.1
  * allows to use newer features (xml output)
  * already done for zypper_repository
* use zypper instead of rpm to get old version information, based on work by @jasonmader
* don't use rpm, zypper can do everything itself
* run zypper only twice, first to determine current state, then to apply changes

New features:
* determine change by parsing zypper xmlout
* determine failure by checking return code
* allow simulataneous installation/removal of packages (using '-' and '+' prefix)
  * allows to swap out alternatives without removing packages depending
    on them
* implement checkmode, using zypper --dry-run
* implement diffmode
* implement 'name=* state=latest' and 'name=* state=latest type=patch'
* add force parameter, handed to zypper to allow downgrade or change of vendor/architecture

Fixes/Replaces:
* fixes #1627, give changed=False on installed patches
* fixes #2094, handling URLs for packages
* fixes #1461, fixes #546, allow state=latest name='*'
* fixes #299, changed=False on second install, actually this was fixed earlier, but it is explicitly tested now
* fixes #1824, add type=application
* fixes #1256, install rpm from path, this is done by passing URLs and paths directly to zypper

* fix typo in package_update_all

* minor fixes

* remove commented code block
* bump version added to 2.2
* deal with zypper return codes 103 and 106
2016-12-08 11:34:12 -05:00
Indrajit Raychaudhuri dd59cadfd6 Fix homebrew_cask examples 2016-12-08 11:34:12 -05:00
Indrajit Raychaudhuri b718e10a88 Add `version_added` doc property for `install_options` in homebrew_cask 2016-12-08 11:34:12 -05:00
Indrajit Raychaudhuri 028aa0828c Add additional examples for parameter `install_options` in homebrew_cask 2016-12-08 11:34:11 -05:00
Enric Lluelles be64687bf5 Adding install_options to homebrew_cask 2016-12-08 11:34:11 -05:00
Robin Roth 5464b71561 Zypper repository rewrite (#1990)
* Remove support for ancient zypper versions

Even SLES11 has zypper 1.x.

* zypper_repository: don't silently ignore repo changes

So far when a repo URL changes this got silently ignored (leading to
incorrect package installations) due to this code:

    elif 'already exists. Please use another alias' in stderr:
        changed = False

Removing this reveals that we correctly detect that a repo definition
has changes (via repo_subset) but don't indicate this as change but as a
nonexistent repo. This makes us currenlty bail out silently in the above
statement.

To fix this distinguish between non existent and modified repos and
remove the repo first in case of modifications (since there is no force
option in zypper to overwrite it and 'zypper mr' uses different
arguments).

To do this we have to identify a repo by name, alias or url.

* Don't fail on empty values

This unbreaks deleting repositories

* refactor zypper_repository module

* add properties enabled and priority
* allow changing of one property and correctly report changed
* allow overwrite of multiple repositories by alias and URL
* cleanup of unused code and more structuring

* respect enabled option

* make zypper_repository conform to python2.4

* allow repo deletion only by alias

* check for non-existant url field and use alias instead

* remove empty notes and aliases

* add version_added for priority and overwrite_multiple

* add version requirement on zypper and distribution

* zypper 1.0 is enough and exists

* make suse versions note, not requirement

based on comment by @alxgu
2016-12-08 11:34:07 -05:00
Jiri Tyr 48c20dd981 Describing the _none_ value of the proxy option (#2053) 2016-12-08 11:34:06 -05:00
Michael Scherer b4c3d32366 Mark conf_file as a path, for various user expansion 2016-12-08 11:34:06 -05:00
Christopher M. Fuhrman 310b7ce3d8 pkgin: Fix bad regexp which did not catch packages such as p5-SVN-Notify
The previous version of my regexp did not take into account packages
such as 'p5-Perl-Tidy' or 'p5-Test-Output', so use a greedy match up to
the last occurrance of '-' for matching the package.  This regex has
been extensively tested using all packages as provided by pkgsrc-2016Q1[1].

Footnotes:
[1]  http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/?only_with_tag=pkgsrc-2016Q1
2016-12-08 11:34:06 -05:00
Jasper Lievisse Adriaanse 0fb01e45fb Sprinkle some LANG/LC_* where command output is parsed (#2019) 2016-12-08 11:34:05 -05:00
Jasper Lievisse Adriaanse 8913f1a11d Tweak and extend the pkgin module
- make path to pkgin a global and stop passing it around; it's not going
  to change while ansible is running
- add support for several new options:
  * upgrade
  * full_upgrade
  * force
  * clean
- allow for update_cache to be run in the same task as upgrading/installing
  packages instead of needing a separate task for that
2016-12-08 11:34:05 -05:00
Joerg Fiedler 518b03d73f add chroot flag to pkgng in order to allow installation of packages into chroot environments, e.g. jails (#1218) 2016-12-08 11:34:04 -05:00
Jasper Lievisse Adriaanse 3a319b9a84 support for 'update_cache' in pkgin module 2016-12-08 11:34:04 -05:00
Michael Scherer a21ab5b990 Use type='path' for reposdir, since that's a path 2016-12-08 11:34:01 -05:00
Michael Scherer dc94ce72c7 Use boolean instead of "yes" + choice for most option
This enable a more standard behavior with others modules
2016-12-08 11:34:01 -05:00
Michael Scherer 2a0c9bb3a2 Use type 'path' for rootdir, for pkgng 2016-12-08 11:34:01 -05:00
Brian Coca 0ebabc50e4 change name to be a list type
remove implicit split that expects a , separated string, let list type
deal with multiple possible compatible input types.
also removed unused imports
2016-12-08 11:34:00 -05:00
Matthew Gamble b58eaca7e8 Remove dead code from pacman module
The manual check to see if get_bin_path() returned anything is
redundant, because we pass True to the required parameter of
get_bin_path(). This automatically causes the task to fail if the pacman
binary isn't available. Therefore, the code within the if statement
being removed is never called.
2016-12-08 11:33:59 -05:00
saez0pub 029b608e1e Prevent reinstallation in case of group package 2016-12-08 11:33:56 -05:00
Will Keeling 876fe06290 Better handling of package groups in pacman module 2016-12-08 11:33:53 -05:00
Toshio Kuratomi c602d49d42 Fail due to no dnf module installed earlier as we use a dnf utility function to determine if we have permission to install packages. 2016-12-08 11:33:53 -05:00
Jiri Tyr bb194b03bc Removing parameter from yum_repository module 2016-12-08 11:33:53 -05:00
Jiri Tyr 709ae10207 Adding more options to the yum_repository module 2016-12-08 11:33:53 -05:00
Konstantin Shalygin 3956549e6c Fix recurse delete. Add force update_cache feature. 2016-12-08 11:33:52 -05:00
Rene Moser e9667eb542 doc: replace yumrepo with yum_repository 2016-12-08 11:33:51 -05:00
Rene Moser 84259eb2d6 rename yumrepo to yum_repository 2016-12-08 11:33:51 -05:00
Jan Chaloupka 6e201948bc dnf module: package not installed with state=latest
dnf: name=PACKAGE state=latest is reponsible for two use cases:
- to install a package if not already installed.
- to update the package to the latest if already installed.

The latter use cases is not handled properly as base.upgrade does not
throw dnf.exceptions.MarkingError if a package is not installed.

Setting base.conf.best = True ensures a package is installed or
updated to the latest when calling base.install.

Sign-off: jsilhan@redhat.com
Sign-off: jchaloup@redhat.com
2016-12-08 11:33:49 -05:00
Jiri Tyr 014d78e78d Adding params option into the yumrepo module 2016-12-08 11:33:48 -05:00
Toshio Kuratomi 96f1bd82c0 Allow dnf to remove dependent packages of a package that is being removed
Fixes #1517
2016-12-08 11:33:48 -05:00
Daniel Jakots ffc291bc9a fix the spelling of vim's flavor in the example 2016-12-08 11:33:46 -05:00
Toshio Kuratomi 255c4b01a8 Remove duplicate documentation fields 2016-12-08 11:33:46 -05:00
Scott Bonds 7f1ccad39b add python 2.5 requirement and ansible 2.1 version_added 2016-12-08 11:33:45 -05:00
Scott Bonds 056a532d75 add ports support in openbsd_pkg 2016-12-08 11:33:45 -05:00
Toshio Kuratomi ad0d2c1747 Update for modules which import json.
Some do not use the json module directly so don't need import json.
Some needed to fallback to simplejson with no traceback if neither was installed

Fixes #1298
2016-12-08 11:33:44 -05:00
Alexander Winkler dca9d618f0 fixed inline for more compatibility 2016-12-08 11:33:43 -05:00
Alexander Winkler c730bd6f1c Added update_catalog and some error handling 2016-12-08 11:33:43 -05:00
Michael Scherer d504253257 Simplify the code and remove use_unsafe_shell=True
While there is no security issue with this shell snippet, it
is better to not rely on shell and avoid use_unsafe_shell.
2016-12-08 11:33:41 -05:00
Matt Martz 22733a7574 Fix tabbed indentation in packaging/os/pkgutil.py 2016-12-08 11:33:40 -05:00
Michael Scherer df195b3076 Replace choices=BOOLEANS by type='bool', fix #1326 2016-12-08 11:33:40 -05:00
Marc Mettke 43d2e3ad68 Pacman Module Fixes
Update: query_package documentation
Fix: Number of Packages to Updated was one to high,
     'cause of counting the '\n'
Fix: Pacman was reinstalling state=latest packages,
     even when it was unable to load the remote version
2016-12-08 11:33:40 -05:00
Guido Günther 13deae9b8f zypper: Add returncode to result
This will be used in integration tssts and makes the whole thing
more similar to the yum module.
2016-12-08 11:33:37 -05:00
Jiri tyr d4d24bac60 Adding yumrepo module
This patch is adding a new module which allows to add and remove YUM
repository definitions. The module implements all repository options
as described in the `yum.conf` manual page.
2016-12-08 11:33:36 -05:00