Bug 1145264 - F21 desktop livecd ISO volume ID is truncated, doesn't fit version number
Summary: F21 desktop livecd ISO volume ID is truncated, doesn't fit version number
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: koji
Version: 21
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
Assignee: Dennis Gilmore
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: AcceptedFreezeException
Depends On:
Blocks: F21FinalFreezeException
TreeView+ depends on / blocked
 
Reported: 2014-09-22 17:19 UTC by Cole Robinson
Modified: 2014-11-21 20:07 UTC (History)
14 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-11-21 17:02:56 UTC


Attachments (Terms of Use)
Updated patch (2.58 KB, text/plain)
2014-11-20 17:07 UTC, Cole Robinson
no flags Details

Description Cole Robinson 2014-09-22 17:19:56 UTC
The ISO volume ID for the Fedora 21 workstation livecd is 'Fedora-Live-Workstation-x86_64-2', which doesn't actually say 21 in it, and libosinfo can't use it to detect the fedora version for boxes/virt-manager.

FWIW the server DVD volume label is: Fedora-S-21_A_T7-x86_64

Comment 1 Dennis Gilmore 2014-09-22 17:29:32 UTC
reassigning to the correct component.

we put some logic in pungi to do substitutions, we will need to do the same in livecd-tools

Comment 2 Brian Lane 2014-09-22 18:07:18 UTC
Sure would be easier if these naming decisions were made in ONE place and then passed to the tools using the existing arguments. Like --fslabel.

Comment 3 Brian Lane 2014-09-25 21:56:23 UTC
Well, I had a nice plan to move the shortening logic into lorax so everything could get to it, this may still be useful, but for this bug it won't help since whatever is calling livecd-creator is what did the truncation, not livecd-creator itself.

eg.

INFO: Running in chroot: ['/usr/bin/livecd-creator', '-c', '/tmp/koji-image-f21-build-7616453.ks', '-d', '-v', '--logfile', '/tmp/livecd.log', '--cache', '/tmp/koji-livecd', '-f', 'Fedora-Live-Workstation-x86_64-2']

from:
http://koji.fedoraproject.org/koji/taskinfo?taskID=7616453


So I guess this is actually a koji bug.

Comment 4 satellitgo 2014-10-15 23:17:44 UTC
https://bugzilla.redhat.com/show_bug.cgi?id=1149782 ?

Comment 5 Zeeshan Ali 2014-10-29 16:37:52 UTC
Should this be a simple fix? Its been a month now and without this fix, its not really possible to add proper support for F21 in libosinfo and gnome-boxes.

Comment 6 Cole Robinson 2014-10-30 18:00:02 UTC
I've sent a koji patch that should fix this:

https://lists.fedoraproject.org/pipermail/buildsys/2014-October/004411.html

Comment 7 Cole Robinson 2014-11-15 18:14:28 UTC
Proposing as an exception for final freeze. If this isn't fixed before GA, tools that depend on the volume ID are kinda screwed

Comment 8 Cole Robinson 2014-11-15 19:21:08 UTC
I also started a thread on infrastructure list:

https://lists.fedoraproject.org/pipermail/infrastructure/2014-November/015134.html

Comment 9 Kevin Fenzi 2014-11-18 23:36:10 UTC
So we discussed this today in IRC.

All the choices are pretty bad, but the koji patch for now is the least bad. ;( 

It does mean we will have to carry that patch forward until f21 is eol... since we may have to do respins. ;( 

Dennis is going to make a patched koji package and put in for a infra freeze break to apply it to builders.

Comment 10 Mike Ruckman 2014-11-19 18:33:15 UTC
Discussed in 2014-11-19 blocker review meeting. Breaking virt tools is very inconvenient, accepted. Please provide the fix as soon as possible, ideally before TC3 compose request (Monday 2014-11-24).

Comment 11 Kevin Fenzi 2014-11-20 17:04:36 UTC
We applied a patch to koji last night to fix this. 

It seems to have some issues however, and all live media failed compose. 

The traceback is: 

Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/koji/daemon.py", line 1161, in runTask
    response = (handler.run(),)
  File "/usr/lib/python2.7/site-packages/koji/tasks.py", line 157, in run
    return koji.util.call_with_argcheck(self.handler, self.params, self.opts)
  File "/usr/lib/python2.7/site-packages/koji/util.py", line 139, in call_with_argcheck
    return func(*args, **kwargs)
  File "/usr/sbin/kojid", line 2448, in handler
    cmd.extend(['-f', self._shortenVolID(name, version, release)])
  File "/usr/sbin/kojid", line 2423, in _shortenVolID
    if name.contains(k):
AttributeError: 'str' object has no attribute 'contains'

Crobinso is going to whip up another patch and we will hopefully get it applied later today.

Comment 12 Cole Robinson 2014-11-20 17:07:23 UTC
Created attachment 959447 [details]
Updated patch

Note, still untested on my end

Comment 13 Adam Williamson (Fedora) 2014-11-20 20:00:35 UTC
I don't think that works either. Just calling 'variable.replace()' just *returns* the substituted string, it doesn't update the value of the variable.

Also, that does not handle the 'release' substitution.

The relevant block needs to look like this:

        for k, v in subsitutions.iteritems():
            if k in name:
                name = name.replace(k, v)
            if k in version:
                version = version.replace(k, v)
            if k in release:
                release = release.replace(k, v)

that works for me when stuck into a simple test script, Cole's version does not.

Comment 14 Adam Williamson (Fedora) 2014-11-20 20:04:48 UTC
oh, and to strictly meet the naming policy - https://fedoraproject.org/wiki/User:Adamwill/Draft_fedora_image_naming_policy - the live version should have several more substitutions for all the non-Product names (and it doesn't really need Server, as there's no Server live). See the list of shortenings for "$LOADOUT".

Comment 15 Adam Williamson (Fedora) 2014-11-20 22:51:07 UTC
also, while we're fixing the volume IDs we should really fix the image file names as well.

Comment 16 Kevin Fenzi 2014-11-21 17:02:56 UTC
http://koji.fedoraproject.org/koji/taskinfo?taskID=8198847 is a test run with the patched koji. 

Should solve this for f21 at least. 

However, we will need another fix or different fix for rawhide, as it's labels have 'rawhide' which cuts things off further than '21' does.

Comment 17 Adam Williamson 2014-11-21 20:03:20 UTC
substitute 'rh' for 'rawhide'?


Note You need to log in before you can comment on or make changes to this bug.