summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-11-24 15:16:32 +0000
committerGerrit Code Review <review@openstack.org>2016-11-24 15:16:32 +0000
commita8a1c4cc3d0f42e96e0436d9125614cd2c3679fd (patch)
treeefdc3f58bdf81154a4b36cdf5d814df33f15a674
parent4208c7a7cf90157c3e081298b845eb5987536eea (diff)
parent2d8be6bee4750754cdf482cde44627c000961895 (diff)
downloadkolla-a8a1c4cc3d0f42e96e0436d9125614cd2c3679fd.tar.gz
kolla-a8a1c4cc3d0f42e96e0436d9125614cd2c3679fd.zip
Merge "Add octavia docker image"
-rw-r--r--docker/octavia/octavia-api/Dockerfile.j225
-rw-r--r--docker/octavia/octavia-base/Dockerfile.j230
-rw-r--r--docker/octavia/octavia-health-manager/Dockerfile.j225
-rw-r--r--docker/octavia/octavia-housekeeping/Dockerfile.j225
-rw-r--r--docker/octavia/octavia-worker/Dockerfile.j225
-rw-r--r--kolla/common/config.py8
-rw-r--r--tests/test_build.py1
7 files changed, 137 insertions, 2 deletions
diff --git a/docker/octavia/octavia-api/Dockerfile.j2 b/docker/octavia/octavia-api/Dockerfile.j2
new file mode 100644
index 000000000..053d355a6
--- /dev/null
+++ b/docker/octavia/octavia-api/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_api_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_api_packages = [
+ 'openstack-octavia-api'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_api_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_api_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia
diff --git a/docker/octavia/octavia-base/Dockerfile.j2 b/docker/octavia/octavia-base/Dockerfile.j2
new file mode 100644
index 000000000..2287b859c
--- /dev/null
+++ b/docker/octavia/octavia-base/Dockerfile.j2
@@ -0,0 +1,30 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_base_packages = [
+ 'openstack-octavia-common'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_base_packages | customizable("packages")) }}
+
+{% elif install_type == 'source' %}
+ADD octavia-base-archive /octavia-base-source
+RUN ln -s /octavia-base-source/* octavia \
+ && useradd --user-group --create-home --home-dir /var/lib/octavia octavia \
+ && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /octavia \
+ && mkdir -p /etc/octavia \
+ && cp -r /octavia/etc/* /etc/octavia/ \
+ && chown -R octavia: /etc/octavia
+{% endif %}
+
+{% block octavia_base_footer %}{% endblock %}
diff --git a/docker/octavia/octavia-health-manager/Dockerfile.j2 b/docker/octavia/octavia-health-manager/Dockerfile.j2
new file mode 100644
index 000000000..853cfb355
--- /dev/null
+++ b/docker/octavia/octavia-health-manager/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_health_manager_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_health_manager_packages = [
+ 'openstack-octavia-health-manager'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_health_manager_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_health_manager_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia
diff --git a/docker/octavia/octavia-housekeeping/Dockerfile.j2 b/docker/octavia/octavia-housekeeping/Dockerfile.j2
new file mode 100644
index 000000000..bc70fb175
--- /dev/null
+++ b/docker/octavia/octavia-housekeeping/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_housekeeping_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_housekeeping_packages = [
+ 'openstack-octavia-housekeeping'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_housekeeping_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_housekeeping_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia
diff --git a/docker/octavia/octavia-worker/Dockerfile.j2 b/docker/octavia/octavia-worker/Dockerfile.j2
new file mode 100644
index 000000000..8c64f6161
--- /dev/null
+++ b/docker/octavia/octavia-worker/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}octavia-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block octavia_worker_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+ {% set octavia_worker_packages = [
+ 'openstack-octavia-worker'
+ ] %}
+ {% elif base_distro in ['ubuntu'] %}
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+ {% endif %}
+
+{{ macros.install_packages(octavia_worker_packages | customizable("packages")) }}
+
+{% endif %}
+
+{% block octavia_worker_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER octavia
diff --git a/kolla/common/config.py b/kolla/common/config.py
index 6c7b734df..1c3c5d2e4 100644
--- a/kolla/common/config.py
+++ b/kolla/common/config.py
@@ -48,8 +48,8 @@ _PROFILE_OPTS = [
default=['aodh', 'cloudkitty', 'congress', 'designate',
'freezer', 'gnocchi', 'influxdb', 'ironic', 'karbor',
'kuryr', 'magnum', 'manila', 'mistral', 'murano',
- 'panko', 'rally', 'sahara', 'searchlight', 'senlin',
- 'solum', 'telegraf', 'trove', 'zaqar'],
+ 'octavia', 'panko', 'rally', 'sahara', 'searchlight',
+ 'senlin', 'solum', 'telegraf', 'trove', 'zaqar'],
help='Aux Images'),
cfg.ListOpt('default',
default=['chrony', 'cron', 'kolla-toolbox', 'glance',
@@ -286,6 +286,10 @@ SOURCES = {
'type': 'url',
'location': ('http://github.com/kanaka/noVNC/tarball/'
'v0.5.1')},
+ 'octavia-base': {
+ 'type': 'url',
+ 'location': ('http://tarballs.openstack.org/octavia/'
+ 'octavia-master.tar.gz')},
'panko-base': {
'type': 'url',
'location': ('http://tarballs.openstack.org/panko/'
diff --git a/tests/test_build.py b/tests/test_build.py
index c786cf9b0..a032c458b 100644
--- a/tests/test_build.py
+++ b/tests/test_build.py
@@ -97,6 +97,7 @@ class BuildTestCentosSource(BuildTest, base.BaseTestCase):
class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase):
excluded_images = ["karbor-base",
"kuryr-base",
+ "octavia-base",
"neutron-sfc-agent",
"searchlight-base",
"senlin-base",