141 lines
3.9 KiB
Django/Jinja
141 lines
3.9 KiB
Django/Jinja
FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
|
|
MAINTAINER {{ maintainer }}
|
|
|
|
{% if base_distro in ['fedora', 'centos', 'oraclelinux', 'rhel'] %}
|
|
RUN yum -y install \
|
|
git \
|
|
iproute \
|
|
mariadb-libs \
|
|
openssl \
|
|
&& yum clean all
|
|
|
|
{% endif %}
|
|
{% if install_type == 'binary' %}
|
|
{% if base_distro in ['fedora', 'centos', 'oraclelinux', 'rhel'] %}
|
|
|
|
RUN yum -y install \
|
|
python-barbicanclient \
|
|
python-ceilometerclient \
|
|
python-congressclient \
|
|
python-designateclient \
|
|
python-heatclient \
|
|
python-ironicclient \
|
|
python-magnumclient \
|
|
python-manilaclient \
|
|
python-mistralclient \
|
|
python-muranoclient \
|
|
python-PyMySQL \
|
|
python-pip \
|
|
python-saharaclient \
|
|
python-swiftclient \
|
|
python-troveclient \
|
|
python-tuskarclient \
|
|
python-zaqarclient \
|
|
python-openstackclient \
|
|
python-keystoneauth1 \
|
|
&& yum clean all
|
|
|
|
{% elif base_distro in ['ubuntu'] %}
|
|
|
|
# This will prevent questions from being asked during the install
|
|
ENV DEBIAN_FRONTEND noninteractive
|
|
COPY oslo-log-bug1499620.patch /var/lib/kolla/oslo-log-bug1499620.patch
|
|
# There is no python-tuskarclient in ubuntu 14.04
|
|
RUN apt-get install -y --no-install-recommends \
|
|
python-barbicanclient \
|
|
python-ceilometerclient \
|
|
python-congressclient \
|
|
python-designateclient \
|
|
python-heatclient \
|
|
python-ironicclient \
|
|
python-magnumclient \
|
|
python-manilaclient \
|
|
python-mistralclient \
|
|
python-muranoclient \
|
|
python-pip \
|
|
python-saharaclient \
|
|
python-swiftclient \
|
|
python-troveclient \
|
|
python-zaqarclient \
|
|
python-openstackclient \
|
|
python-pymysql \
|
|
python-keystoneclient \
|
|
python-oslo.log \
|
|
openssl \
|
|
patch \
|
|
&& apt-get clean
|
|
|
|
# python-oslo-log patch to bug 1499620 (it fixed in python-oslo-log 1.11.1)
|
|
RUN patch -d /usr/lib/python2.7/site-packages -p1 < /var/lib/kolla/oslo-log-bug1499620.patch
|
|
|
|
{% endif %}
|
|
{% elif install_type == 'source' %}
|
|
{% if base_distro in ['fedora', 'centos', 'oraclelinux', 'rhel'] %}
|
|
|
|
RUN yum -y install \
|
|
gcc \
|
|
gcc-c++ \
|
|
libffi-devel \
|
|
libxml2-devel \
|
|
libxslt-devel \
|
|
mariadb-devel \
|
|
openldap-devel \
|
|
openssl-devel \
|
|
postgresql \
|
|
postgresql-devel \
|
|
python-devel \
|
|
sqlite-devel \
|
|
&& yum clean all
|
|
|
|
{% elif base_distro in ['ubuntu', 'debian'] %}
|
|
|
|
RUN apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
build-essential \
|
|
python-dev \
|
|
libssl-dev \
|
|
libmariadbclient-dev \
|
|
libxslt1-dev \
|
|
libffi-dev \
|
|
libyaml-dev \
|
|
pkg-config \
|
|
git \
|
|
&& apt-get clean
|
|
|
|
{% endif %}
|
|
|
|
ADD openstack-base-archive /openstack-base-source
|
|
RUN ln -s openstack-base-source/* /requirements \
|
|
&& mkdir /var/lib/kolla \
|
|
&& curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py \
|
|
&& python get-pip.py \
|
|
&& rm get-pip.py \
|
|
&& pip --no-cache-dir install -U virtualenv \
|
|
&& virtualenv --system-site-packages /var/lib/kolla/venv \
|
|
&& /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt \
|
|
jinja2 \
|
|
kazoo \
|
|
keystonemiddleware \
|
|
python-barbicanclient \
|
|
python-ceilometerclient \
|
|
python-congressclient \
|
|
python-designateclient \
|
|
python-heatclient \
|
|
python-ironicclient \
|
|
python-magnumclient \
|
|
python-manilaclient \
|
|
python-mistralclient \
|
|
python-muranoclient \
|
|
python-saharaclient \
|
|
python-swiftclient \
|
|
python-troveclient \
|
|
python-tuskarclient \
|
|
python-zaqarclient \
|
|
python-openstackclient \
|
|
pymysql \
|
|
python-memcached \
|
|
six
|
|
ENV PATH /var/lib/kolla/venv/bin:$PATH
|
|
|
|
{% endif %}
|