Split critical-path-base

This is intended to help with openQA test focus. We split up the
base group by purpose: things for installing (anaconda), things
for building packages (build), things for building deliverables
(compose), and things for runtime (base). This should allow us
to avoid unnecessarily running the openQA tests on e.g. gcc
updates (which is a useless waste of time), and potentially allow
us to run different/extended tests on e.g. anaconda updates. I
intentionally didn't add additional packages to the split groups
yet, we can do that as a follow-up, but I did replace livecd-tools
with lorax in the compose group, as we use things from lorax for
creating images now.

Signed-off-by: Adam Williamson <awilliam@redhat.com>
This commit is contained in:
Adam Williamson 2023-01-31 16:43:56 -08:00
parent 351cd80d68
commit f8160f3bab

View File

@ -697,6 +697,16 @@
https://fedoraproject.org/wiki/Critical_path_package
@core is also considered part of the Critical Path.
-->
<group>
<id>critical-path-anaconda</id>
<_name>Critical Path (anaconda)</_name>
<_description>A set of packages that provide the Critical Path functionality for installing Fedora with anaconda</_description>
<default>false</default>
<uservisible>false</uservisible>
<packagelist>
<packagereq type="mandatory">anaconda</packagereq>
</packagelist>
</group>
<group>
<id>critical-path-apps</id>
<_name>Critical Path (Applications)</_name>
@ -715,18 +725,34 @@
<uservisible>false</uservisible>
<!-- @core is already in the critical path, there is no need to duplicate things from @core here -->
<packagelist>
<packagereq type="mandatory">anaconda</packagereq>
<packagereq type="mandatory">dbus-broker</packagereq>
<packagereq type="mandatory">dracut</packagereq>
<packagereq type="mandatory">gcc-c++</packagereq>
<packagereq type="mandatory">initial-setup</packagereq>
<packagereq type="mandatory">kernel</packagereq>
<packagereq type="mandatory">livecd-tools</packagereq>
<packagereq type="mandatory">NetworkManager</packagereq>
<!-- Build/Compose tools -->
<packagereq type="mandatory">pungi</packagereq>
</packagelist>
</group>
<group>
<id>critical-path-build</id>
<_name>Critical Path (Build)</_name>
<_description>A set of packages that provide the Critical Path functionality for building Fedora packages</_description>
<default>false</default>
<uservisible>false</uservisible>
<packagelist>
<packagereq type="mandatory">gcc-c++</packagereq>
<packagereq type="mandatory">redhat-rpm-config</packagereq>
<packagereq type="mandatory">rpm-build</packagereq>
</packagelist>
</group>
<group>
<id>critical-path-compose</id>
<_name>Critical Path (Compose)</_name>
<_description>A set of packages that provide the Critical Path functionality for building Fedora deliverables</_description>
<default>false</default>
<uservisible>false</uservisible>
<packagelist>
<packagereq type="mandatory">lorax</packagereq>
<packagereq type="mandatory">pungi</packagereq>
<packagereq type="mandatory">selinux-policy</packagereq>
<packagereq type="mandatory">setup</packagereq>
</packagelist>