Page MenuHomeFreeBSD

release: Rework VM package selection using sets
ClosedPublic

Authored by cperciva on Mon, Oct 6, 5:35 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Oct 10, 9:34 PM
Unknown Object (File)
Fri, Oct 10, 9:34 PM
Unknown Object (File)
Fri, Oct 10, 3:48 PM
Unknown Object (File)
Fri, Oct 10, 9:41 AM
Unknown Object (File)
Tue, Oct 7, 4:21 PM
Unknown Object (File)
Mon, Oct 6, 11:29 AM
Unknown Object (File)
Mon, Oct 6, 9:22 AM
Unknown Object (File)
Mon, Oct 6, 8:23 AM
Subscribers

Details

Summary

Filtering the list of packages broke with the introduction of package
sets, since we excluded FreeBSD-src.* but still included
FreeBSD-set-src, which transitively included the FreeBSD-src and
FreeBSD-src-sys packages. This could be fixed by excluding package
sets, but that would be fragile, potentially breaking upgrades if
new packages are introduced.

Instead, start with an explicit set of package sets:
base, base-dbg
lib32, lib32-dbg
kernels, kernels-dbg
tests
and filter the package sets; the EC2 "small" and "builder" AMIs
filter out everything except "base" and "kernels".

Note that using FreeBSD-set-kernels may pose a problem in the future
if we start shipping packages for multiple differently-configured
kernels. That will be addressed if and when that problem arises.

MFC after: 3 days
Sponsored by: https://www.patreon.com/cperciva

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

regarding set-kernels, i'm not sure this should exist at all, but we needed somewhere to put the kernel packages that wasn't base, so that's fine for now (it certainly won't change in 15.0). i would suggest explicitly adding FreeBSD-kernel-generic{,-dbg} instead, but they're essentially the same thing right now.

aside from that this looks fine, with the caveat that i don't really know anything about the VM images.

This revision is now accepted and ready to land.Mon, Oct 6, 5:42 AM
In D52922#1209228, @ivy wrote:

regarding set-kernels, i'm not sure this should exist at all, but we needed somewhere to put the kernel packages that wasn't base, so that's fine for now (it certainly won't change in 15.0). i would suggest explicitly adding FreeBSD-kernel-generic{,-dbg} instead, but they're essentially the same thing right now.

Yeah, I went with the set in order to avoid the powerpc "the generic kernel isn't named generic" thing. We don't actually build VM images for powerpc, but theoretically someone else might?

Agreed that FreeBSD-set-kernels is a bit of a weird one though.

the only potential problem i can see is if someone builds with KERNCONF=GENERIC X Y Z, then they will get all 4 kernels included if they build a VM image, which might not be desirable. but i think this is enough of an edge case that we don't need to address it right now.