From cb4e875ae1e1ec2e6ddf8a6b37f42283697fd50c Mon Sep 17 00:00:00 2001 From: Sam Yaple Date: Wed, 30 Sep 2015 11:23:39 +0000 Subject: Common start.sh The majority of the start.sh code is identical. This removes that duplicate code while still maintaining the ability to call code in a specific container. The start.sh is moved into /usr/local/bin/kolla_start in the container The extend_start.sh script is called by the kolla_start script at the location /usr/local/bin/kolla_extend_start . It always exists because we create a noop kolla_extend_start in the base directory. We override it with extend_start.sh in a specific image should we need to. Of note, the neutron-agents container is exempt from this new structure due to it being a fat container. Additionally, we fix the inconsistent permissions throughout. 644 for repo files and the scripts are set to 755 via a Docker RUN command to ensure someones local perm change won't break upstream containers. Change-Id: I7da8d19965463ad30ee522a71183e3f092e0d6ad Closes-Bug: #1501295 --- docker/ceilometer/ceilometer-alarm/Dockerfile.j2 | 5 ----- docker/ceilometer/ceilometer-alarm/start.sh | 10 ---------- docker/ceilometer/ceilometer-api/Dockerfile.j2 | 9 +++------ docker/ceilometer/ceilometer-api/extend_start.sh | 8 ++++++++ docker/ceilometer/ceilometer-api/start.sh | 17 ----------------- docker/ceilometer/ceilometer-central/Dockerfile.j2 | 7 +------ docker/ceilometer/ceilometer-central/start.sh | 10 ---------- docker/ceilometer/ceilometer-collector/Dockerfile.j2 | 7 +------ docker/ceilometer/ceilometer-collector/start.sh | 10 ---------- docker/ceilometer/ceilometer-compute/Dockerfile.j2 | 14 +++++--------- docker/ceilometer/ceilometer-compute/start.sh | 10 ---------- docker/ceilometer/ceilometer-notification/Dockerfile.j2 | 5 ----- docker/ceilometer/ceilometer-notification/start.sh | 10 ---------- 13 files changed, 18 insertions(+), 104 deletions(-) delete mode 100755 docker/ceilometer/ceilometer-alarm/start.sh create mode 100644 docker/ceilometer/ceilometer-api/extend_start.sh delete mode 100755 docker/ceilometer/ceilometer-api/start.sh delete mode 100755 docker/ceilometer/ceilometer-central/start.sh delete mode 100755 docker/ceilometer/ceilometer-collector/start.sh delete mode 100755 docker/ceilometer/ceilometer-compute/start.sh delete mode 100755 docker/ceilometer/ceilometer-notification/start.sh (limited to 'docker/ceilometer') diff --git a/docker/ceilometer/ceilometer-alarm/Dockerfile.j2 b/docker/ceilometer/ceilometer-alarm/Dockerfile.j2 index f720ee15d..387c63ae1 100644 --- a/docker/ceilometer/ceilometer-alarm/Dockerfile.j2 +++ b/docker/ceilometer/ceilometer-alarm/Dockerfile.j2 @@ -10,9 +10,4 @@ RUN yum install -y openstack-ceilometer-alarm \ {% endif %} {% endif %} -COPY ./start.sh / -COPY config-external.sh /opt/kolla/ - -CMD ["/start.sh"] - {{ include_footer }} diff --git a/docker/ceilometer/ceilometer-alarm/start.sh b/docker/ceilometer/ceilometer-alarm/start.sh deleted file mode 100755 index d98577e08..000000000 --- a/docker/ceilometer/ceilometer-alarm/start.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -set -o errexit - -CMD="/usr/bin/ceilometer-alarm" -ARGS="" - -# Loading common functions. -source /opt/kolla/kolla-common.sh - -exec $CMD $ARGS diff --git a/docker/ceilometer/ceilometer-api/Dockerfile.j2 b/docker/ceilometer/ceilometer-api/Dockerfile.j2 index 7470a9026..0519d6f0f 100644 --- a/docker/ceilometer/ceilometer-api/Dockerfile.j2 +++ b/docker/ceilometer/ceilometer-api/Dockerfile.j2 @@ -4,16 +4,13 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla) {% if install_type == 'binary' %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} - RUN yum install -y openstack-ceilometer-api \ - && yum clean all + && yum clean all {% endif %} {% endif %} -COPY ./start.sh / -COPY config-external.sh /opt/kolla/ - -CMD ["/start.sh"] +COPY extend_start.sh /usr/local/bin/kolla_extend_start +RUN chmod 755 /usr/local/bin/kolla_extend_start {{ include_footer }} diff --git a/docker/ceilometer/ceilometer-api/extend_start.sh b/docker/ceilometer/ceilometer-api/extend_start.sh new file mode 100644 index 000000000..afe612ae6 --- /dev/null +++ b/docker/ceilometer/ceilometer-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 + su -s /bin/sh -c "ceilometer-manage db_sync" ceilometer + exit 0 +fi diff --git a/docker/ceilometer/ceilometer-api/start.sh b/docker/ceilometer/ceilometer-api/start.sh deleted file mode 100755 index 6ba3cc37d..000000000 --- a/docker/ceilometer/ceilometer-api/start.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -set -o errexit - -CMD="/usr/bin/ceilometer-api" -ARGS="" - -# Loading common functions. -source /opt/kolla/kolla-common.sh - -# 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 - su -s /bin/sh -c "ceilometer-manage db_sync" ceilometer - exit 0 -fi - -exec $CMD $ARGS diff --git a/docker/ceilometer/ceilometer-central/Dockerfile.j2 b/docker/ceilometer/ceilometer-central/Dockerfile.j2 index 3b2e9a2c0..01447126e 100644 --- a/docker/ceilometer/ceilometer-central/Dockerfile.j2 +++ b/docker/ceilometer/ceilometer-central/Dockerfile.j2 @@ -5,14 +5,9 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla) {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} RUN yum install -y openstack-ceilometer-central \ - && yum clean all + && yum clean all {% endif %} {% endif %} -COPY ./start.sh / -COPY config-external.sh /opt/kolla/ - -CMD ["/start.sh"] - {{ include_footer }} diff --git a/docker/ceilometer/ceilometer-central/start.sh b/docker/ceilometer/ceilometer-central/start.sh deleted file mode 100755 index e074febc9..000000000 --- a/docker/ceilometer/ceilometer-central/start.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -set -o errexit - -CMD="/usr/bin/ceilometer-agent-central" -ARGS="" - -# Loading common functions. -source /opt/kolla/kolla-common.sh - -exec $CMD $ARGS diff --git a/docker/ceilometer/ceilometer-collector/Dockerfile.j2 b/docker/ceilometer/ceilometer-collector/Dockerfile.j2 index c5cf80d45..21509cb94 100644 --- a/docker/ceilometer/ceilometer-collector/Dockerfile.j2 +++ b/docker/ceilometer/ceilometer-collector/Dockerfile.j2 @@ -5,14 +5,9 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla) {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} RUN yum install -y openstack-ceilometer-collector \ - && yum clean all + && yum clean all {% endif %} {% endif %} -COPY ./start.sh / -COPY config-external.sh /opt/kolla/ - -CMD ["/start.sh"] - {{ include_footer }} diff --git a/docker/ceilometer/ceilometer-collector/start.sh b/docker/ceilometer/ceilometer-collector/start.sh deleted file mode 100755 index 585e4d7f5..000000000 --- a/docker/ceilometer/ceilometer-collector/start.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -set -o errexit - -CMD="/usr/bin/ceilometer-collector" -ARGS="" - -# Loading common functions. -source /opt/kolla/kolla-common.sh - -exec $CMD $ARGS diff --git a/docker/ceilometer/ceilometer-compute/Dockerfile.j2 b/docker/ceilometer/ceilometer-compute/Dockerfile.j2 index dd6bc62af..d2f75134d 100644 --- a/docker/ceilometer/ceilometer-compute/Dockerfile.j2 +++ b/docker/ceilometer/ceilometer-compute/Dockerfile.j2 @@ -4,17 +4,13 @@ MAINTAINER Kolla Project (https://launchpad.net/kolla) {% if install_type == 'binary' %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} -RUN yum install -y openstack-ceilometer-compute \ - python-ceilometerclient \ - python-pecan \ - && yum clean all +RUN yum install -y \ + openstack-ceilometer-compute \ + python-ceilometerclient \ + python-pecan \ + && yum clean all {% endif %} {% endif %} -COPY ./start.sh / -COPY config-external.sh /opt/kolla/ - -CMD ["/start.sh"] - {{ include_footer }} diff --git a/docker/ceilometer/ceilometer-compute/start.sh b/docker/ceilometer/ceilometer-compute/start.sh deleted file mode 100755 index f17a32709..000000000 --- a/docker/ceilometer/ceilometer-compute/start.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -set -o errexit - -CMD="/usr/bin/ceilometer-agent-compute" -ARGS="" - -# Loading common functions. -source /opt/kolla/kolla-common.sh - -exec $CMD $ARGS diff --git a/docker/ceilometer/ceilometer-notification/Dockerfile.j2 b/docker/ceilometer/ceilometer-notification/Dockerfile.j2 index 571166443..503e7ee7d 100644 --- a/docker/ceilometer/ceilometer-notification/Dockerfile.j2 +++ b/docker/ceilometer/ceilometer-notification/Dockerfile.j2 @@ -10,9 +10,4 @@ RUN yum install -y openstack-ceilometer-notification \ {% endif %} {% endif %} -COPY ./start.sh / -COPY config-external.sh /opt/kolla/ - -CMD ["/start.sh"] - {{ include_footer }} diff --git a/docker/ceilometer/ceilometer-notification/start.sh b/docker/ceilometer/ceilometer-notification/start.sh deleted file mode 100755 index a3421acaf..000000000 --- a/docker/ceilometer/ceilometer-notification/start.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash -set -o errexit - -CMD="/usr/bin/ceilometer-agent-notification" -ARGS="" - -# Loading common functions. -source /opt/kolla/kolla-common.sh - -exec $CMD $ARGS -- cgit v1.2.3