Commit graph

23 commits

Author SHA1 Message Date
Toshio Kuratomi
138f2cd847 Fix for dnf groupinstall
Previous fix to group install introduced a different bug trying to
strip() group names at the wrong level.  This patch fixes that.

Fixes #3358
2016-12-08 11:35:04 -05:00
Toshio Kuratomi
82d2a4810e Fix installation of environment groups
In dnf, environment groups are separate from groups.  Need to handle
them separately when calling the API.

Fixes #2178

After upstream review, hande dnf-2.0 mandatory packages in groups

If mandatory packages in a group are not installed, a group will report
failure.  Fix this by catching the error and reporting after trying
to install the other packages and groups in the transaction.
2016-12-08 11:35:04 -05:00
Igor Gnatenko
16896194a8 dnf: fix compatibility with DNF 2.0 (#3325)
* dnf: fix compatibility with DNF 2.0

* Reimplement (copy) old dnf.cli.commands.parse_spec_group_file(),
  upstream uses argparse since 2.0.
* add_remote_rpm() has been changed to the add_remote_rpms()

Closes: https://github.com/ansible/ansible-modules-extras/issues/3310
Signed-off-by: Igor Gnatenko <ignatenko@redhat.com>

* fixup! dnf: fix compatibility with DNF 2.0
2016-12-08 11:35:03 -05:00
Toshio Kuratomi
09c56140cd * Fix for spaces in the package spec. * Fix for python-2.6 compat 2016-12-08 11:35:03 -05:00
Toshio Kuratomi
d558c55cee install dnf python bindings if possible
Fixes #14427
2016-12-08 11:35:03 -05:00
Michael Scherer
b4c3d32366 Mark conf_file as a path, for various user expansion 2016-12-08 11:34:06 -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
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
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
Toshio Kuratomi
8c8c63110e Move existing check for root before we make expensive network calls 2016-12-08 11:33:31 -05:00
Toshio Kuratomi
7ccd6a4de0 Change documented requirement from dnf to python-dnf as dnf could be taken to mean the command line tool.
Fixes #1032
2016-12-08 11:33:25 -05:00
ToBeReplaced
faee617b21 Fix fail_json call in _mark_package_install 2016-12-08 11:33:23 -05:00
ToBeReplaced
ad54ce6125 Rewrite dnf module.
This fully implements all expected functionality of the dnf module.

Group removal may behave oddly due to hiccups in tagging groups as being
installed.

A pkg_types option could be added to specify the group package types.
2016-12-08 11:33:19 -05:00
ToBeReplaced
cdf603448a Add support for state=latest and * 2016-12-08 11:33:19 -05:00
ToBeReplaced
337a1db62e Add change reporting, enablerepo support, and gpgcheck.
disable_gpg_check was configured backwards, so it was toggled. Typos in
enablerepo/disablerepo are removed. fill_sack() calls are relocated to
occur after repo decisions. The "changed" key is now set for new
installations.
2016-12-08 11:33:19 -05:00
Igor Gnatenko
e178abb501 typo fix in oneliners
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2016-12-08 11:33:19 -05:00
Toshio Kuratomi
a1235d91a2 Fix nevra, fixes to docs and copyright info 2016-12-08 11:33:19 -05:00
Igor Gnatenko
e8f3059300 add ability to install packages
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2016-12-08 11:33:19 -05:00
Igor Gnatenko
7a6af06f8b remove all and start from scratch
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2016-12-08 11:33:19 -05:00
Greg DeKoenigsberg
c65a612d1f Changes to author formatting, remove emails 2016-12-08 11:32:51 -05:00
Toshio Kuratomi
29692366aa Bandaid dnf module to temporarily fix some major problems
- Backport config file handling from the DNF module rewrite #527
  (Current config handling does not work with dnf and leads to
  tracebacks when run as an unprivileged user).
- Make a mandatory requirement on yum-utils (for /usr/bin/repoquery)
  because none of the fallback code works for dnf (it's unported yum API
  code).

Both of these issues will be fixed better in the dnf rewrite when it is
feature complete.

Fixes #471
2016-12-08 11:32:42 -05:00
Brian Coca
2753cd186a moar quotes 2016-12-08 11:32:39 -05:00
Toshio Kuratomi
8c63ebcf5e Move dnf and bower plugins to proper subdirs 2016-12-08 11:32:24 -05:00
Renamed from lib/ansible/modules/extras/packaging/dnf.py (Browse further)