summaryrefslogtreecommitdiff
path: root/docker/openstack-base
diff options
context:
space:
mode:
authorPaul Bourke <paul.bourke@oracle.com>2015-10-12 18:09:04 +0000
committerPaul Bourke <paul.bourke@oracle.com>2015-10-15 12:07:48 +0100
commit72a8f5aabd31079d6fe8f0442a487689b4ba7bde (patch)
tree3f4336629b9f195f14923f7d96c9628334c5c743 /docker/openstack-base
parente47d4b8506e990c3f466676a1108de1d1b7ece40 (diff)
downloadkolla-72a8f5aabd31079d6fe8f0442a487689b4ba7bde.tar.gz
kolla-72a8f5aabd31079d6fe8f0442a487689b4ba7bde.zip
Use openstack/requirements for repeatable builds
Add this repo to the openstack-base image, and use the upper-constraints to install the client packages. Will follow up with dependant patches for the child images to reduce the risk of breaking everything at once. -- Background: Many dependencies in the requirements.txt of OpenStack components have quite loose version requirements, in many cases they will just specify a minimum version (e.g. WebOb>=1.2.3). The result of this is that given a Kolla image for Keystone built today, another build of the exact same ref of Keystone could be broken tomorrow, due to it picking up a later unsupported dependency. The https://github.com/openstack/requirements repo exists to bring some sanity to this situation. (It also outlines other problems it solves in it's readme). We also may like to checkout the stable/liberty branch of this project in our liberty branch, once it appears. Change-Id: Iccb4e99f8e4b6659a19c1817d0f4c697824af25c Partial-Bug: #1505306
Diffstat (limited to 'docker/openstack-base')
-rw-r--r--docker/openstack-base/Dockerfile.j26
1 files changed, 4 insertions, 2 deletions
diff --git a/docker/openstack-base/Dockerfile.j2 b/docker/openstack-base/Dockerfile.j2
index 345a1b604..fda017c0c 100644
--- a/docker/openstack-base/Dockerfile.j2
+++ b/docker/openstack-base/Dockerfile.j2
@@ -73,10 +73,12 @@ RUN apt-get install -y --no-install-recommends \
{% endif %}
-RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py \
+ADD openstack-base-archive /openstack-base-source
+RUN ln -s openstack-base-source/* /requirements \
+ && 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 \
+ && pip --no-cache-dir install -U -c requirements/upper-constraints.txt \
python-barbicanclient \
python-ceilometerclient \
python-congressclient \