Bug 1516213

Summary: fedfind.release.get_release bad output for rawhide url on f26
Product: [Fedora] Fedora Reporter: Michel Normand <normand>
Component: fedfindAssignee: Adam Williamson <awilliam>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 26CC: awilliam
Target Milestone: ---   
Target Release: ---   
Hardware: powerpc   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-01-23 09:42:21 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:
Bug Depends On:    
Bug Blocks: 1071880    

Description Michel Normand 2017-11-22 09:51:41 UTC
Description of problem:
fedfind.release.get_release bad output for rawhide url  
on a PowerPC machine installed with Fedora f26.

I would expect release 27 (or 28) but get '26' as detailed by output of python snipet code below.

===
    print "For location: {0}".format(location)
    try:
        rel = fedfind.release.get_release(url=location)
        print "cid and release:", rel.cid, rel.release
    except ValueError:
        print "Could not find a release at {0}".format(location)
        return
    version = rel.release
    try:
        currrel = str(fedfind.helpers.get_current_release())
        prevrel = str(int(currrel) - 1)
    except ValueError:
        currrel = prevrel = "FEDFINDERROR"

    print "passed   version: ", version
    print "current  release: ", currrel
    print "previous release: ", prevrel
===
For location: https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose
cid and release: Fedora-Rawhide-20171121.n.0 rawhide
passed   version:  rawhide
current  release:  26
previous release:  25
===

* the PowerPC machine is updated with last available fedfind rpms
===
$dnf repolist --enabled -v |grep -E 'Repo-id|metalink'
Repo-id      : fedora
Repo-metalink: https://mirrors.fedoraproject.org/metalink?repo=fedora-26&arch=ppc64le
Repo-id      : updates
Repo-metalink: https://mirrors.fedoraproject.org/metalink?repo=updates-released-f26&arch=ppc64le
===
$rpm -qa |grep fedfind
python3-fedfind-3.7.1-1.fc26.noarch
python2-fedfind-3.7.1-1.fc26.noarch
fedfind-3.7.1-1.fc26.noarch
===

Comment 1 Michel Normand 2017-11-22 13:04:36 UTC
If I build locally the last available fedfind version (3.8.3) and install it in my fedora 26 machine then there is no more failure:

===
$rpm -qa |grep fedfind
python2-fedfind-3.8.3-1.fc26.noarch
fedfind-3.8.3-1.fc26.noarch
python3-fedfind-3.8.3-1.fc26.noarch
===
For location: https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose
cid and release: Fedora-Rawhide-20171121.n.0 rawhide
passed   version:  rawhide
current  release:  27
previous release:  26
===

So need to provide last fedfind version for f26 and f27 repositories.

Comment 2 Adam Williamson 2017-11-22 18:11:02 UTC
It is in updates-testing.

Comment 3 Adam Williamson 2018-01-23 09:42:21 UTC
fedfind 3.8.3 went stable for everything now, so closing.

Note just for reference: the errors here had nothing to do with the particular release instance you were getting. `get_current_release()` is a standalone helper function, you can just import fedfind.helpers and then call it, you don't have to instantiate any Release class before, or even import fedfind.release at all.