diff --git a/docker/openvswitch-base/Dockerfile.j2 b/docker/openvswitch-base/Dockerfile.j2 index 6d5b668..85d07db 100644 --- a/docker/openvswitch-base/Dockerfile.j2 +++ b/docker/openvswitch-base/Dockerfile.j2 @@ -1,7 +1,20 @@ FROM {{ image_spec("base-tools") }} MAINTAINER {{ maintainer }} +{% if ovs_version == "system" %} RUN apt-get -y install --no-install-recommends \ openvswitch-switch \ && apt-get clean - +{% else %} +RUN apt-get update && \ + apt-get -y install --no-install-recommends gcc libc6-dev libssl-dev libcap-ng-dev make module-init-tools && \ + curl -Lo openvswitch-{{ ovs_version }}.tar.gz {{ url.ovs }}/openvswitch-{{ ovs_version }}.tar.gz && \ + tar -xvzf openvswitch-{{ ovs_version }}.tar.gz && \ + rm -rf openvswitch-{{ ovs_version }}.tar.gz && \ + cd openvswitch-{{ ovs_version }} && \ + ./configure --prefix=/usr --localstatedir=/var --sysconfdir=/etc && \ + make && make install && make clean && \ + rm -rf openvswitch-{{ ovs_version }} && \ + apt-get purge -y gcc libc6-dev libssl-dev libcap-ng-dev && \ + apt-get clean +{% endif %} diff --git a/service/files/defaults.yaml b/service/files/defaults.yaml index 1dbe6e9..a446195 100644 --- a/service/files/defaults.yaml +++ b/service/files/defaults.yaml @@ -71,3 +71,9 @@ sources: openstack/networking-calico: git_url: https://github.com/openstack/networking-calico.git git_ref: master + +versions: + ovs_version: "system" + +url: + ovs: http://openvswitch.org/releases