jboss-openshift / cct_module

CEKit modules shared by OpenShift container images
Apache License 2.0
46 stars 79 forks source link

Enable maven AppStream module via conf file #390

Closed jmtd closed 3 years ago

jmtd commented 3 years ago

By providing /etc/dnf/modules.d/maven.module before attempting to install Maven, we can get access to Maven 3.6 from the AppStream repository without having to enable the module with full-fat DNF. This means we can install Maven 3.6 with microdnf.

The maven.module file has to be in-place before attempting to install Maven. Since CeKit processes "packages:" before "execute:" within the context of a module, we need to put the new "execute:" stuff in a new module that is depended upon by those that use "packages:" to install maven.

jmtd commented 3 years ago

Example size savings from a local build of ubi8/openjdk-8:

jmtd commented 3 years ago

list of packages that are not installed a result of this change

-dnf-4.2.23-4.el8.noarch
-dnf-data-4.2.23-4.el8.noarch
-elfutils-default-yama-scope-0.180-1.el8.noarch
-elfutils-libs-0.180-1.el8.x86_64
-gdbm-1.18-1.el8.x86_64
-gdbm-libs-1.18-1.el8.x86_64
-ima-evm-utils-1.1-5.el8.x86_64
-libcomps-0.1.11-4.el8.x86_64
-libnsl2-1.2.0-2.20180605git4a062cf.el8.x86_64
-libreport-filesystem-2.9.5-15.el8.x86_64
-libtirpc-1.1.4-4.el8.x86_64
-platform-python-3.6.8-31.el8.x86_64
-platform-python-pip-9.0.3-18.el8.noarch
-platform-python-setuptools-39.2.0-6.el8.noarch
-python3-dnf-4.2.23-4.el8.noarch
-python3-gpg-1.13.1-3.el8.x86_64
-python3-hawkey-0.48.0-5.el8.x86_64
-python3-libcomps-0.1.11-4.el8.x86_64
-python3-libdnf-0.48.0-5.el8.x86_64
-python3-libs-3.6.8-31.el8.x86_64
-python3-pip-wheel-9.0.3-18.el8.noarch
-python3-rpm-4.14.3-4.el8.x86_64
-python3-setuptools-wheel-39.2.0-6.el8.noarch
-rpm-build-libs-4.14.3-4.el8.x86_64