aboutsummaryrefslogtreecommitdiff
path: root/docker/almanach
diff options
context:
space:
mode:
authorBertrand Lallau <bertrand.lallau@gmail.com>2017-08-29 22:44:14 +0200
committerDuong Ha-Quang <duonghq@vn.fujitsu.com>2017-11-09 09:40:37 +0000
commitb8f7693d41bcdef7f6f0af96f9fb31b74e7c7204 (patch)
tree743cef4ad673b7edca3d6f6461e5fd62d49bb188 /docker/almanach
parent9674e2da1c1e0c5efffdace8e12849912210e197 (diff)
downloadkolla-b8f7693d41bcdef7f6f0af96f9fb31b74e7c7204.tar.gz
kolla-b8f7693d41bcdef7f6f0af96f9fb31b74e7c7204.zip
Implement Almanach Docker images
Almanach record the utilization of OpenStack resources for each tenant. Implements: blueprint containerized-almanach Change-Id: Iba2e16772864a6f0169ec43d7a87d741882cd51c
Diffstat (limited to 'docker/almanach')
-rw-r--r--docker/almanach/almanach-api/Dockerfile.j216
-rw-r--r--docker/almanach/almanach-base/Dockerfile.j234
-rw-r--r--docker/almanach/almanach-base/extend_start.sh8
-rw-r--r--docker/almanach/almanach-collector/Dockerfile.j216
4 files changed, 74 insertions, 0 deletions
diff --git a/docker/almanach/almanach-api/Dockerfile.j2 b/docker/almanach/almanach-api/Dockerfile.j2
new file mode 100644
index 000000000..d1075ee6d
--- /dev/null
+++ b/docker/almanach/almanach-api/Dockerfile.j2
@@ -0,0 +1,16 @@
+FROM {{ namespace }}/{{ image_prefix }}almanach-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block almanach_api_header %}{% endblock %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% endif %}
+
+{% block almanach_api_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER almanach
diff --git a/docker/almanach/almanach-base/Dockerfile.j2 b/docker/almanach/almanach-base/Dockerfile.j2
new file mode 100644
index 000000000..3a55f775b
--- /dev/null
+++ b/docker/almanach/almanach-base/Dockerfile.j2
@@ -0,0 +1,34 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block almanach_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.configure_user(name='almanach') }}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD almanach-base-archive /almanach-base-source
+
+{% set almanach_base_pip_packages = [
+ '/almanach'
+] %}
+
+RUN ln -s almanach-base-source/* almanach \
+ && {{ macros.install_pip(almanach_base_pip_packages | customizable("pip_packages")) }} \
+ && mkdir -p /etc/almanach \
+ && chown -R almanach: /etc/almanach
+
+{% endif %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN chmod 755 /usr/local/bin/kolla_extend_start
+
+{% block almanach_base_footer %}{% endblock %}
diff --git a/docker/almanach/almanach-base/extend_start.sh b/docker/almanach/almanach-base/extend_start.sh
new file mode 100644
index 000000000..a4ffb9fe9
--- /dev/null
+++ b/docker/almanach/almanach-base/extend_start.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/almanach" ]]; then
+ mkdir -p /var/log/kolla/almanach
+fi
+if [[ $(stat -c %a /var/log/kolla/almanach) != "755" ]]; then
+ chmod 755 /var/log/kolla/almanach
+fi
diff --git a/docker/almanach/almanach-collector/Dockerfile.j2 b/docker/almanach/almanach-collector/Dockerfile.j2
new file mode 100644
index 000000000..ae66a7c14
--- /dev/null
+++ b/docker/almanach/almanach-collector/Dockerfile.j2
@@ -0,0 +1,16 @@
+FROM {{ namespace }}/{{ image_prefix }}almanach-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block almanach_collector_header %}{% endblock %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% endif %}
+
+{% block almanach_collector_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER almanach