aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2016-12-13 10:29:30 +0000
committerGerrit Code Review <review@openstack.org>2016-12-13 10:29:30 +0000
commitf4ca32cd7877f7cd1abf7270c4329f99248cbf49 (patch)
treef5c761d0ea5ee44f92b509920cb4c1f3eb63bf67
parent2fb41f109b3f00d7846784dcfdfc0d59220c2e3a (diff)
parent259266ceb8612a7dd2de0fbc26ea5cacc153b240 (diff)
downloadkolla-f4ca32cd7877f7cd1abf7270c4329f99248cbf49.tar.gz
kolla-f4ca32cd7877f7cd1abf7270c4329f99248cbf49.zip
Merge "Add kafka image"
-rw-r--r--docker/kafka/Dockerfile.j232
-rw-r--r--docker/kafka/extend_start.sh9
-rw-r--r--kolla/common/config.py14
-rw-r--r--releasenotes/notes/add-kafka-26c9e54c934b1119.yaml3
-rw-r--r--tests/test_build.py6
5 files changed, 58 insertions, 6 deletions
diff --git a/docker/kafka/Dockerfile.j2 b/docker/kafka/Dockerfile.j2
new file mode 100644
index 000000000..905444c70
--- /dev/null
+++ b/docker/kafka/Dockerfile.j2
@@ -0,0 +1,32 @@
+FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block kafka_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif base_distro in ['ubuntu', 'debian'] %}
+ {% set kafka_packages = [
+ 'default-jre',
+ ] %}
+{% endif %}
+
+{{ macros.install_packages(kafka_packages | customizable("packages")) }}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+ADD kafka-archive /
+RUN ln -s kafka* kafka \
+ && useradd --user-group --home-dir /kafka kafka \
+ && chmod 755 /usr/local/bin/kolla_extend_start \
+ && usermod -a -G kolla kafka \
+ && chown -R kafka: /kafka
+
+{% block kafka_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER kafka
diff --git a/docker/kafka/extend_start.sh b/docker/kafka/extend_start.sh
new file mode 100644
index 000000000..ee6d494d2
--- /dev/null
+++ b/docker/kafka/extend_start.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+# Create log directory, with appropriate permissions
+if [[ ! -d "/var/log/kolla/kafka" ]]; then
+ mkdir -p /var/log/kolla/kafka
+fi
+if [[ $(stat -c %a /var/log/kolla/kafka) != "755" ]]; then
+ chmod 755 /var/log/kolla/kafka
+fi
diff --git a/kolla/common/config.py b/kolla/common/config.py
index 8c37624c7..458fbf16f 100644
--- a/kolla/common/config.py
+++ b/kolla/common/config.py
@@ -46,11 +46,11 @@ _PROFILE_OPTS = [
help='Main images'),
cfg.ListOpt('aux',
default=['aodh', 'cloudkitty', 'congress', 'designate',
- 'freezer', 'gnocchi', 'influxdb', 'ironic', 'karbor',
- 'kuryr', 'magnum', 'manila', 'mistral', 'murano',
- 'octavia', 'panko', 'rally', 'sahara', 'searchlight',
- 'senlin', 'solum', 'tacker' 'telegraf', 'trove',
- 'zaqar', 'zookeeper'],
+ 'freezer', 'gnocchi', 'influxdb', 'ironic', 'kafka',
+ 'karbor', 'kuryr', 'magnum', 'manila', 'mistral',
+ 'murano', 'octavia', 'panko', 'rally', 'sahara',
+ 'searchlight', 'senlin', 'solum', 'tacker',
+ 'telegraf', 'trove', 'zaqar', 'zookeeper'],
help='Aux Images'),
cfg.ListOpt('default',
default=['chrony', 'cron', 'kolla-toolbox', 'glance',
@@ -266,6 +266,10 @@ SOURCES = {
'type': 'url',
'location': ('http://tarballs.openstack.org/ironic-inspector/'
'ironic-inspector-master.tar.gz')},
+ 'kafka': {
+ 'type': 'url',
+ 'location': ('http://apache.osuosl.org/kafka/0.10.1.0/'
+ 'kafka_2.11-0.10.1.0.tgz')},
'karbor-base': {
'type': 'url',
'location': ('http://tarballs.openstack.org/karbor/'
diff --git a/releasenotes/notes/add-kafka-26c9e54c934b1119.yaml b/releasenotes/notes/add-kafka-26c9e54c934b1119.yaml
new file mode 100644
index 000000000..5d7911d94
--- /dev/null
+++ b/releasenotes/notes/add-kafka-26c9e54c934b1119.yaml
@@ -0,0 +1,3 @@
+---
+features:
+ - Add kafka image, used in Monasca
diff --git a/tests/test_build.py b/tests/test_build.py
index 5c86e280c..69767bdcb 100644
--- a/tests/test_build.py
+++ b/tests/test_build.py
@@ -78,6 +78,7 @@ class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
"bifrost-base",
"cloudkitty-base",
"freezer-base",
+ "kafka",
"zookeeper",
"tacker"]
@@ -89,6 +90,7 @@ class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
class BuildTestCentosSource(BuildTest, base.BaseTestCase):
excluded_images = ["mistral-base",
+ "kafka",
"zookeeper"]
def setUp(self):
@@ -144,6 +146,7 @@ class BuildTestOracleLinuxBinary(BuildTest, base.BaseTestCase):
"bifrost-base",
"cloudkitty-base",
"freezer-base",
+ "kafka",
"zookeeper",
"tacker"]
@@ -154,7 +157,8 @@ class BuildTestOracleLinuxBinary(BuildTest, base.BaseTestCase):
class BuildTestOracleLinuxSource(BuildTest, base.BaseTestCase):
- excluded_images = ["zookeeper"]
+ excluded_images = ["kafka",
+ "zookeeper"]
def setUp(self):
super(BuildTestOracleLinuxSource, self).setUp()