aboutsummaryrefslogtreecommitdiff
path: root/docker/openvswitch/openvswitch-db-server
diff options
context:
space:
mode:
Diffstat (limited to 'docker/openvswitch/openvswitch-db-server')
-rw-r--r--docker/openvswitch/openvswitch-db-server/Dockerfile.j23
-rw-r--r--docker/openvswitch/openvswitch-db-server/ovs_ensure_configured.sh17
2 files changed, 19 insertions, 1 deletions
diff --git a/docker/openvswitch/openvswitch-db-server/Dockerfile.j2 b/docker/openvswitch/openvswitch-db-server/Dockerfile.j2
index 8692f8cee..1bcc6e71e 100644
--- a/docker/openvswitch/openvswitch-db-server/Dockerfile.j2
+++ b/docker/openvswitch/openvswitch-db-server/Dockerfile.j2
@@ -1,7 +1,8 @@
FROM {{ namespace }}/{{ image_prefix }}openvswitch-base:{{ tag }}
MAINTAINER {{ maintainer }}
+COPY ovs_ensure_configured.sh /usr/local/bin/kolla_ensure_openvswitch_configured
COPY extend_start.sh /usr/local/bin/kolla_extend_start
-RUN chmod 755 /usr/local/bin/kolla_extend_start
+RUN chmod 755 /usr/local/bin/kolla_ensure_openvswitch_configured /usr/local/bin/kolla_extend_start
{{ include_footer }}
diff --git a/docker/openvswitch/openvswitch-db-server/ovs_ensure_configured.sh b/docker/openvswitch/openvswitch-db-server/ovs_ensure_configured.sh
new file mode 100644
index 000000000..99bae3e87
--- /dev/null
+++ b/docker/openvswitch/openvswitch-db-server/ovs_ensure_configured.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+bridge=$1
+port=$2
+
+ovs-vsctl br-exists $bridge; rc=$?
+if [[ $rc == 2 ]]; then
+ changed=changed
+ ovs-vsctl --no-wait add-br $bridge
+fi
+
+if [[ ! $(ovs-vsctl list-ports $bridge) =~ $(echo "\<$port\>") ]]; then
+ changed=changed
+ ovs-vsctl --no-wait add-port $bridge $port
+fi
+
+echo $changed