diff options
| author | Paul Bourke <paul.bourke@oracle.com> | 2015-10-12 18:09:04 +0000 |
|---|---|---|
| committer | Paul Bourke <paul.bourke@oracle.com> | 2015-10-15 12:07:48 +0100 |
| commit | 72a8f5aabd31079d6fe8f0442a487689b4ba7bde (patch) | |
| tree | 3f4336629b9f195f14923f7d96c9628334c5c743 /docker | |
| parent | e47d4b8506e990c3f466676a1108de1d1b7ece40 (diff) | |
| download | kolla-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')
| -rw-r--r-- | docker/openstack-base/Dockerfile.j2 | 6 |
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 \ |
