diff --git a/docker/base/Dockerfile.j2 b/docker/base/Dockerfile.j2 index 2f5b5ea988..60603ec5fc 100644 --- a/docker/base/Dockerfile.j2 +++ b/docker/base/Dockerfile.j2 @@ -40,6 +40,10 @@ RUN CURRENT_DISTRO_RELEASE=$(awk '{match($0, /[0-9]+/,version)}END{print version && cat /tmp/kolla_bashrc >> /etc/bashrc \ && sed -i 's|^\(override_install_langs=.*\)|# \1|' /etc/yum.conf +{% block base_yum_conf %} +COPY yum.conf /etc/yum.conf +{% endblock %} + #### BEGIN REPO ENABLEMENT {% set base_yum_repo_files = [ ] %} diff --git a/docker/base/yum.conf b/docker/base/yum.conf new file mode 100644 index 0000000000..6714771e86 --- /dev/null +++ b/docker/base/yum.conf @@ -0,0 +1,9 @@ +[main] +keepcache=0 +logfile=/var/log/yum.log +exactarch=1 +obsoletes=1 +gpgcheck=1 +plugins=1 +installonly_limit=0 +skip_missing_names_on_install=False diff --git a/docker/macros.j2 b/docker/macros.j2 index 8c323cde6a..3be0ef5e1e 100644 --- a/docker/macros.j2 +++ b/docker/macros.j2 @@ -1,7 +1,7 @@ {% macro install_packages(packages) -%} {% if packages is defined and packages|length > 0 -%} {% if base_distro in ['centos', 'oraclelinux', 'rhel'] -%} - RUN yum --setopt skip_missing_names_on_install=False -y install {{ packages | join(' ') }} && yum clean all + RUN yum -y install {{ packages | join(' ') }} && yum clean all {%- elif base_distro in ['debian', 'ubuntu'] -%} {#- debian_package_install is a utility method to build up an appropriate diff --git a/releasenotes/notes/yum_conf-36fef802e8c003f1.yaml b/releasenotes/notes/yum_conf-36fef802e8c003f1.yaml new file mode 100644 index 0000000000..8998c3a846 --- /dev/null +++ b/releasenotes/notes/yum_conf-36fef802e8c003f1.yaml @@ -0,0 +1,4 @@ +--- +features: + - Allow to configure yum settings, and provide a default yum.conf that is + overridable via the base_yum_conf jinja2 block.