aboutsummaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
authoryangshaoxue <yang.shaoxue@99cloud.net>2021-09-24 10:03:16 +0800
committerMichal Arbet <michal.arbet@ultimum.io>2023-01-30 23:40:42 +0000
commit9d4736820f9c3dc589915acd6b0aaedfeaa68912 (patch)
tree809e81535bf96fc8bd117c5c3d02fa011f7ac834 /docker
parent8f0d9226a80cea7b333dbc52f1d0c58f56f7e272 (diff)
downloadkolla-9d4736820f9c3dc589915acd6b0aaedfeaa68912.tar.gz
kolla-9d4736820f9c3dc589915acd6b0aaedfeaa68912.zip
skyline: Add new dashboard
Skyline is a new dashboard for openstack. It contains skyline-apiserver and skyline-console. We will build both skyline-apiserver and skyline-console images for skyline. Implements: blueprint skyline Change-Id: I68a562f15bf4fdda82b86c446e14fc8b5594413a
Diffstat (limited to 'docker')
-rw-r--r--docker/skyline/skyline-apiserver/Dockerfile.j225
-rw-r--r--docker/skyline/skyline-apiserver/extend_start.sh11
-rw-r--r--docker/skyline/skyline-base/Dockerfile.j217
-rw-r--r--docker/skyline/skyline-base/extend_start.sh23
-rw-r--r--docker/skyline/skyline-console/Dockerfile.j228
5 files changed, 104 insertions, 0 deletions
diff --git a/docker/skyline/skyline-apiserver/Dockerfile.j2 b/docker/skyline/skyline-apiserver/Dockerfile.j2
new file mode 100644
index 000000000..eb59d59de
--- /dev/null
+++ b/docker/skyline/skyline-apiserver/Dockerfile.j2
@@ -0,0 +1,25 @@
+FROM {{ namespace }}/{{ image_prefix }}skyline-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+{% endblock %}
+
+{% block skyline_apiserver_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+ADD skyline-apiserver-archive /skyline-apiserver-source
+
+{% set skyline_apiserver_pip_packages = [
+ '/skyline-apiserver'
+] %}
+
+COPY extend_start.sh /usr/local/bin/kolla_skyline_extend_start
+
+RUN ln -s skyline-apiserver-source/* skyline-apiserver \
+ && {{ macros.install_pip(skyline_apiserver_pip_packages | customizable("pip_packages")) }} \
+ && chmod 644 /usr/local/bin/kolla_skyline_extend_start
+
+{% block skyline_apiserver_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER skyline
diff --git a/docker/skyline/skyline-apiserver/extend_start.sh b/docker/skyline/skyline-apiserver/extend_start.sh
new file mode 100644
index 000000000..e762106c0
--- /dev/null
+++ b/docker/skyline/skyline-apiserver/extend_start.sh
@@ -0,0 +1,11 @@
+#!/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
+ SITE_PACKAGES="/var/lib/kolla/venv/lib/python${KOLLA_DISTRO_PYTHON_VERSION}/site-packages"
+ pushd ${SITE_PACKAGES}/skyline_apiserver/db/alembic
+ alembic upgrade head
+ popd
+ exit 0
+fi
diff --git a/docker/skyline/skyline-base/Dockerfile.j2 b/docker/skyline/skyline-base/Dockerfile.j2
new file mode 100644
index 000000000..23ae13223
--- /dev/null
+++ b/docker/skyline/skyline-base/Dockerfile.j2
@@ -0,0 +1,17 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+{% endblock %}
+
+{% block skyline_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.configure_user(name='skyline') }}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN touch /usr/local/bin/kolla_skyline_extend_start \
+ && chmod 644 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_skyline_extend_start
+
+{% block skyline_base_footer %}{% endblock %}
diff --git a/docker/skyline/skyline-base/extend_start.sh b/docker/skyline/skyline-base/extend_start.sh
new file mode 100644
index 000000000..34362ad04
--- /dev/null
+++ b/docker/skyline/skyline-base/extend_start.sh
@@ -0,0 +1,23 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/skyline" ]]; then
+ mkdir -p /var/log/kolla/skyline
+fi
+if [[ $(stat -c %U:%G /var/log/kolla/skyline) != "skyline:kolla" ]]; then
+ chown skyline:kolla /var/log/kolla/skyline
+fi
+if [[ $(stat -c %a /var/log/kolla/skyline) != "755" ]]; then
+ chmod 755 /var/log/kolla/skyline
+fi
+
+if [[ ! -d "/var/lib/skyline" ]]; then
+ mkdir -p /var/lib/skyline
+fi
+if [[ $(stat -c %U:%G /var/lib/skyline) != "skyline:kolla" ]]; then
+ chown skyline:kolla /var/lib/skyline
+fi
+if [[ $(stat -c %a /var/lib/skyline) != "755" ]]; then
+ chmod 755 /var/lib/skyline
+fi
+
+. /usr/local/bin/kolla_skyline_extend_start
diff --git a/docker/skyline/skyline-console/Dockerfile.j2 b/docker/skyline/skyline-console/Dockerfile.j2
new file mode 100644
index 000000000..0af0f4b24
--- /dev/null
+++ b/docker/skyline/skyline-console/Dockerfile.j2
@@ -0,0 +1,28 @@
+FROM {{ namespace }}/{{ image_prefix }}skyline-base:{{ tag }}
+{% block labels %}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+{% endblock %}
+
+{% block skyline_console_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{% set skyline_console_packages = [
+ 'nginx'
+] %}
+
+{{ macros.install_packages(skyline_console_packages | customizable("packages")) }}
+
+ADD skyline-console-archive /skyline-console-source
+
+{% set skyline_console_pip_packages = [
+ '/skyline-console'
+] %}
+
+RUN ln -s skyline-console-source/* skyline-console \
+ && {{ macros.install_pip(skyline_console_pip_packages | customizable("pip_packages")) }}
+
+{% block skyline_console_footer %}{% endblock %}
+{% block footer %}{% endblock %}
+
+USER root