Dockerfiles for Networking-SFC Container

Networking-SFC is a neutron big-tent project
Kolla does not have Networking-SFC agent support for now. This
is essential for Service Function Chaining use case. Build Networking-SFC
Container.

Change-Id: I67b4d6e061dbe31e2211cd3210726ab4c30cd087
Partially-Implements: blueprint enable-networking-sfc-support
This commit is contained in:
prithiv 2016-07-29 15:46:30 +01:00 committed by Prithiv
parent 5ce4de6b2b
commit eb41179a73
4 changed files with 47 additions and 3 deletions

View File

@ -0,0 +1,26 @@
FROM {{ namespace }}/{{ image_prefix }}neutron-base:{{ tag }}
MAINTAINER {{ maintainer }}
{% if install_type == 'binary' %}
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
&& /bin/false
{% elif install_type == 'source' %}
ADD neutron-networking-sfc-agent-archive /neutron-networking-sfc-agent-source
RUN ln -s neutron-networking-sfc-agent-source/* neutron_networking-sfc-agent \
&& /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /neutron_networking-sfc-agent \
&& cp /neutron_networking-sfc-agent/etc/neutron/rootwrap.d/* /etc/neutron/rootwrap.d \
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/neutron/rootwrap.conf
{% endif %}
COPY extend_start.sh /usr/local/bin/kolla_neutron_extend_start
RUN chmod 755 /usr/local/bin/kolla_neutron_extend_start
{% block neutron_networking_sfc_agent_footer %}{% endblock %}
{% block footer %}{% endblock %}
{{ include_footer }}
USER neutron

View File

@ -0,0 +1,8 @@
#!/bin/bash
# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases
# of the KOLLA_BOOTSTRAP variable being set, including empty.
if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then
neutron-db-manage --subproject networking-sfc --config-file /etc/neutron/neutron.conf upgrade head
exit 0
fi

View File

@ -234,6 +234,10 @@ SOURCES = {
'type': 'url',
'location': ('http://tarballs.openstack.org/neutron-lbaas/'
'neutron-lbaas-master.tar.gz')},
'neutron-networking-sfc-agent': {
'type': 'url',
'location': ('http://tarballs.openstack.org/networking-sfc/'
'networking-sfc-master.tar.gz')},
'nova-base': {
'type': 'url',
'location': ('http://tarballs.openstack.org/nova/'

View File

@ -68,8 +68,10 @@ class BuildTest(object):
class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
excluded_images = ["kuryr",
"neutron-networking-sfc-agent",
"senlin-base",
"watcher-base"]
"watcher-base"
]
def setUp(self):
super(BuildTestCentosBinary, self).setUp()
@ -88,7 +90,9 @@ class BuildTestCentosSource(BuildTest, base.BaseTestCase):
class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase):
excluded_images = ["zaqar"]
excluded_images = ["neutron-networking-sfc-agent",
"zaqar"
]
def setUp(self):
super(BuildTestUbuntuBinary, self).setUp()
@ -107,8 +111,10 @@ class BuildTestUbuntuSource(BuildTest, base.BaseTestCase):
class BuildTestOracleLinuxBinary(BuildTest, base.BaseTestCase):
excluded_images = ["kuryr",
"neutron-networking-sfc-agent",
"senlin-base",
"watcher-base"]
"watcher-base"
]
def setUp(self):
super(BuildTestOracleLinuxBinary, self).setUp()