promenade/Dockerfile
Mark Burnett 3d7c567f8c Update versions for testing
- Tiller and helm to 2.5.0
- Kubernetes to 1.6.8

Tiller 2.5 adds a verbosity flag which we are using, so the older
version not having this flag is causing test failures.

Kubernetes 1.6.4 seems to not be assigning IPs to static pods, therefore
they don't properly get added to services (in particular, this effects
the calico-etcd service).

Change-Id: I9d8a55dc2b5d248eb6bd3c820fe33f0f827bc83d
2017-08-16 15:07:09 -05:00

55 lines
2.0 KiB
Docker

# Copyright 2017 The Promenade Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
FROM python:3.6
ENV CNI_VERSION=v0.5.2 \
HELM_VERSION=v2.5.0 \
KUBECTL_VERSION=v1.6.8 \
KUBELET_VERSION=v1.6.8
VOLUME /etc/promenade
VOLUME /target
RUN mkdir /promenade
WORKDIR /promenade
RUN set -ex \
&& export BIN_DIR=/assets/usr/local/bin \
&& mkdir -p $BIN_DIR \
&& curl -Lo $BIN_DIR/kubelet https://storage.googleapis.com/kubernetes-release/release/$KUBELET_VERSION/bin/linux/amd64/kubelet \
&& curl -Lo $BIN_DIR/kubectl https://storage.googleapis.com/kubernetes-release/release/$KUBECTL_VERSION/bin/linux/amd64/kubectl \
&& chmod 555 $BIN_DIR/kubelet \
&& chmod 555 $BIN_DIR/kubectl \
&& mkdir -p /assets/opt/cni/bin \
&& curl -L https://github.com/containernetworking/cni/releases/download/$CNI_VERSION/cni-amd64-$CNI_VERSION.tgz | tar -zxv -C /assets/opt/cni/bin/ \
&& curl -L https://storage.googleapis.com/kubernetes-helm/helm-${HELM_VERSION}-linux-amd64.tar.gz | tar -zxv -C /tmp linux-amd64/helm \
&& mv /tmp/linux-amd64/helm $BIN_DIR/helm \
&& chmod 555 $BIN_DIR/helm \
&& curl -Lo /usr/local/bin/cfssl https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 \
&& chmod 555 /usr/local/bin/cfssl \
&& apt-get update -q \
&& apt-get install --no-install-recommends -y \
libyaml-dev \
rsync \
&& rm -rf /var/lib/apt/lists/*
COPY requirements-frozen.txt /promenade
RUN pip install --no-cache-dir -r requirements-frozen.txt
COPY ./assets/ /assets/
COPY . /promenade
RUN pip install -e /promenade