Bug 1409650

Summary: [depsolv] dnf did not install required version of package
Product: [Fedora] Fedora Reporter: Lukas Slebodnik <lslebodn>
Component: appliance-toolsAssignee: Neal Gompa <ngompa13>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: agrimm, mgoldman, ngompa13, packaging-team-maint, rpm-software-management, virt-maint, vmukhame
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-01-02 18:39:49 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
debugdata from dnf none

Description Lukas Slebodnik 2017-01-02 18:27:08 UTC
Description of problem:
I tried to install fixed version of appliance-tools BZ1409536 which
should install appliance-tools-007.8-13 and required dependencies from SRPM livecd-tools-24.0-3.fc26. But it installed packages just from rawhide repository
which contains just a livecd-tools-24.0-2.fc26. (the latest version was built just few minutes ago)

Version-Release number of selected component (if applicable):
sh# rpm -q libsolv python3-hawkey hawkey dnf
libsolv-0.6.24-3.fc26.x86_64
python3-hawkey-0.7.0-0.7gitf9b798c.fc26.x86_64
package hawkey is not installed
dnf-2.0.0-2.fc26.noarch

How reproducible:
Deterministic

Steps to Reproduce:
1. docker run -ti --rm fedora:rawhide bash
2. dnf update --setopt=debuglevel=0 -y
3. dnf install --setopt=debuglevel=0 -y https://kojipkgs.fedoraproject.org//packages/appliance-tools/007.8/13.fc26/noarch/appliance-tools-007.8-13.fc26.noarch.rpm
4. rpm -q appliance-tools python2-imgcreate

Actual results:
appliance-tools-007.8-13.fc26.noarch
python2-imgcreate-24.0-2.fc26.x86_64
package parted is not installed

Expected results:
appliance-tools-007.8-13.fc26.noarch
python2-imgcreate-24.0-3.fc26.x86_64
parted-3.2-22.fc26.x86_64

Additional info:
sh# rpm -q --requires appliance-tools | grep imgcreate
python-imgcreate >= 24.0-3

It is caused because version is not ised with the name of package but with "Provides"


sh# yum-deprecated install https://kojipkgs.fedoraproject.org//packages/appliance-tools/007.8/13.fc26/noarch/appliance-tools-007.8-13.fc26.noarch.rpm
Yum command has been deprecated, use dnf instead.
See 'man dnf' and 'man yum2dnf' for more information.

appliance-tools-007.8-13.fc26.noarch.rpm                    |  62 kB  00:00     
Examining /var/tmp/yum-root-sfTT4J/appliance-tools-007.8-13.fc26.noarch.rpm: appliance-tools-007.8-13.fc26.noarch
/var/tmp/yum-root-sfTT4J/appliance-tools-007.8-13.fc26.noarch.rpm: does not update installed package.
Error: Nothing to do

Comment 1 Lukas Slebodnik 2017-01-02 18:33:28 UTC
Created attachment 1236702 [details]
debugdata from dnf

Comment 2 Igor Gnatenko 2017-01-02 18:35:21 UTC
This is clearly bug in appliance-tools!

Current rawhide's imgcreate version is 1:24.0-2, not 0:24.0-2. So, include Epoch and it will work.

Comment 3 Neal Gompa 2017-01-02 18:39:49 UTC
I hate Epochs...

Fixed in appliance-tools-007.8-14.fc26.

Comment 4 Lukas Slebodnik 2017-01-02 18:49:52 UTC
I tested a scratch build with following change and it works as expected
@@ -22,7 +22,7 @@ Patch1: appliance-tools-partitioning-fixes.patch
 Patch2: 0001-Fix-import-for-compatibility-with-livecd-tools-v24.patch
 
 # Ensure system deps are installed (rhbz#1409536)
-Requires: python-imgcreate >= 24.0-3
+Requires: python-imgcreate >= 1:24.0-3
 Requires: python-urlgrabber
 Requires: curl rsync kpartx
 Requires: zlib

sh# dnf install https://kojipkgs.fedoraproject.org//work/tasks/646/17150646/appliance-tools-007.8-13.ls.fc26.noarch.rpm
Last metadata expiration check: 0:34:53 ago on Mon Jan 02 18:13:52 2017 UTC.
Error: conflicting requests
  - nothing provides python-imgcreate >= 1:24.0-3 needed by appliance-tools-007.8-13.ls.fc26.noarch
(try to add '--allowerasing' to command line to replace conflicting packages)

Igor, thank you very much.