diskimage-builder/elements/yum
Ian Wienand e42066d685 Cleanup yum downloading
Using "yum --downloadonly" breaks the abstraction of
"install-packages" because it downloads to the yum cache.  It also
acts funny if the package is already there.

Add an argument to "-d" which is the directory to download to.  dnf
has "download" built in, and for the old case use yumdownloader which
acts about the same.  Ensure it is installed, since it comes in
yum-utils.

Also a slight cleanup of the getopt parsing so it's easier to have the
required argument for -d

Thus we can remove most of the stuff in 15-remove-grub.  The check for
centos6 and it's lack of grub2 is clarified.  All the stuff about
having to remove the package, purging the cache etc so yum gets the
right thing is no longer relevant.  The long section of commented out
code at the end is also removed for clarity.

I tested this with an F21, F22 & centos (6) build

Change-Id: Id1e430e7d050a0b99ac449e2ea435e06cda1c4e6
2015-07-20 09:08:06 +10:00
..
bin Cleanup yum downloading 2015-07-20 09:08:06 +10:00
cleanup.d Make $DIB_YUM_REPO_CONF accept a list of repo files 2015-05-22 19:37:29 -07:00
extra-data.d Make $DIB_YUM_REPO_CONF accept a list of repo files 2015-05-22 19:37:29 -07:00
post-install.d Work around yum/dnf differences 2015-06-24 09:20:45 +10:00
pre-install.d Work around yum/dnf differences 2015-06-24 09:20:45 +10:00
root.d Standarise tracing for scripts 2015-02-12 10:41:32 +11:00
README.rst Make $DIB_YUM_REPO_CONF accept a list of repo files 2015-05-22 19:37:29 -07:00

yum

Provide yum specific image building glue.

RHEL/Fedora/CentOS and other yum based distributions need specific yum customizations.

Customizations include caching of downloaded yum packages outside of the build chroot so that they can be reused by subsequent image builds. The cache increases image building speed when building multiple images, especially on slow connections. This is more effective than using an HTTP proxy as a yum cache since the same rpm from different mirrors is often requested.

Custom yum repository configurations can also be applied by defining DIB_YUM_REPO_CONF to a space separated list of repo configuration files. The files will be copied to /etc/yum.repos.d/ during the image build, and then removed at the end of the build. Each repo file should be named differently to avoid a filename collision.