I wonder what changed in Fedora 26? This (presumably) has been working on earlier releases.
Maybe the --mirrorlist option for the repo command previously accepted a metalink, but now it doesn't? Hmm.
As a temporary workaround you can put "no_updates_repos" into your recipe's ksmeta.
The ks_meta="no_updates_repos" works and is a reasonable workaround before Fedora 26 was released. But with the GA getting near, we really should be prepared to be able to use the release together with updates from day 1.
Is there a plan to address the issue before Fedora 26 GA?
Well there are no "plans" for Beaker, due to https://mojo.redhat.com/docs/DOC-1127927 ... but I agree, it will be good to get this sorted before Fedora 26 GA. I will take a look next week.
I can't find any indication in that docs that --mirrorlist ever *should* accept a metalink XML file (even though it clearly has in past versions of Anaconda). I guess it only worked like this as a happy accident in the past?
I also can't find any change in pykickstart or anaconda which would have taken this behaviour anyway though...
I'm sure that we put in this line into the kickstart templates:
repo --name=fedora-updates --mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=updates-released-f26&arch=x86_64
to mimic what happens if you do an actual Fedora netinstall manually, with no kickstart. In that case it will pull packages from updates by default. But I am not sure where the canonical source of *that* behaviour is either. Is the updates repo magically injected by some code inside Fedora's build of Anaconda? I need to find that so I can see exactly what URL they use (mirrorlist, metalink, something else...)
So I was trying to figure out exactly what the Fedora netinstall images do... the canonical source seems to be https://pagure.io/pungi-fedora although I cannot find any configuration for the netinstall image specifically in there. Regardless, that seems to refer back to the kickstarts in https://pagure.io/fedora-kickstarts and there I see a snippet which has:
repo --name=fedora --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=fedora-$releasever&arch=$basearch
repo --name=updates --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f$releasever&arch=$basearch
#repo --name=updates-testing --mirrorlist=https://mirrors.fedoraproject.org/mirrorlist?repo=updates-testing-f$releasever&arch=$basearch
Note /mirrorlist as opposed to /metalink which we have.
I am guessing when this was originally added into the Beaker kickstart templates we just picked the wrong URL by mistake.
Presumably we can just swap /metalink to /mirrorlist and everything will work -- although I will need to test older Fedora releases to ensure that we can still provision them with this change.
Tested this on beaker-devel with Fedora 18, Fedora 21, and Fedora 26 (random selection). Looks fine.
Beaker 24.3 has been released.