aboutsummaryrefslogtreecommitdiff
path: root/docker/neutron/neutron-openvswitch-agent
diff options
context:
space:
mode:
Diffstat (limited to 'docker/neutron/neutron-openvswitch-agent')
-rw-r--r--docker/neutron/neutron-openvswitch-agent/Dockerfile.j232
-rwxr-xr-xdocker/neutron/neutron-openvswitch-agent/config-external.sh20
-rwxr-xr-xdocker/neutron/neutron-openvswitch-agent/start.sh14
3 files changed, 66 insertions, 0 deletions
diff --git a/docker/neutron/neutron-openvswitch-agent/Dockerfile.j2 b/docker/neutron/neutron-openvswitch-agent/Dockerfile.j2
new file mode 100644
index 000000000..ad12e5511
--- /dev/null
+++ b/docker/neutron/neutron-openvswitch-agent/Dockerfile.j2
@@ -0,0 +1,32 @@
+FROM {{ namespace }}/{{ base_distro }}-{{ install_type }}-neutron-base:{{ tag }}
+MAINTAINER Kolla Project (https://launchpad.net.kolla)
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'fedora', 'oraclelinux'] %}
+
+# Install required packages
+RUN yum install -y \
+ openstack-neutron-openvswitch \
+ openvswitch \
+ && yum clean all
+
+ {% endif %}
+{% elif install_type == 'source' %}
+ {% if base_distro in ['centos', 'fedora', 'oraclelinux'] %}
+
+# Install required packages
+RUN yum install -y \
+ #TODO: will be addressed later
+ https://rdoproject.org/repos/openstack-kilo/rdo-release-kilo.rpm \
+ openvswitch \
+ && yum clean all
+
+ {% endif %}
+{% endif %}
+
+COPY start.sh /
+COPY config-external.sh /opt/kolla/
+
+CMD ["/start.sh"]
+
+{{ include_footer }}
diff --git a/docker/neutron/neutron-openvswitch-agent/config-external.sh b/docker/neutron/neutron-openvswitch-agent/config-external.sh
new file mode 100755
index 000000000..552d69861
--- /dev/null
+++ b/docker/neutron/neutron-openvswitch-agent/config-external.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+SOURCE="/opt/kolla/neutron-openvswitch-agent/neutron.conf"
+TARGET="/etc/neutron/neutron.conf"
+OWNER="neutron"
+
+if [[ -f "$SOURCE" ]]; then
+ cp $SOURCE $TARGET
+ chown ${OWNER}: $TARGET
+ chmod 0644 $TARGET
+fi
+
+SOURCE="/opt/kolla/neutron-openvswitch-agent/ml2_conf.ini"
+TARGET="/etc/neutron/plugins/ml2/ml2_conf.ini"
+OWNER="neutron"
+
+if [[ -f "$SOURCE" ]]; then
+ cp $SOURCE $TARGET
+ chown ${OWNER}: $TARGET
+ chmod 0644 $TARGET
+fi
diff --git a/docker/neutron/neutron-openvswitch-agent/start.sh b/docker/neutron/neutron-openvswitch-agent/start.sh
new file mode 100755
index 000000000..6d62ff65d
--- /dev/null
+++ b/docker/neutron/neutron-openvswitch-agent/start.sh
@@ -0,0 +1,14 @@
+#!/bin/bash
+set -o errexit
+
+CMD="/usr/bin/neutron-openvswitch-agent"
+ARGS="--config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini"
+
+# Loading common functions.
+source /opt/kolla/kolla-common.sh
+source /opt/kolla/config-sudoers.sh
+
+# Execute config strategy
+set_configs
+
+exec $CMD $ARGS