summaryrefslogtreecommitdiff
path: root/docker/monasca
diff options
context:
space:
mode:
authorSam Yaple <sam@yaple.net>2016-11-30 18:09:36 +0000
committerSam Yaple <sam@yaple.net>2016-12-13 11:30:55 +0000
commit8bf24bee5390e10ef3af1dcd3b009ac3b25f34dd (patch)
tree87c37f7cf39303258cfb4ef4075f5909f48b3e74 /docker/monasca
parentf4ca32cd7877f7cd1abf7270c4329f99248cbf49 (diff)
downloadkolla-8bf24bee5390e10ef3af1dcd3b009ac3b25f34dd.tar.gz
kolla-8bf24bee5390e10ef3af1dcd3b009ac3b25f34dd.zip
Add monasca images
NOTE: Currently monasca does not publish master tarballs, I have will be working with them to do so. Change-Id: Ica3ab50c56271d05b7e40978d38711279dc42585 Partially-Implements: blueprint monasca-containers
Diffstat (limited to 'docker/monasca')
-rw-r--r--docker/monasca/monasca-api/Dockerfile.j226
-rw-r--r--docker/monasca/monasca-base/Dockerfile.j228
-rw-r--r--docker/monasca/monasca-base/extend_start.sh10
-rw-r--r--docker/monasca/monasca-log-api/Dockerfile.j226
-rw-r--r--docker/monasca/monasca-notification/Dockerfile.j226
-rw-r--r--docker/monasca/monasca-persister/Dockerfile.j226
-rw-r--r--docker/monasca/monasca-statsd/Dockerfile.j228
7 files changed, 170 insertions, 0 deletions
diff --git a/docker/monasca/monasca-api/Dockerfile.j2 b/docker/monasca/monasca-api/Dockerfile.j2
new file mode 100644
index 000000000..609722d60
--- /dev/null
+++ b/docker/monasca/monasca-api/Dockerfile.j2
@@ -0,0 +1,26 @@
+FROM {{ namespace }}/{{ image_prefix }}monasca-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block monasca_api_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD monasca-api-archive /monasca-api-source
+RUN ln -s monasca-api-source/* monasca-api \
+ && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /monasca-api
+
+{% endif %}
+
+{% block monasca_api_footer %}{% endblock %}
+
+{% block footer %}{% endblock %}
+
+USER monasca
+
diff --git a/docker/monasca/monasca-base/Dockerfile.j2 b/docker/monasca/monasca-base/Dockerfile.j2
new file mode 100644
index 000000000..41d975bde
--- /dev/null
+++ b/docker/monasca/monasca-base/Dockerfile.j2
@@ -0,0 +1,28 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block monasca_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+RUN useradd --user-group --create-home --home-dir /var/lib/monasca monasca \
+ && chmod 755 /var/lib/monasca \
+ && mkdir -p /etc/monasca /var/lib/monasca \
+ && chown -R monasca: /etc/monasca /var/lib/monasca
+
+{% endif %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN touch /usr/local/bin/kolla_monasca_extend_start \
+ && chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_monasca_extend_start \
+ && usermod -a -G kolla monasca
+
+{% block monasca_base_footer %}{% endblock %}
diff --git a/docker/monasca/monasca-base/extend_start.sh b/docker/monasca/monasca-base/extend_start.sh
new file mode 100644
index 000000000..4d748ace5
--- /dev/null
+++ b/docker/monasca/monasca-base/extend_start.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/monasca" ]]; then
+ mkdir -p /var/log/kolla/monasca
+fi
+if [[ $(stat -c %a /var/log/kolla/monesca) != "755" ]]; then
+ chmod 755 /var/log/kolla/monasca
+fi
+
+. /usr/local/bin/kolla_monasca_extend_start
diff --git a/docker/monasca/monasca-log-api/Dockerfile.j2 b/docker/monasca/monasca-log-api/Dockerfile.j2
new file mode 100644
index 000000000..8c4d9a81e
--- /dev/null
+++ b/docker/monasca/monasca-log-api/Dockerfile.j2
@@ -0,0 +1,26 @@
+FROM {{ namespace }}/{{ image_prefix }}monasca-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block monasca_log_api_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD monasca-log-api-archive /monasca-log-api-source
+RUN ln -s monasca-log-api-source/* monasca-log \
+ && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /monasca-log
+
+{% endif %}
+
+{% block monasca_log_api_footer %}{% endblock %}
+
+{% block footer %}{% endblock %}
+
+USER monasca
+
diff --git a/docker/monasca/monasca-notification/Dockerfile.j2 b/docker/monasca/monasca-notification/Dockerfile.j2
new file mode 100644
index 000000000..2ca45bdb6
--- /dev/null
+++ b/docker/monasca/monasca-notification/Dockerfile.j2
@@ -0,0 +1,26 @@
+FROM {{ namespace }}/{{ image_prefix }}monasca-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block monasca_notification_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD monasca-notification-archive /monasca-notification-source
+RUN ln -s monasca-notification-source/* monasca-notification \
+ && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /monasca-notification
+
+{% endif %}
+
+{% block monasca_notification_footer %}{% endblock %}
+
+{% block footer %}{% endblock %}
+
+USER monasca
+
diff --git a/docker/monasca/monasca-persister/Dockerfile.j2 b/docker/monasca/monasca-persister/Dockerfile.j2
new file mode 100644
index 000000000..e9bce5b39
--- /dev/null
+++ b/docker/monasca/monasca-persister/Dockerfile.j2
@@ -0,0 +1,26 @@
+FROM {{ namespace }}/{{ image_prefix }}monasca-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block monasca_persister_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD monasca-persister-archive /monasca-persister-source
+RUN ln -s monasca-persister-source/* monasca-persister \
+ && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /monasca-persister
+
+{% endif %}
+
+{% block monasca_persister_footer %}{% endblock %}
+
+{% block footer %}{% endblock %}
+
+USER monasca
+
diff --git a/docker/monasca/monasca-statsd/Dockerfile.j2 b/docker/monasca/monasca-statsd/Dockerfile.j2
new file mode 100644
index 000000000..6399e1acd
--- /dev/null
+++ b/docker/monasca/monasca-statsd/Dockerfile.j2
@@ -0,0 +1,28 @@
+FROM {{ namespace }}/{{ image_prefix }}monasca-base:{{ tag }}
+MAINTAINER {{ maintainer }}
+
+{% block monasca_api_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD monasca-statsd-archive /monasca-statsd-source
+# NOTE(SamYaple): <=1.3.0 do not have any packages in requirements.txt and that
+# breaks pip. So removing constraints file.
+RUN ln -s monasca-statsd-source/* monasca-statsd \
+ && /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade /monasca-statsd
+
+{% endif %}
+
+{% block monasca_api_footer %}{% endblock %}
+
+{% block footer %}{% endblock %}
+
+USER monasca
+