Implement tacker-conductor image, rework all tacker
Tacker is broken in pike without conductor images. Conductor is needed to communicate with mistral for VIM monitoring This change rework tacker image to allow tacker-conductor service image. Split tacker global image into tacker-server and tacker-conductor. Closes-Bug: #1710874 Change-Id: I52778e86e4f2c297ead8d4b09983e5e38ca88c70
This commit is contained in:
parent
2d983f1ac7
commit
7b2dea5506
@ -1,7 +1,7 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
|
||||
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
|
||||
|
||||
{% block tacker_header %}{% endblock %}
|
||||
{% block tacker_base_header %}{% endblock %}
|
||||
|
||||
{% import "macros.j2" as macros with context %}
|
||||
|
||||
@ -10,29 +10,29 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build
|
||||
{% if install_type == 'binary' %}
|
||||
|
||||
{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
|
||||
{% set tacker_packages = [
|
||||
'openstack-tacker'
|
||||
{% set tacker_base_packages = [
|
||||
'openstack-tacker-common'
|
||||
] %}
|
||||
|
||||
{% elif base_distro in ['debian', 'ubuntu'] %}
|
||||
|
||||
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
|
||||
&& /bin/false
|
||||
&& /bin/false
|
||||
|
||||
{% endif %}
|
||||
|
||||
{{ macros.install_packages(tacker_packages | customizable("packages")) }}
|
||||
{{ macros.install_packages(tacker_base_packages | customizable("packages")) }}
|
||||
|
||||
{% elif install_type == 'source' %}
|
||||
|
||||
ADD tacker-archive /tacker-source
|
||||
ADD tacker-base-archive /tacker-base-source
|
||||
|
||||
{% set tacker_pip_packages = [
|
||||
{% set tacker_base_pip_packages = [
|
||||
'/tacker'
|
||||
] %}
|
||||
|
||||
RUN ln -s tacker-source/* tacker \
|
||||
&& {{ macros.install_pip(tacker_pip_packages | customizable("pip_packages")) }} \
|
||||
RUN ln -s tacker-base-source/* tacker \
|
||||
&& {{ macros.install_pip(tacker_base_pip_packages | customizable("pip_packages")) }} \
|
||||
&& mkdir -p /etc/tacker \
|
||||
&& cp -r /tacker/etc/tacker/* /etc/tacker \
|
||||
&& chown -R tacker: /etc/tacker
|
||||
@ -41,9 +41,7 @@ RUN ln -s tacker-source/* tacker \
|
||||
|
||||
COPY extend_start.sh /usr/local/bin/kolla_extend_start
|
||||
|
||||
RUN chmod 755 /usr/local/bin/kolla_extend_start
|
||||
RUN touch /usr/local/bin/kolla_tacker_extend_start \
|
||||
&& chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/kolla_tacker_extend_start
|
||||
|
||||
{% block tacker_footer %}{% endblock %}
|
||||
{% block footer %}{% endblock %}
|
||||
|
||||
USER tacker
|
||||
{% block tacker_base_footer %}{% endblock %}
|
10
docker/tacker/tacker-base/extend_start.sh
Normal file
10
docker/tacker/tacker-base/extend_start.sh
Normal file
@ -0,0 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ ! -d "/var/log/kolla/tacker" ]]; then
|
||||
mkdir -p /var/log/kolla/tacker
|
||||
fi
|
||||
if [[ $(stat -c %a /var/log/kolla/tacker) != "755" ]]; then
|
||||
chmod 755 /var/log/kolla/tacker
|
||||
fi
|
||||
|
||||
. /usr/local/bin/kolla_tacker_extend_start
|
29
docker/tacker/tacker-conductor/Dockerfile.j2
Normal file
29
docker/tacker/tacker-conductor/Dockerfile.j2
Normal file
@ -0,0 +1,29 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}tacker-base:{{ tag }}
|
||||
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
|
||||
|
||||
{% block tacker_conductor_header %}{% endblock %}
|
||||
|
||||
{% import "macros.j2" as macros with context %}
|
||||
|
||||
{% if install_type == 'binary' %}
|
||||
|
||||
{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
|
||||
{% set tacker_conductor_packages = [
|
||||
'openstack-tacker'
|
||||
] %}
|
||||
|
||||
{% elif base_distro in ['debian', 'ubuntu'] %}
|
||||
|
||||
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
|
||||
&& /bin/false
|
||||
|
||||
{% endif %}
|
||||
|
||||
{{ macros.install_packages(tacker_conductor_packages | customizable("packages")) }}
|
||||
|
||||
{% endif %}
|
||||
|
||||
{% block tacker_conductor_footer %}{% endblock %}
|
||||
{% block footer %}{% endblock %}
|
||||
|
||||
USER tacker
|
32
docker/tacker/tacker-server/Dockerfile.j2
Normal file
32
docker/tacker/tacker-server/Dockerfile.j2
Normal file
@ -0,0 +1,32 @@
|
||||
FROM {{ namespace }}/{{ image_prefix }}tacker-base:{{ tag }}
|
||||
LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}"
|
||||
|
||||
{% block tacker_server_header %}{% endblock %}
|
||||
|
||||
{% import "macros.j2" as macros with context %}
|
||||
|
||||
{% if install_type == 'binary' %}
|
||||
|
||||
{% if base_distro in ['centos', 'oraclelinux', 'rhel'] %}
|
||||
{% set tacker_server_packages = [
|
||||
'openstack-tacker'
|
||||
] %}
|
||||
|
||||
{% elif base_distro in ['debian', 'ubuntu'] %}
|
||||
|
||||
RUN echo '{{ install_type }} not yet available for {{ base_distro }}' \
|
||||
&& /bin/false
|
||||
|
||||
{% endif %}
|
||||
|
||||
{{ macros.install_packages(tacker_server_packages | customizable("packages")) }}
|
||||
|
||||
{% endif %}
|
||||
|
||||
COPY extend_start.sh /usr/local/bin/kolla_tacker_extend_start
|
||||
RUN chmod 755 /usr/local/bin/kolla_tacker_extend_start
|
||||
|
||||
{% block tacker_server_footer %}{% endblock %}
|
||||
{% block footer %}{% endblock %}
|
||||
|
||||
USER tacker
|
@ -1,12 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ ! -d "/var/log/kolla/tacker" ]]; then
|
||||
mkdir -p /var/log/kolla/tacker
|
||||
fi
|
||||
if [[ $(stat -c %a /var/log/kolla/tacker) != "755" ]]; then
|
||||
chmod 755 /var/log/kolla/tacker
|
||||
fi
|
||||
|
||||
# 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
|
@ -609,7 +609,7 @@ SOURCES = {
|
||||
'type': 'url',
|
||||
'location': ('$tarballs_base/swift/'
|
||||
'swift-master.tar.gz')},
|
||||
'tacker': {
|
||||
'tacker-base': {
|
||||
'type': 'url',
|
||||
'location': ('$tarballs_base/tacker/'
|
||||
'tacker-master.tar.gz')},
|
||||
|
@ -0,0 +1,8 @@
|
||||
---
|
||||
features:
|
||||
- |
|
||||
Tacker conductor image is implemented.
|
||||
upgrade:
|
||||
- |
|
||||
Tacker image has been splitted into tacker-server and tacker-conductor
|
||||
to support new conductor service.
|
@ -130,7 +130,7 @@ class BuildTestUbuntuBinary(BuildTest, base.BaseTestCase):
|
||||
"searchlight-base",
|
||||
"senlin-base",
|
||||
"solum-base",
|
||||
"tacker",
|
||||
"tacker-base",
|
||||
"vitrage-base",
|
||||
"vmtp",
|
||||
"zaqar",
|
||||
@ -174,7 +174,7 @@ class BuildTestDebianBinary(BuildTest, base.BaseTestCase):
|
||||
"senlin-base",
|
||||
"sensu-base",
|
||||
"solum-base",
|
||||
"tacker",
|
||||
"tacker-base",
|
||||
"vitrage-base",
|
||||
"vmtp",
|
||||
"zaqar",
|
||||
|
Loading…
Reference in New Issue
Block a user