febcb600f1
Use virtualenv for installation of OpenStack projects and dependencies to avoid conflicts with Python libraries installed by non-OpenStack binary packages. Change-Id: I21ecd673b2e93335b1d3dd4e279e940c9d694c3c Implements: blueprint virtualenv
105 lines
2.8 KiB
Django/Jinja
105 lines
2.8 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 \
|
|
MySQL-python \
|
|
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-pip \
|
|
python-saharaclient \
|
|
python-swiftclient \
|
|
python-troveclient \
|
|
python-tuskarclient \
|
|
python-zaqarclient \
|
|
python-openstackclient \
|
|
MySQL-python \
|
|
python-keystoneauth1 \
|
|
&& yum clean all
|
|
|
|
{% 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 install -U virtualenv \
|
|
&& virtualenv /var/lib/kolla/venv \
|
|
&& /var/lib/kolla/venv/bin/pip --no-cache-dir install -U -c requirements/upper-constraints.txt \
|
|
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 \
|
|
MySQL-python \
|
|
python-memcached
|
|
ENV PATH /var/lib/kolla/venv/bin:$PATH
|
|
|
|
{% endif %}
|