From f4506ddd60de14e368b2f3599715369738766dd5 Mon Sep 17 00:00:00 2001 From: Steven Dake Date: Wed, 1 Apr 2015 14:38:15 -0700 Subject: [PATCH] Remove building of pam+noaudit and place in copr instead COPR is a repository for third party packages built by the Fedora build system. Instead of dragging in 250MB of dependencies to build pam, build externally and load only the RPM into the image. The pam that is built externally is built with the --with-noaudit flag and a Provides: pam line. Change-Id: I28396996943d2fdc12b253faf62af8623c8b0e73 --- docker/centos-rdo-base/Dockerfile | 14 ++++---------- docker/fedora-rdo-base/Dockerfile | 12 ++++++++++++ 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/docker/centos-rdo-base/Dockerfile b/docker/centos-rdo-base/Dockerfile index 44e26af52b..5fa7ab1ab6 100644 --- a/docker/centos-rdo-base/Dockerfile +++ b/docker/centos-rdo-base/Dockerfile @@ -4,6 +4,7 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla) # Set up repositories RUN yum install -y https://rdo.fedorapeople.org/rdo-release.rpm RUN curl https://copr.fedoraproject.org/coprs/larsks/crux/repo/epel-7/larsks-crux-epel-7.repo -o /etc/yum.repos.d/larsks-crux-epel-7.repo +RUN curl https://copr.fedoraproject.org/coprs/sdake/pam.noaudit/repo/epel-7/sdake-pam.noaudit-epel-7.repo -o /etc/yum.repos.d/sdake-pam.noaudit-epel-7.repo # CentOS 7.1 workaround @@ -96,21 +97,14 @@ RUN yum install -y \ python-wsme \ && yum clean all -# This is dirty like zebra. This works aorund a bug in Ubuntu 14.04 LTS. The +# This is dirty like zebra. This works around a bug in Ubuntu 14.04 LTS. The # --net=host option does not work on ubuntu 14.04 because of a kernel bug. One # workaround is to buid pam without authentication. # See: # https://registry.hub.docker.com/u/sequenceiq/pam/ # -RUN yum install -y tar bzip2 yum-utils rpm-build make - -RUN yum-builddep -y pam -RUN yumdownloader --source pam -RUN rpmbuild --rebuild --define 'WITH_AUDIT 0' --define 'dist +noaudit' pam*.src.rpm -RUN rpm -Uvh --oldpackage ~/rpmbuild/RPMS/*/pam*+noaudit*.rpm - -RUN rm -f /*.rpm -RUN rm -rf ~/rpmbuild +RUN rpm -e --nodeps pam +RUN yum -y install pam+noaudit && yum clean all # End dirty like zebra RUN mkdir -p /opt/kolla diff --git a/docker/fedora-rdo-base/Dockerfile b/docker/fedora-rdo-base/Dockerfile index a6f2400ff1..f41cac97ed 100644 --- a/docker/fedora-rdo-base/Dockerfile +++ b/docker/fedora-rdo-base/Dockerfile @@ -5,6 +5,8 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla) RUN yum install -y https://rdo.fedorapeople.org/rdo-release.rpm RUN yum -y install dnf dnf-plugins-core && yum clean all RUN dnf copr enable -y larsks/crux +run dnf copr enable -y sdake/pam.noaudit + # Update packages RUN yum update -y && yum clean all @@ -91,6 +93,16 @@ RUN yum install -y \ python-wsme \ && yum clean all +# This is dirty like zebra. This works around a bug in Ubuntu 14.04 LTS. The +# --net=host option does not work on ubuntu 14.04 because of a kernel bug. One +# workaround is to build pam without authentication. +# See: +# https://registry.hub.docker.com/u/sequenceiq/pam/ +# +RUN rpm -e --nodeps pam +RUN yum -y install pam+noaudit && yum clean all +# End dirty like zebra + RUN mkdir -p /opt/kolla ADD service_hosts.sh /opt/kolla/service_hosts.sh ADD kolla-common.sh /opt/kolla/kolla-common.sh