aboutsummaryrefslogtreecommitdiff
path: root/docker/placement/placement-base
diff options
context:
space:
mode:
authorEduardo Gonzalez <dabarren@gmail.com>2018-10-26 16:02:21 +0200
committerLee Yarwood <lyarwood@redhat.com>2018-12-19 14:41:20 +0000
commit2f657085c67302ab54dcb64b335a2f3732ba4de4 (patch)
tree4a15dda81596d5a8238ca464d4343ba892aae1eb /docker/placement/placement-base
parent772b52572289832de68c75adea458dc88aedfec9 (diff)
downloadkolla-2f657085c67302ab54dcb64b335a2f3732ba4de4.tar.gz
kolla-2f657085c67302ab54dcb64b335a2f3732ba4de4.zip
Split placement-api from nova
This change breaks out the Placement service from Nova ahead of it's removal from the project later in Stein. For the time being the original Nova Placement images are left in place but they will be removed later in the cycle once the Placement code is removed from the Nova project by the following change: https://review.openstack.org/#/c/618215/ Co-Authored-By: Lee Yarwood <lyarwood@redhat.com> Change-Id: I2bf6f5bf45b76e6900f41c21e9af30c69dc6e9c0
Diffstat (limited to 'docker/placement/placement-base')
-rw-r--r--docker/placement/placement-base/Dockerfile.j247
-rw-r--r--docker/placement/placement-base/extend_start.sh12
2 files changed, 59 insertions, 0 deletions
diff --git a/docker/placement/placement-base/Dockerfile.j2 b/docker/placement/placement-base/Dockerfile.j2
new file mode 100644
index 000000000..e108944b4
--- /dev/null
+++ b/docker/placement/placement-base/Dockerfile.j2
@@ -0,0 +1,47 @@
+FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
+LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
+
+{% block placement_base_header %}{% endblock %}
+
+{% import "macros.j2" as macros with context %}
+
+{{ macros.configure_user(name='placement') }}
+
+{% if install_type == 'binary' %}
+ {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
+
+ {% set placement_base_packages = [
+ 'openstack-placement-common',
+ ] %}
+
+ {% elif base_distro in ['debian', 'ubuntu'] %}
+
+ {% set placement_base_packages = [] %}
+
+ {% endif %}
+
+{{ macros.install_packages(placement_base_packages | customizable("packages")) }}
+
+{% elif install_type == 'source' %}
+
+ADD placement-base-archive /placement-base-source
+ADD plugins-archive /
+
+{% set placement_base_pip_packages = [
+ '/placement'
+] %}
+
+RUN ln -s placement-base-source/* placement \
+ && {{ macros.install_pip(placement_base_pip_packages | customizable("pip_packages")) }} \
+ && mkdir -p /etc/placement/ \
+ && cp -r /placement/etc/placement/* /etc/placement/ \
+ && chown -R placement: /etc/placement/
+
+{% endif %}
+
+COPY extend_start.sh /usr/local/bin/kolla_extend_start
+
+RUN touch /usr/local/bin/kolla_placement_extend_start \
+ && chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_placement_extend_start
+
+{% block placement_base_footer %}{% endblock %}
diff --git a/docker/placement/placement-base/extend_start.sh b/docker/placement/placement-base/extend_start.sh
new file mode 100644
index 000000000..68a7b01c6
--- /dev/null
+++ b/docker/placement/placement-base/extend_start.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+if [[ ! -d "/var/log/kolla/placement" ]]; then
+ mkdir -p /var/log/kolla/placement
+ touch /var/log/kolla/placement/placement-api.log
+fi
+if [[ $(stat -c %a /var/log/kolla/placement) != "755" ]]; then
+ chmod 755 /var/log/kolla/placement
+ chmod 644 /var/log/kolla/placement/placement-api.log
+fi
+
+. /usr/local/bin/kolla_placement_extend_start