aboutsummaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
authorGaetan Trellu <gaetan.trellu@incloudus.com>2019-05-15 22:43:11 -0400
committerGaetan Trellu <gaetan.trellu@incloudus.com>2019-05-20 09:56:03 -0400
commitdbdf927d391904252464ab401cb5724e10a45a72 (patch)
tree10d165a20e03f6771c6fb0da369ffdbb7971ad91 /docker
parentb55fa2f8b70b143068db57fc1ff844929d29486e (diff)
downloadkolla-dbdf927d391904252464ab401cb5724e10a45a72.tar.gz
kolla-dbdf927d391904252464ab401cb5724e10a45a72.zip
Add Qinling containers
Add Qinling Dockerfile , Qinling is an OpenStack project to provide "Function as a service". This project aims to provide a platform to support serverless functions. Change-Id: Idebf5c8756a0d0225adcce29b45a399120bb5eb6 Implements: blueprint qinling-support
Diffstat (limited to 'docker')
-rw-r--r--docker/horizon/extend_start.sh9
-rw-r--r--docker/qinling/qinling-api/Dockerfile.j219
-rw-r--r--docker/qinling/qinling-api/extend_start.sh8
-rw-r--r--docker/qinling/qinling-base/Dockerfile.j236
-rw-r--r--docker/qinling/qinling-base/extend_start.sh10
-rw-r--r--docker/qinling/qinling-engine/Dockerfile.j216
6 files changed, 98 insertions, 0 deletions
diff --git a/docker/horizon/extend_start.sh b/docker/horizon/extend_start.sh
index 7006fafd5..f97171ee0 100644
--- a/docker/horizon/extend_start.sh
+++ b/docker/horizon/extend_start.sh
@@ -192,6 +192,14 @@ function config_octavia_dashboard {
"${SITE_PACKAGES}/openstack_dashboard/local/enabled/_1482_project_load_balancer_panel.py"
}
+function config_qinling_dashboard {
+ for file in ${SITE_PACKAGES}/qinling_dashboard/enabled/_*[^__].py; do
+ config_dashboard "${ENABLE_QINLING}" \
+ "${SITE_PACKAGES}/qinling_dashboard/enabled/${file##*/}" \
+ "${SITE_PACKAGES}/openstack_dashboard/local/enabled/${file##*/}"
+ done
+}
+
function config_sahara_dashboard {
for file in ${SITE_PACKAGES}/sahara_dashboard/enabled/_*[^__].py; do
config_dashboard "${ENABLE_SAHARA}" \
@@ -324,6 +332,7 @@ config_murano_dashboard
config_neutron_lbaas
config_neutron_vpnaas_dashboard
config_octavia_dashboard
+config_qinling_dashboard
config_sahara_dashboard
config_searchlight_ui
config_senlin_dashboard
diff --git a/docker/qinling/qinling-api/Dockerfile.j2 b/docker/qinling/qinling-api/Dockerfile.j2
new file mode 100644
index 000000000..046805f4d
--- /dev/null
+++ b/docker/qinling/qinling-api/Dockerfile.j2
@@ -0,0 +1,19 @@
+FROM {{ namespace }}/{{ image_prefix }}qinling-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block qinling_api_header %}{% endblock %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% endif %}
+
+COPY extend_start.sh /usr/local/bin/kolla_qinling_extend_start
+RUN chmod 755 /usr/local/bin/kolla_qinling_extend_start
+
+{% block qinling_api_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER qinling
diff --git a/docker/qinling/qinling-api/extend_start.sh b/docker/qinling/qinling-api/extend_start.sh
new file mode 100644
index 000000000..d5f22dc5f
--- /dev/null
+++ b/docker/qinling/qinling-api/extend_start.sh
@@ -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
+ qinling-db-manage upgrade head
+ exit 0
+fi
diff --git a/docker/qinling/qinling-base/Dockerfile.j2 b/docker/qinling/qinling-base/Dockerfile.j2
new file mode 100644
index 000000000..307fffa25
--- /dev/null
+++ b/docker/qinling/qinling-base/Dockerfile.j2
@@ -0,0 +1,36 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block qinling_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.configure_user(name='qinling') }}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% elif install_type == 'source' %}
+
+ADD qinling-base-archive /qinling-base-source
+
+{% set qinling_base_pip_packages = [
+ '/qinling'
+] %}
+
+RUN ln -s qinling-base-source/* qinling \
+ && {{ macros.install_pip(qinling_base_pip_packages | customizable("pip_packages")) }} \
+ && mkdir -p /etc/qinling \
+ && cp -r /qinling/etc/* /etc/qinling/ \
+ && chown -R qinling: /etc/qinling
+
+{% endif %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN touch /usr/local/bin/kolla_qinling_extend_start \
+ && chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_qinling_extend_start
+
+{% block qinling_base_footer %}{% endblock %}
diff --git a/docker/qinling/qinling-base/extend_start.sh b/docker/qinling/qinling-base/extend_start.sh
new file mode 100644
index 000000000..3802bd878
--- /dev/null
+++ b/docker/qinling/qinling-base/extend_start.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/qinling" ]]; then
+ mkdir -p /var/log/kolla/qinling
+fi
+if [[ $(stat -c %a /var/log/kolla/qinling) != "755" ]]; then
+ chmod 755 /var/log/kolla/qinling
+fi
+
+. /usr/local/bin/kolla_qinling_extend_start
diff --git a/docker/qinling/qinling-engine/Dockerfile.j2 b/docker/qinling/qinling-engine/Dockerfile.j2
new file mode 100644
index 000000000..877822e29
--- /dev/null
+++ b/docker/qinling/qinling-engine/Dockerfile.j2
@@ -0,0 +1,16 @@
+FROM {{ namespace }}/{{ image_prefix }}qinling-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block qinling_engine_header %}{% endblock %}
+
+{% if install_type == 'binary' %}
+
+RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
+ && /bin/false
+
+{% endif %}
+
+{% block qinling_engine_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER qinling