Bug 1162732

Summary: KeyError: 'server-product-environment'
Product: [Fedora] Fedora Reporter: Kamil Páral <kparal>
Component: anacondaAssignee: David Shea <dshea>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 21CC: anaconda-maint-list, g.kaviyarasu, jonathan, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard: abrt_hash:d2affbaae42c943414620e9bcbb27d86a5244b1c971bb6a6a82a408116cbc675
Fixed In Version: python-blivet-0.61.10-1.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-11-25 03:06:14 UTC Type: ---
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
File: anaconda-tb
none
File: anaconda.log
none
File: environ
none
File: lsblk_output
none
File: nmcli_dev_list
none
File: os_info
none
File: program.log
none
File: storage.log
none
File: syslog
none
File: ifcfg.log
none
File: packaging.log none

Description Kamil Páral 2014-11-11 15:18:00 UTC
Description of problem:
I receive this crash when I boot F21 TC1 Server DVD, but change inst.stage2=<value> argument to inst.repo=<value> argument (the same value). Because... why not, it should work, shouldn't it? :)

The crash occurs once all metadata are downloaded. Which itself is a second bug I believe. I have given it a concrete inst.repo argument pointing to he local media, but anaconda still tries to download yum metadata for all available repos from nearest mirrors. That does not happen by default, by default the installation source is immediately set to Local media, and I would expect the same behavior with inst.repo=<local cdrom> (this happens even if I use inst.repo=cdrom:sr0).

Version-Release number of selected component:
anaconda-21.48.13-1

The following was filed automatically by anaconda:
anaconda 21.48.13-1 exception report
Traceback (most recent call first):
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/software.py", line 362, in _allAddons
    [""] + \
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/software.py", line 368, in _get_selected_addons
    addons = self._allAddons()
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/software.py", line 108, in _apply
    addons = self._get_selected_addons()
  File "/usr/lib64/python2.7/site-packages/pyanaconda/ui/gui/spokes/software.py", line 241, in _initialize
    self._apply()
  File "/usr/lib64/python2.7/threading.py", line 766, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib64/python2.7/site-packages/pyanaconda/threads.py", line 227, in run
    threading.Thread.run(self, *args, **kwargs)
KeyError: 'server-product-environment'

Additional info:
addons:         com_redhat_kdump
cmdline:        /usr/bin/python  /sbin/anaconda
cmdline_file:   BOOT_IMAGE=vmlinuz initrd=initrd.img inst.repo=hd:LABEL=Fedora-S-21_T1-x86_64 quiet
executable:     /sbin/anaconda
hashmarkername: anaconda
kernel:         3.17.2-300.fc21.x86_64
product:        Fedora"
release:        Cannot get release name.
type:           anaconda
version:        Fedora

Comment 1 Kamil Páral 2014-11-11 15:18:04 UTC
Created attachment 956309 [details]
File: anaconda-tb

Comment 2 Kamil Páral 2014-11-11 15:18:05 UTC
Created attachment 956310 [details]
File: anaconda.log

Comment 3 Kamil Páral 2014-11-11 15:18:06 UTC
Created attachment 956311 [details]
File: environ

Comment 4 Kamil Páral 2014-11-11 15:18:08 UTC
Created attachment 956312 [details]
File: lsblk_output

Comment 5 Kamil Páral 2014-11-11 15:18:09 UTC
Created attachment 956313 [details]
File: nmcli_dev_list

Comment 6 Kamil Páral 2014-11-11 15:18:10 UTC
Created attachment 956314 [details]
File: os_info

Comment 7 Kamil Páral 2014-11-11 15:18:12 UTC
Created attachment 956315 [details]
File: program.log

Comment 8 Kamil Páral 2014-11-11 15:18:15 UTC
Created attachment 956316 [details]
File: storage.log

Comment 9 Kamil Páral 2014-11-11 15:18:17 UTC
Created attachment 956317 [details]
File: syslog

Comment 10 Kamil Páral 2014-11-11 15:18:18 UTC
Created attachment 956318 [details]
File: ifcfg.log

Comment 11 Kamil Páral 2014-11-11 15:18:19 UTC
Created attachment 956319 [details]
File: packaging.log

Comment 12 David Shea 2014-11-11 18:31:44 UTC
(In reply to Kamil Páral from comment #0)
> Description of problem:
> I receive this crash when I boot F21 TC1 Server DVD, but change
> inst.stage2=<value> argument to inst.repo=<value> argument (the same value).
> Because... why not, it should work, shouldn't it? :)

No, it shouldn't. inst.repo=hd:... corresponds to the kickstart harddrive command, which doesn't look for a repository at the given path. It looks for an ISO containing the repo in a directory at the given path. If you really want to explicitly specify the repo on the installation media on a CD, use inst.repo=cdrom.

The error is because we're failing to setup the hdiso install source, because there isn't one, and then continuing with half-initialized system repos, which I suppose we shouldn't.

We can fix this but I want to emphasize that you should feel bad.

Comment 13 Kamil Páral 2014-11-12 10:08:55 UTC
OK, after reading the documentation once again, you're right, and I feel bad.

However, the second paragraph in comment 0 is still valid, even with inst.repo=cdrom:<device>. I would expect anaconda to automatically use (only) the repo available on cdrom, but it enables network repos as well. Is that going to be fixed as well?

The use case for finding this is a bit convoluted. I needed to check that anaconda automatically applies updates.img from images/ dir. And I figured, I could boot from DVD (because setting up pxe boot takes more time), replacing inst.stage2= target with a remote one (thus I can put an updates.img there), but use the local repository from the DVD (thus I don't wait so long for all packages to be downloaded, it's really slow here). So I experimented with inst.stage2=nfs:... and inst.repo=cdrom:... . Quite an edge case, I would say. But hey, just noting what I've found.

Comment 14 David Shea 2014-11-12 15:56:47 UTC
(In reply to Kamil Páral from comment #13)
> However, the second paragraph in comment 0 is still valid, even with
> inst.repo=cdrom:<device>. I would expect anaconda to automatically use
> (only) the repo available on cdrom, but it enables network repos as well. Is
> that going to be fixed as well?

Yeah, I agree. It could happen any time the inst.repo repo, or possibly kickstart repos, fails to setup. That is going to be fixed: if the repo you specify fails, anaconda will not fall back to a network repo. It'll just tell you that the repo failed.

Comment 15 Fedora Update System 2014-11-19 01:53:38 UTC
anaconda-21.48.15-1.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/anaconda-21.48.15-1.fc21

Comment 16 Fedora Update System 2014-11-20 09:05:48 UTC
Package anaconda-21.48.15-1.fc21, python-blivet-0.61.10-1.fc21:
* should fix your issue,
* was pushed to the Fedora 21 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing anaconda-21.48.15-1.fc21 python-blivet-0.61.10-1.fc21'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-15420/python-blivet-0.61.10-1.fc21,anaconda-21.48.15-1.fc21
then log in and leave karma (feedback).

Comment 17 Fedora Update System 2014-11-22 20:19:55 UTC
Package python-blivet-0.61.10-1.fc21, anaconda-21.48.16-1.fc21:
* should fix your issue,
* was pushed to the Fedora 21 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing python-blivet-0.61.10-1.fc21 anaconda-21.48.16-1.fc21'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-15420/anaconda-21.48.16-1.fc21,python-blivet-0.61.10-1.fc21
then log in and leave karma (feedback).

Comment 18 Fedora Update System 2014-11-25 03:06:14 UTC
python-blivet-0.61.10-1.fc21, anaconda-21.48.16-1.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.