Bug 1277638 - anaconda fails to handle kickstart line like "repo --name=updates"
Summary: anaconda fails to handle kickstart line like "repo --name=updates"
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: anaconda
Version: 23
Hardware: x86_64
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Anaconda Maintenance Team
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: https://fedoraproject.org/wiki/Common...
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-11-03 17:23 UTC by Adam Williamson
Modified: 2015-11-10 00:22 UTC (History)
5 users (show)

Fixed In Version: anaconda-24.6-1
Clone Of:
Environment:
Last Closed: 2015-11-06 21:07:09 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
the traceback you get in text mode (244.14 KB, text/plain)
2015-11-03 17:24 UTC, Adam Williamson
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Bugzilla 1279658 0 unspecified CLOSED TUI runs space check even if packaging spoke failed, but this is unsafe 2021-02-22 00:41:40 UTC

Internal Links: 1279658

Description Adam Williamson 2015-11-03 17:23:13 UTC
The documentation for kickstarts - https://github.com/rhinstaller/pykickstart/blob/master/docs/kickstart-docs.rst#repo - says this:

"Note: If you want to enable one of the repos in /etc/anaconda.repos.d that is disabled by default (like "updates"), you should use --name= but none of the other options. anaconda will look for a repo by this name automatically. Providing a baseurl or mirrorlist URL will result in anaconda attempting to add another repo by the same name, which will cause a conflicting repo error."

However, in Fedora 23, this does not work. See these two kickstarts:

https://www.happyassassin.net/ks/base-net.ks
https://www.happyassassin.net/ks/named-repo.ks

they are identical, except the second has an added line "repo --name=updates". Using the first results in a working install, the second results in the installer stopping at the hub with the INSTALLATION SOURCE spoke in an error condition: "Error setting up base repository". If you run the install in text mode, you instead get a crash.

This worked fine in F22 and I think previous releases, so it could be quite bad (I suspect quite a lot of people might be expecting it to to work). We should probably add this to the anaconda automated testing stuff.

Comment 1 Adam Williamson 2015-11-03 17:24:38 UTC
Created attachment 1089156 [details]
the traceback you get in text mode

This is the traceback you get when hitting the bug in text mode - I guess this might actually be a separate bug where the text mode fails to handle errors properly, crashing instead of putting the user at the hub screen with the spoke in an error condition?

Comment 2 Adam Williamson 2015-11-03 17:27:04 UTC
Here's /tmp/packaging.log , showing the problem pretty clearly:

17:25:49,332 INFO packaging: configuring base repo
12:21:50,366 INFO packaging: added repo: 'anaconda' - https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-23&arch=x86_64
12:21:50,368 ERR packaging: PayloadError: Repository updates has no mirror or baseurl set

(I didn't edit it, that's the whole thing)

Comment 3 Chris Lumens 2015-11-03 18:19:07 UTC
This is perfect for a thing to add to kickstart_tests.

Comment 4 Adam Williamson 2015-11-03 21:06:01 UTC
So yeah, this is an over-enthusiastic check, added in this commit:

https://github.com/rhinstaller/anaconda/commit/0813f1b0efc08b2a5193cb27fc22b35d07e36d90

"# one of these must be set to create new repo" is not true, as we can see in _add_repo, this case is explicitly handled:

        if repo.id in self._base.repos:
            if not url and not mirrorlist:
                self._base.repos[repo.id].enable()

the check in updateBaseRepo needs to be smarter.

Comment 5 Adam Williamson 2015-11-03 21:53:30 UTC
https://github.com/rhinstaller/anaconda/pull/437

Comment 6 Adam Williamson 2015-11-03 22:07:25 UTC
You can test the fix for this with F23 Final using kernel param:

inst.updates=https://www.happyassassin.net/updates/1277638-2.img

Comment 7 David Shea 2015-11-06 20:05:43 UTC
PR is pushed, thanks.

Comment 8 Adam Williamson 2015-11-06 20:24:48 UTC
I'm still planning to do a test case for this and perhaps try and fix the fact that text installs crash in this case (I think that's a bug too), FWIW - got some other stuff on my plate first though.

Comment 9 David Shea 2015-11-06 20:29:36 UTC
What, you want to see if it works, too? Jeez.

Comment 10 Adam Williamson 2015-11-06 21:07:09 UTC
we can leave this bug closed, I think, just wanted to note I hadn't forgot about the follow-up.

Comment 11 Adam Williamson 2015-11-10 00:22:05 UTC
OK, so I spent a bit of time looking into the TUI crash, and I'm pretty sure I understand exactly what's going on, but wasn't sure what was the best approach to fixing it, so I filed a new bug with an explanation:

https://bugzilla.redhat.com/show_bug.cgi?id=1279658

working on the kickstart test next.


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