From 897337cdd61f1702aa7e68da0466804bf0d21a86 Mon Sep 17 00:00:00 2001 From: Paul Bourke Date: Wed, 17 Jun 2015 11:14:59 +0000 Subject: Symlink all non Dockerfile resources in images The only files in the docker image directories that differ majorly between distros are the Dockerfiles (e.g. different package manager mechanisms, different repo sources, etc). The supporting files such as the start.sh/check.sh and config files should largely stay the same between base images. This change moves these files up into a "common" directory, and symlinks them in the same way that the build script is managed. This means when adding a new base distro only new Dockerfiles need to be created. Also, if a distro does happen to require a vastly different start.sh script for example, one can choose to simply not symlink to the common and instead drop in a custom one. Implements: blueprint refactor-base-image-layout Change-Id: Ic4db69d31ff54a1fb95af4853a2e5ae490064284 --- docker/centos/binary/barbican/start.sh | 82 +------- docker/centos/binary/base/kolla-common.sh | 2 +- docker/centos/binary/base/service_hosts.sh | 2 +- .../binary/ceilometer/ceilometer-alarm/start.sh | 11 +- .../binary/ceilometer/ceilometer-api/start.sh | 52 +---- .../ceilometer-base/config-ceilometer.sh | 72 +------ .../binary/ceilometer/ceilometer-central/start.sh | 15 +- .../ceilometer/ceilometer-collector/start.sh | 10 +- .../binary/ceilometer/ceilometer-compute/start.sh | 26 +-- .../ceilometer/ceilometer-notification/start.sh | 10 +- .../centos/binary/cinder-app/cinder-api/check.sh | 17 +- .../centos/binary/cinder-app/cinder-api/start.sh | 74 +------- .../binary/cinder-app/cinder-backup/start.sh | 37 +--- .../binary/cinder-app/cinder-base/config-cinder.sh | 133 +------------ .../binary/cinder-app/cinder-scheduler/start.sh | 33 +--- .../binary/cinder-app/cinder-volume/start.sh | 76 +------- .../cinder-volume/volume-group-create.sh | 23 +-- .../centos/binary/designate/designate-api/start.sh | 38 +--- .../designate/designate-backend-bind9/start.sh | 61 +----- .../designate/designate-base/config-designate.sh | 80 +------- .../binary/designate/designate-central/start.sh | 25 +-- .../binary/designate/designate-mdns/start.sh | 18 +- .../designate/designate-poolmanager/start.sh | 55 +----- docker/centos/binary/galera/config-galera.sh | 95 +--------- docker/centos/binary/galera/start.sh | 15 +- docker/centos/binary/glance/glance-api/check.sh | 18 +- docker/centos/binary/glance/glance-api/start.sh | 53 +----- .../binary/glance/glance-base/config-glance.sh | 64 +------ .../centos/binary/glance/glance-registry/start.sh | 22 +-- docker/centos/binary/hautoproxy/haproxy.cfg.tmpl | 27 +-- docker/centos/binary/hautoproxy/start.py | 66 +------ docker/centos/binary/heat/heat-api-cfn/check.sh | 17 +- docker/centos/binary/heat/heat-api-cfn/start.sh | 29 +-- docker/centos/binary/heat/heat-api/check.sh | 17 +- docker/centos/binary/heat/heat-api/start.sh | 30 +-- docker/centos/binary/heat/heat-base/config-heat.sh | 68 +------ docker/centos/binary/heat/heat-engine/start.sh | 18 +- docker/centos/binary/horizon/start.sh | 37 +--- docker/centos/binary/keystone/check.sh | 13 +- docker/centos/binary/keystone/start.sh | 163 +--------------- docker/centos/binary/magnum/magnum-api/check.sh | 17 +- docker/centos/binary/magnum/magnum-api/start.sh | 28 +-- .../binary/magnum/magnum-base/config-magnum.sh | 47 +---- .../centos/binary/magnum/magnum-conductor/start.sh | 18 +- docker/centos/binary/mariadb-app/config-mysql.sh | 25 +-- .../centos/binary/mariadb-app/mysql-entrypoint.sh | 49 ----- .../check-scripts/check-dhcp-agent.sh | 14 +- .../neutron-agents/check-scripts/check-l3-agent.sh | 14 +- .../check-scripts/check-linuxbridge-agent.sh | 14 +- .../check-scripts/check-metadata-agent.sh | 14 +- .../config-scripts/config-dhcp-agent.sh | 89 +-------- .../config-scripts/config-l3-agent.sh | 86 +-------- .../config-scripts/config-linuxbridge-agent.sh | 30 +-- .../config-scripts/config-metadata-agent.sh | 75 +------- .../config-scripts/config-sudoers.sh | 13 +- .../binary/neutron/neutron-agents/fwaas_driver.ini | 4 +- .../binary/neutron/neutron-agents/supervisord.conf | 54 +----- .../binary/neutron/neutron-base/config-neutron.sh | 211 +-------------------- .../centos/binary/neutron/neutron-server/check.sh | 18 +- .../centos/binary/neutron/neutron-server/start.sh | 99 +--------- docker/centos/binary/nova-base/config-nova.sh | 138 +------------- .../nova-compute/config-nova-compute.sh | 29 +-- .../binary/nova-compute/nova-compute/start.sh | 11 +- .../binary/nova-compute/nova-libvirt/start.sh | 23 +-- .../nova-network/config-nova-network.sh | 31 +-- .../binary/nova-compute/nova-network/start.sh | 9 +- .../binary/nova-controller/nova-api/check.sh | 18 +- .../binary/nova-controller/nova-api/start.sh | 47 +---- .../binary/nova-controller/nova-conductor/start.sh | 24 +-- .../nova-controller/nova-consoleauth/start.sh | 12 +- .../nova-controller/nova-novncproxy/start.sh | 23 +-- .../binary/nova-controller/nova-scheduler/start.sh | 16 +- docker/centos/binary/rabbitmq/rabbitmq-env.conf | 3 +- docker/centos/binary/rabbitmq/rabbitmq.config | 12 +- docker/centos/binary/rabbitmq/start.sh | 25 +-- docker/centos/binary/swift/swift-account/start.sh | 35 +--- .../centos/binary/swift/swift-container/start.sh | 35 +--- docker/centos/binary/swift/swift-object/start.sh | 35 +--- .../binary/swift/swift-proxy-server/start.sh | 6 +- docker/centos/binary/zaqar/check.sh | 11 +- docker/centos/binary/zaqar/start.sh | 65 +------ 81 files changed, 80 insertions(+), 3151 deletions(-) mode change 100755 => 120000 docker/centos/binary/barbican/start.sh mode change 100644 => 120000 docker/centos/binary/ceilometer/ceilometer-alarm/start.sh mode change 100644 => 120000 docker/centos/binary/ceilometer/ceilometer-api/start.sh mode change 100644 => 120000 docker/centos/binary/ceilometer/ceilometer-base/config-ceilometer.sh mode change 100644 => 120000 docker/centos/binary/ceilometer/ceilometer-central/start.sh mode change 100644 => 120000 docker/centos/binary/ceilometer/ceilometer-collector/start.sh mode change 100644 => 120000 docker/centos/binary/ceilometer/ceilometer-compute/start.sh mode change 100644 => 120000 docker/centos/binary/ceilometer/ceilometer-notification/start.sh mode change 100755 => 120000 docker/centos/binary/cinder-app/cinder-api/check.sh mode change 100755 => 120000 docker/centos/binary/cinder-app/cinder-api/start.sh mode change 100755 => 120000 docker/centos/binary/cinder-app/cinder-backup/start.sh mode change 100644 => 120000 docker/centos/binary/cinder-app/cinder-base/config-cinder.sh mode change 100755 => 120000 docker/centos/binary/cinder-app/cinder-scheduler/start.sh mode change 100755 => 120000 docker/centos/binary/cinder-app/cinder-volume/start.sh mode change 100755 => 120000 docker/centos/binary/cinder-app/cinder-volume/volume-group-create.sh mode change 100755 => 120000 docker/centos/binary/designate/designate-api/start.sh mode change 100755 => 120000 docker/centos/binary/designate/designate-backend-bind9/start.sh mode change 100755 => 120000 docker/centos/binary/designate/designate-base/config-designate.sh mode change 100755 => 120000 docker/centos/binary/designate/designate-central/start.sh mode change 100755 => 120000 docker/centos/binary/designate/designate-mdns/start.sh mode change 100755 => 120000 docker/centos/binary/designate/designate-poolmanager/start.sh mode change 100755 => 120000 docker/centos/binary/galera/config-galera.sh mode change 100755 => 120000 docker/centos/binary/galera/start.sh mode change 100755 => 120000 docker/centos/binary/glance/glance-api/check.sh mode change 100755 => 120000 docker/centos/binary/glance/glance-api/start.sh mode change 100644 => 120000 docker/centos/binary/glance/glance-base/config-glance.sh mode change 100755 => 120000 docker/centos/binary/glance/glance-registry/start.sh mode change 100644 => 120000 docker/centos/binary/hautoproxy/haproxy.cfg.tmpl mode change 100755 => 120000 docker/centos/binary/hautoproxy/start.py mode change 100755 => 120000 docker/centos/binary/heat/heat-api-cfn/check.sh mode change 100755 => 120000 docker/centos/binary/heat/heat-api-cfn/start.sh mode change 100755 => 120000 docker/centos/binary/heat/heat-api/check.sh mode change 100755 => 120000 docker/centos/binary/heat/heat-api/start.sh mode change 100755 => 120000 docker/centos/binary/heat/heat-base/config-heat.sh mode change 100755 => 120000 docker/centos/binary/heat/heat-engine/start.sh mode change 100755 => 120000 docker/centos/binary/horizon/start.sh mode change 100755 => 120000 docker/centos/binary/keystone/check.sh mode change 100755 => 120000 docker/centos/binary/keystone/start.sh mode change 100755 => 120000 docker/centos/binary/magnum/magnum-api/check.sh mode change 100755 => 120000 docker/centos/binary/magnum/magnum-api/start.sh mode change 100755 => 120000 docker/centos/binary/magnum/magnum-base/config-magnum.sh mode change 100755 => 120000 docker/centos/binary/magnum/magnum-conductor/start.sh mode change 100755 => 120000 docker/centos/binary/mariadb-app/config-mysql.sh delete mode 100755 docker/centos/binary/mariadb-app/mysql-entrypoint.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/check-scripts/check-l3-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/check-scripts/check-metadata-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/config-scripts/config-dhcp-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/config-scripts/config-l3-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/config-scripts/config-linuxbridge-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/config-scripts/config-metadata-agent.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-agents/config-scripts/config-sudoers.sh mode change 100644 => 120000 docker/centos/binary/neutron/neutron-agents/fwaas_driver.ini mode change 100644 => 120000 docker/centos/binary/neutron/neutron-agents/supervisord.conf mode change 100644 => 120000 docker/centos/binary/neutron/neutron-base/config-neutron.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-server/check.sh mode change 100755 => 120000 docker/centos/binary/neutron/neutron-server/start.sh mode change 100755 => 120000 docker/centos/binary/nova-base/config-nova.sh mode change 100755 => 120000 docker/centos/binary/nova-compute/nova-compute/config-nova-compute.sh mode change 100755 => 120000 docker/centos/binary/nova-compute/nova-compute/start.sh mode change 100755 => 120000 docker/centos/binary/nova-compute/nova-libvirt/start.sh mode change 100755 => 120000 docker/centos/binary/nova-compute/nova-network/config-nova-network.sh mode change 100755 => 120000 docker/centos/binary/nova-compute/nova-network/start.sh mode change 100755 => 120000 docker/centos/binary/nova-controller/nova-api/check.sh mode change 100755 => 120000 docker/centos/binary/nova-controller/nova-api/start.sh mode change 100755 => 120000 docker/centos/binary/nova-controller/nova-conductor/start.sh mode change 100755 => 120000 docker/centos/binary/nova-controller/nova-consoleauth/start.sh mode change 100755 => 120000 docker/centos/binary/nova-controller/nova-novncproxy/start.sh mode change 100755 => 120000 docker/centos/binary/nova-controller/nova-scheduler/start.sh mode change 100644 => 120000 docker/centos/binary/rabbitmq/rabbitmq-env.conf mode change 100644 => 120000 docker/centos/binary/rabbitmq/rabbitmq.config mode change 100755 => 120000 docker/centos/binary/rabbitmq/start.sh mode change 100644 => 120000 docker/centos/binary/swift/swift-account/start.sh mode change 100644 => 120000 docker/centos/binary/swift/swift-container/start.sh mode change 100644 => 120000 docker/centos/binary/swift/swift-object/start.sh mode change 100644 => 120000 docker/centos/binary/swift/swift-proxy-server/start.sh mode change 100755 => 120000 docker/centos/binary/zaqar/check.sh mode change 100755 => 120000 docker/centos/binary/zaqar/start.sh (limited to 'docker/centos/binary') diff --git a/docker/centos/binary/barbican/start.sh b/docker/centos/binary/barbican/start.sh deleted file mode 100755 index 673aa4339..000000000 --- a/docker/centos/binary/barbican/start.sh +++ /dev/null @@ -1,81 +0,0 @@ -#!/bin/bash - -set -e - -: ${BARBICAN_DB_USER:=barbican} -: ${BARBICAN_DB_NAME:=barbican} -: ${KEYSTONE_AUTH_PROTOCOL:=http} -: ${BARBICAN_KEYSTONE_USER:=barbican} -: ${ADMIN_TENANT_NAME:=admin} - -if ! [ "$BARBICAN_DB_PASSWORD" ]; then - BARBICAN_DB_PASSWORD=$(openssl rand -hex 15) - export BARBICAN_DB_PASSWORD -fi - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - KEYSTONE_ADMIN_SERVICE_PORT BARBICAN_ADMIN_PASSWORD -fail_unless_db -fail_unless_os_service_running keystone - -mysql -h ${MARIADB_SERVICE_HOST} -u root -p"${DB_ROOT_PASSWORD}" mysql < /dev/null 2>&1 || /bin/keystone user-create --name ${BARBICAN_KEYSTONE_USER} --pass ${BARBICAN_ADMIN_PASSWORD} - -keystone role-get observer > /dev/null 2>&1 || /bin/keystone role-create --name observer -keystone role-get creator > /dev/null 2>&1 || /bin/keystone role-create --name creator - -keystone user-get ${BARBICAN_KEYSTONE_USER} > /dev/null 2>&1 || /bin/keystone user-role-add --user ${BARBICAN_KEYSTONE_USER} --role admin --tenant ${ADMIN_TENANT_NAME} - -# launch Barbican using uwsgi -exec uwsgi --master --emperor /etc/barbican/vassals diff --git a/docker/centos/binary/barbican/start.sh b/docker/centos/binary/barbican/start.sh new file mode 120000 index 000000000..fbb47be02 --- /dev/null +++ b/docker/centos/binary/barbican/start.sh @@ -0,0 +1 @@ +../../../common/barbican/start.sh \ No newline at end of file diff --git a/docker/centos/binary/base/kolla-common.sh b/docker/centos/binary/base/kolla-common.sh index 380efbc3d..c265c62f7 120000 --- a/docker/centos/binary/base/kolla-common.sh +++ b/docker/centos/binary/base/kolla-common.sh @@ -1 +1 @@ -../../../common/kolla-common.sh \ No newline at end of file +../../../common/base/kolla-common.sh \ No newline at end of file diff --git a/docker/centos/binary/base/service_hosts.sh b/docker/centos/binary/base/service_hosts.sh index 777b7334d..06e045440 120000 --- a/docker/centos/binary/base/service_hosts.sh +++ b/docker/centos/binary/base/service_hosts.sh @@ -1 +1 @@ -../../../common/service_hosts.sh \ No newline at end of file +../../../common/base/service_hosts.sh \ No newline at end of file diff --git a/docker/centos/binary/ceilometer/ceilometer-alarm/start.sh b/docker/centos/binary/ceilometer/ceilometer-alarm/start.sh deleted file mode 100644 index 7470ae608..000000000 --- a/docker/centos/binary/ceilometer/ceilometer-alarm/start.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-ceilometer.sh - - -exec /usr/bin/ceilometer-alarm-evaluator & -exec /usr/bin/ceilometer-alarm-notifier diff --git a/docker/centos/binary/ceilometer/ceilometer-alarm/start.sh b/docker/centos/binary/ceilometer/ceilometer-alarm/start.sh new file mode 120000 index 000000000..ed3ac528d --- /dev/null +++ b/docker/centos/binary/ceilometer/ceilometer-alarm/start.sh @@ -0,0 +1 @@ +../../../../common/ceilometer/ceilometer-alarm/start.sh \ No newline at end of file diff --git a/docker/centos/binary/ceilometer/ceilometer-api/start.sh b/docker/centos/binary/ceilometer/ceilometer-api/start.sh deleted file mode 100644 index f081c9f84..000000000 --- a/docker/centos/binary/ceilometer/ceilometer-api/start.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-ceilometer.sh - -check_required_vars CEILOMETER_DB_USER CEILOMETER_DB_NAME \ - CEILOMETER_DB_PASSWORD KEYSTONE_ADMIN_TOKEN \ - KEYSTONE_AUTH_PROTOCOL KEYSTONE_ADMIN_SERVICE_HOST \ - KEYSTONE_ADMIN_SERVICE_PORT ADMIN_TENANT_NAME \ - CEILOMETER_KEYSTONE_USER CEILOMETER_ADMIN_PASSWORD \ - CEILOMETER_API_SERVICE_HOST PUBLIC_IP - -fail_unless_os_service_running keystone -fail_unless_db - -#TODO(pkilambi): Add mongodb support - -mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql < /openrc < /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -else - if ! cinder list > /dev/null; then - echo "ERROR: cinder list failed" >&2 - RES=1 - fi -fi - -exit $RES diff --git a/docker/centos/binary/cinder-app/cinder-api/check.sh b/docker/centos/binary/cinder-app/cinder-api/check.sh new file mode 120000 index 000000000..829110b45 --- /dev/null +++ b/docker/centos/binary/cinder-app/cinder-api/check.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-api/check.sh \ No newline at end of file diff --git a/docker/centos/binary/cinder-app/cinder-api/start.sh b/docker/centos/binary/cinder-app/cinder-api/start.sh deleted file mode 100755 index 28293ac6c..000000000 --- a/docker/centos/binary/cinder-app/cinder-api/start.sh +++ /dev/null @@ -1,73 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-cinder.sh - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - ADMIN_TENANT_NAME PUBLIC_IP CINDER_API_SERVICE_HOST \ - KEYSTONE_AUTH_PROTOCOL KEYSTONE_ADMIN_SERVICE_PORT \ - CINDER_KEYSTONE_USER CINDER_KEYSTONE_PASSWORD \ - CINDER_API_LOG_FILE CINDER_API_SERVICE_LISTEN \ - CINDER_API_SERVICE_PORT CINDER_API_SERVICE_LISTEN - -fail_unless_os_service_running keystone - -cfg=/etc/cinder/cinder.conf - -# Set the auth credentials -export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0" - -# Create Keystone User -crux user-create --update \ - -n "${CINDER_KEYSTONE_USER}" \ - -p "${CINDER_KEYSTONE_PASSWORD}" \ - -t "${ADMIN_TENANT_NAME}" \ - -r admin - -# Configure Keystone -crux endpoint-create --remove-all \ - -n cinder \ - -t volume \ - -P "http://${CINDER_API_SERVICE_HOST}:${CINDER_API_SERVICE_PORT}/v1/\$(tenant_id)s" \ - -A "http://${CINDER_API_SERVICE_HOST}:${CINDER_API_SERVICE_PORT}/v1/\$(tenant_id)s" \ - -I "http://${CINDER_API_SERVICE_HOST}:${CINDER_API_SERVICE_PORT}/v1/\$(tenant_id)s" - -crux endpoint-create --remove-all \ - -n cinderv2 \ - -t volumev2 \ - -P "http://${CINDER_API_SERVICE_HOST}:${CINDER_API_SERVICE_PORT}/v2/\$(tenant_id)s" \ - -A "http://${CINDER_API_SERVICE_HOST}:${CINDER_API_SERVICE_PORT}/v2/\$(tenant_id)s" \ - -I "http://${CINDER_API_SERVICE_HOST}:${CINDER_API_SERVICE_PORT}/v2/\$(tenant_id)s" - -# Logging -crudini --set $cfg \ - DEFAULT \ - log_file \ - "${CINDER_API_LOG_FILE}" - -# API Configuration -crudini --set $cfg \ - DEFAULT \ - osapi_volume_listen \ - "${CINDER_API_SERVICE_LISTEN}" - -crudini --set $cfg \ - DEFAULT \ - osapi_volume_listen_port \ - "${CINDER_API_SERVICE_PORT}" - -crudini --set $cfg \ - DEFAULT \ - enable_v1_api \ - "true" - -crudini --set $cfg \ - DEFAULT \ - enable_v2_api \ - "true" - -echo "Starting cinder-api" -exec /usr/bin/cinder-api --config-file $cfg diff --git a/docker/centos/binary/cinder-app/cinder-api/start.sh b/docker/centos/binary/cinder-app/cinder-api/start.sh new file mode 120000 index 000000000..33182c78c --- /dev/null +++ b/docker/centos/binary/cinder-app/cinder-api/start.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-api/start.sh \ No newline at end of file diff --git a/docker/centos/binary/cinder-app/cinder-backup/start.sh b/docker/centos/binary/cinder-app/cinder-backup/start.sh deleted file mode 100755 index 5dff79b35..000000000 --- a/docker/centos/binary/cinder-app/cinder-backup/start.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-cinder.sh - -check_required_vars CINDER_BACKUP_DRIVER CINDER_BACKUP_MANAGER \ - CINDER_BACKUP_API_CLASS CINDER_BACKUP_NAME_TEMPLATE - -cfg=/etc/cinder/cinder.conf - -# volume backup configuration -crudini --set $cfg \ - DEFAULT \ - backup_driver \ - "${CINDER_BACKUP_DRIVER}" -crudini --set $cfg \ - DEFAULT \ - backup_topic \ - "cinder-backup" -crudini --set $cfg \ - DEFAULT \ - backup_manager \ - "${CINDER_BACKUP_MANAGER}" -crudini --set $cfg \ - DEFAULT \ - backup_api_class \ - "${CINDER_BACKUP_API_CLASS}" -crudini --set $cfg \ - DEFAULT \ - backup_name_template \ - "${CINDER_BACKUP_NAME_TEMPLATE}" - -echo "Starting cinder-backup" -exec /usr/bin/cinder-backup --config-file $cfg diff --git a/docker/centos/binary/cinder-app/cinder-backup/start.sh b/docker/centos/binary/cinder-app/cinder-backup/start.sh new file mode 120000 index 000000000..c21a17f09 --- /dev/null +++ b/docker/centos/binary/cinder-app/cinder-backup/start.sh @@ -0,0 +1 @@ +../../../../common/cinder-app/cinder-backup/start.sh \ No newline at end of file diff --git a/docker/centos/binary/cinder-app/cinder-base/config-cinder.sh b/docker/centos/binary/cinder-app/cinder-base/config-cinder.sh deleted file mode 100644 index f82cb5510..000000000 --- a/docker/centos/binary/cinder-app/cinder-base/config-cinder.sh +++ /dev/null @@ -1,132 +0,0 @@ -#!/bin/sh - -set -e - -. /opt/kolla/kolla-common.sh - -check_required_vars CINDER_DB_PASSWORD CINDER_KEYSTONE_PASSWORD \ - KEYSTONE_PUBLIC_SERVICE_HOST RABBITMQ_SERVICE_HOST \ - GLANCE_API_SERVICE_HOST MARIADB_SERVICE_HOST \ - RABBITMQ_SERVICE_HOST RABBITMQ_SERVICE_PORT \ - RABBIT_USERID RABBIT_PASSWORD GLANCE_API_SERVICE_HOST \ - GLANCE_API_SERVICE_PORT ADMIN_TENANT_NAME \ - CINDER_DB_NAME CINDER_DB_USER CINDER_KEYSTONE_USER \ - PUBLIC_IP KEYSTONE_AUTH_PROTOCOL CINDER_LOG_DIR - -dump_vars - -cat > /openrc <> /etc/named.conf < /etc/rndc.key < /etc/rndc.conf <> /etc/rndc.conf -chown named /etc/rndc.key - -# Launch and keep in the foreground. -exec /usr/sbin/named -u named -g diff --git a/docker/centos/binary/designate/designate-backend-bind9/start.sh b/docker/centos/binary/designate/designate-backend-bind9/start.sh new file mode 120000 index 000000000..918411fa1 --- /dev/null +++ b/docker/centos/binary/designate/designate-backend-bind9/start.sh @@ -0,0 +1 @@ +../../../../common/designate/designate-backend-bind9/start.sh \ No newline at end of file diff --git a/docker/centos/binary/designate/designate-base/config-designate.sh b/docker/centos/binary/designate/designate-base/config-designate.sh deleted file mode 100755 index 6edfd1bd2..000000000 --- a/docker/centos/binary/designate/designate-base/config-designate.sh +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh - -get_or_create_domain() { - local DOMAIN_NAME=$1 - - DOMAIN_ID=$(designate domain-create --name $DOMAIN_NAME | awk '/id/ { print $4; }') - # Searching domain if not created - if [ -z $DOMAIN_ID ]; then - DOMAIN_ID=$(designate domain-list | awk "/$DOMAIN_NAME/ { print \$2; }") - fi - # Fail if domain still don't exist - if [ -z $DOMAIN_ID ]; then - echo "Creating domain failed" 1>&2 - exit 1 - fi - - echo $DOMAIN_ID -} - -check_required_vars DESIGNATE_DB_PASSWORD DESIGNATE_KEYSTONE_PASSWORD \ - KEYSTONE_PUBLIC_SERVICE_HOST RABBITMQ_SERVICE_HOST \ - DESIGNATE_BIND9_RNDC_KEY DESIGNATE_BACKEND \ - KEYSTONE_PUBLIC_SERVICE_PORT DESIGNATE_KEYSTONE_USER \ - RABBIT_USERID RABBIT_PASSWORD DESIGNATE_DB_USER \ - DESIGNATE_DB_NAME KEYSTONE_AUTH_PROTOCOL \ - KEYSTONE_ADMIN_SERVICE_HOST KEYSTONE_ADMIN_SERVICE_PORT \ - DEBUG_LOGGING DESIGNATE_POOLMAN_POOLID - -fail_unless_db -dump_vars - -cat > /openrc < /etc/rndc.key < $DB_CLUSTER_INIT_SQL - - if [ "$MARIADB_DATABASE" ]; then - echo "CREATE DATABASE IF NOT EXISTS $MARIADB_DATABASE ;" >> $DB_CLUSTER_INIT_SQL - fi - - if [ "$MARIADB_USER" -a "$MARIADB_PASSWORD" ]; then - echo "CREATE USER '$MARIADB_USER'@'%' IDENTIFIED BY '$MARIADB_PASSWORD' ;" >> $DB_CLUSTER_INIT_SQL - - if [ "$MARIADB_DATABASE" ]; then - echo "GRANT ALL ON $MARIADB_DATABASE.* TO '$MARIADB_USER'@'%' ;" >> $DB_CLUSTER_INIT_SQL - fi - fi - - echo "FLUSH PRIVILEGES" >> $DB_CLUSTER_INIT_SQL -} - -function populate_db { - if [[ $(ls /var/lib/mysql) == "" ]]; then - echo "POPULATING NEW DB" - mysql_install_db - chown -R mysql /var/lib/mysql - else - echo "DB ALREADY EXISTS" - fi -} - -function prepare_db { - populate_db - configure_db - configure_files -} diff --git a/docker/centos/binary/galera/config-galera.sh b/docker/centos/binary/galera/config-galera.sh new file mode 120000 index 000000000..f6782bb87 --- /dev/null +++ b/docker/centos/binary/galera/config-galera.sh @@ -0,0 +1 @@ +../../../common/galera/config-galera.sh \ No newline at end of file diff --git a/docker/centos/binary/galera/start.sh b/docker/centos/binary/galera/start.sh deleted file mode 100755 index 9288b77cc..000000000 --- a/docker/centos/binary/galera/start.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-galera.sh - -check_required_vars DB_CLUSTER_INIT_DB -prepare_db - -if [[ "${DB_CLUSTER_INIT_DB}" == "true" ]] && ! [[ -a /var/lib/mysql/cluster.exists ]]; then - DB_CLUSTER_IS_MASTER_NODE="--wsrep-new-cluster" - touch /var/lib/mysql/cluster.exists -fi - -mysqld_safe --init-file=$DB_CLUSTER_INIT_SQL $DB_CLUSTER_IS_MASTER_NODE \ No newline at end of file diff --git a/docker/centos/binary/galera/start.sh b/docker/centos/binary/galera/start.sh new file mode 120000 index 000000000..1fa9a143d --- /dev/null +++ b/docker/centos/binary/galera/start.sh @@ -0,0 +1 @@ +../../../common/galera/start.sh \ No newline at end of file diff --git a/docker/centos/binary/glance/glance-api/check.sh b/docker/centos/binary/glance/glance-api/check.sh deleted file mode 100755 index f97ef70f4..000000000 --- a/docker/centos/binary/glance/glance-api/check.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash - -RES=0 - -. /openrc -if ! keystone token-get > /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -else - if ! glance image-list > /dev/null; then - echo "ERROR: glance image-list failed" >&2 - RES=1 - fi -fi - -exit $RES - diff --git a/docker/centos/binary/glance/glance-api/check.sh b/docker/centos/binary/glance/glance-api/check.sh new file mode 120000 index 000000000..73dd5e253 --- /dev/null +++ b/docker/centos/binary/glance/glance-api/check.sh @@ -0,0 +1 @@ +../../../../common/glance/glance-api/check.sh \ No newline at end of file diff --git a/docker/centos/binary/glance/glance-api/start.sh b/docker/centos/binary/glance/glance-api/start.sh deleted file mode 100755 index c546333f4..000000000 --- a/docker/centos/binary/glance/glance-api/start.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-glance.sh -: ${GLANCE_API_SERVICE_HOST:=$PUBLIC_IP} - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - GLANCE_KEYSTONE_USER GLANCE_KEYSTONE_PASSWORD \ - ADMIN_TENANT_NAME GLANCE_API_SERVICE_HOST \ - PUBLIC_IP - -fail_unless_os_service_running keystone - -export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0" - -crux user-create --update \ - -n "${GLANCE_KEYSTONE_USER}" \ - -p "${GLANCE_KEYSTONE_PASSWORD}" \ - -t "${ADMIN_TENANT_NAME}" \ - -r admin - -crux endpoint-create --remove-all \ - -n glance -t image \ - -I "http://${GLANCE_API_SERVICE_HOST}:9292" \ - -P "http://${PUBLIC_IP}:9292" \ - -A "http://${GLANCE_API_SERVICE_HOST}:9292" - -# turn on notification sending by glance -crudini --set /etc/glance/glance-api.conf \ - DEFAULT \ - notification_driver \ - "messaging" - -crudini --set /etc/glance/glance-api.conf \ - DEFAULT \ - rabbit_host \ - "${RABBITMQ_SERVICE_HOST}" - -crudini --set /etc/glance/glance-api.conf \ - DEFAULT \ - registry_host \ - "${GLANCE_REGISTRY_SERVICE_HOST}" - -crudini --set /etc/glance/glance-api.conf \ - DEFAULT \ - debug \ - "True" - -exec /usr/bin/glance-api diff --git a/docker/centos/binary/glance/glance-api/start.sh b/docker/centos/binary/glance/glance-api/start.sh new file mode 120000 index 000000000..6740e1fe9 --- /dev/null +++ b/docker/centos/binary/glance/glance-api/start.sh @@ -0,0 +1 @@ +../../../../common/glance/glance-api/start.sh \ No newline at end of file diff --git a/docker/centos/binary/glance/glance-base/config-glance.sh b/docker/centos/binary/glance/glance-base/config-glance.sh deleted file mode 100644 index 97d076c11..000000000 --- a/docker/centos/binary/glance/glance-base/config-glance.sh +++ /dev/null @@ -1,63 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh - -: ${ADMIN_TENANT_NAME:=admin} -: ${GLANCE_DB_NAME:=glance} -: ${GLANCE_DB_USER:=glance} -: ${GLANCE_KEYSTONE_USER:=glance} -: ${KEYSTONE_AUTH_PROTOCOL:=http} -: ${PUBLIC_IP:=$GLANCE_API_PORT_9292_TCP_ADDR} - -check_required_vars GLANCE_DB_PASSWORD GLANCE_KEYSTONE_PASSWORD -dump_vars - -cat > /openrc <.*)_PORT_(?P\d+)_(?P(UDP|TCP))$') - -def parse_args(): - p = argparse.ArgumentParser() - p.add_argument('--output', '-o', - default='/etc/haproxy/haproxy.cfg') - p.add_argument('--no-start', '-n', - action='store_true') - p.add_argument('--template-dir', '-t', - default='/etc/haproxy/templates') - return p.parse_args() - -def discover_services(): - services = [] - for k in os.environ: - mo = re_url.match(k) - - if mo: - parts = urlparse.urlparse(os.environ[k]) - remote_host,remote_port = parts.netloc.split(':') - service_name = '%(name)s-%(port)s' % mo.groupdict() - - services.append({ - 'remote_name': mo.group('name'), - 'remote_addr': remote_host, - 'remote_port': remote_port, - 'remote_proto': parts.scheme, - 'local_port': mo.group('port'), - 'service_name': service_name, - }) - - return services - -def main(): - args = parse_args() - services = discover_services() - - env = Environment(loader=FileSystemLoader(['.', - args.template_dir])) - template = env.get_template('haproxy.cfg.tmpl') - with open(args.output, 'w') as fd: - fd.write(template.render(services=services)) - - if args.no_start: - return - - os.execlp('haproxy', 'haproxy', '-f', args.output, '-db') - -if __name__ == '__main__': - main() - diff --git a/docker/centos/binary/hautoproxy/start.py b/docker/centos/binary/hautoproxy/start.py new file mode 120000 index 000000000..f89efa2f8 --- /dev/null +++ b/docker/centos/binary/hautoproxy/start.py @@ -0,0 +1 @@ +../../../common/hautoproxy/start.py \ No newline at end of file diff --git a/docker/centos/binary/heat/heat-api-cfn/check.sh b/docker/centos/binary/heat/heat-api-cfn/check.sh deleted file mode 100755 index ee03dc6d2..000000000 --- a/docker/centos/binary/heat/heat-api-cfn/check.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -RES=0 - -. /openrc -if ! keystone token-get > /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -else - if ! heat stack-list > /dev/null; then - echo "ERROR: heat stack-list failed" >&2 - RES=1 - fi -fi - -exit $RES diff --git a/docker/centos/binary/heat/heat-api-cfn/check.sh b/docker/centos/binary/heat/heat-api-cfn/check.sh new file mode 120000 index 000000000..68fce28bf --- /dev/null +++ b/docker/centos/binary/heat/heat-api-cfn/check.sh @@ -0,0 +1 @@ +../../../../common/heat/heat-api-cfn/check.sh \ No newline at end of file diff --git a/docker/centos/binary/heat/heat-api-cfn/start.sh b/docker/centos/binary/heat/heat-api-cfn/start.sh deleted file mode 100755 index bcd72250b..000000000 --- a/docker/centos/binary/heat/heat-api-cfn/start.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-heat.sh - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - HEAT_CFN_KEYSTONE_USER HEAT_CFN_KEYSTONE_PASSWORD \ - KEYSTONE_AUTH_PROTOCOL KEYSTONE_ADMIN_SERVICE_PORT \ - ADMIN_TENANT_NAME HEAT_API_CFN_SERVICE_HOST \ - HEAT_API_CFN_SERVICE_PORT - -fail_unless_os_service_running keystone - -export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0" - -crux user-create -n ${HEAT_CFN_KEYSTONE_USER} \ - -p ${HEAT_CFN_KEYSTONE_PASSWORD} \ - -t ${ADMIN_TENANT_NAME} \ - -r admin - -crux endpoint-create --remove-all -n ${HEAT_CFN_KEYSTONE_USER} -t cloudformation \ - -I "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_CFN_SERVICE_HOST}:${HEAT_API_CFN_SERVICE_PORT}/v1" \ - -P "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_CFN_SERVICE_HOST}:${HEAT_API_CFN_SERVICE_PORT}/v1" \ - -A "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_CFN_SERVICE_HOST}:${HEAT_API_CFN_SERVICE_PORT}/v1" - -exec /usr/bin/heat-api-cfn diff --git a/docker/centos/binary/heat/heat-api-cfn/start.sh b/docker/centos/binary/heat/heat-api-cfn/start.sh new file mode 120000 index 000000000..a71201d4b --- /dev/null +++ b/docker/centos/binary/heat/heat-api-cfn/start.sh @@ -0,0 +1 @@ +../../../../common/heat/heat-api-cfn/start.sh \ No newline at end of file diff --git a/docker/centos/binary/heat/heat-api/check.sh b/docker/centos/binary/heat/heat-api/check.sh deleted file mode 100755 index ee03dc6d2..000000000 --- a/docker/centos/binary/heat/heat-api/check.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -RES=0 - -. /openrc -if ! keystone token-get > /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -else - if ! heat stack-list > /dev/null; then - echo "ERROR: heat stack-list failed" >&2 - RES=1 - fi -fi - -exit $RES diff --git a/docker/centos/binary/heat/heat-api/check.sh b/docker/centos/binary/heat/heat-api/check.sh new file mode 120000 index 000000000..1e72d2e2c --- /dev/null +++ b/docker/centos/binary/heat/heat-api/check.sh @@ -0,0 +1 @@ +../../../../common/heat/heat-api/check.sh \ No newline at end of file diff --git a/docker/centos/binary/heat/heat-api/start.sh b/docker/centos/binary/heat/heat-api/start.sh deleted file mode 100755 index b57aaa710..000000000 --- a/docker/centos/binary/heat/heat-api/start.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-heat.sh - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - HEAT_KEYSTONE_USER HEAT_KEYSTONE_PASSWORD \ - KEYSTONE_AUTH_PROTOCOL ADMIN_TENANT_NAME \ - HEAT_API_SERVICE_HOST PUBLIC_IP - -fail_unless_os_service_running keystone - -export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" -crux user-create -n ${HEAT_KEYSTONE_USER} \ - -p ${HEAT_KEYSTONE_PASSWORD} \ - -t ${ADMIN_TENANT_NAME} \ - -r admin - -crux endpoint-create --remove-all -n ${HEAT_KEYSTONE_USER} -t orchestration \ - -I "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_SERVICE_HOST}:8004/v1/%(tenant_id)s" \ - -P "${KEYSTONE_AUTH_PROTOCOL}://${PUBLIC_IP}:8004/v1/%(tenant_id)s" \ - -A "${KEYSTONE_AUTH_PROTOCOL}://${HEAT_API_SERVICE_HOST}:8004/v1/%(tenant_id)s" - -# will use crux after https://github.com/larsks/crux/issues/1 is implemented -openstack role list --os-token="${KEYSTONE_ADMIN_TOKEN}" --os-url $SERVICE_ENDPOINT -f csv | tail -n +2 | awk -F, '{print $2}' | grep heat_stack_user || keystone role-create --name heat_stack_user - -exec /usr/bin/heat-api diff --git a/docker/centos/binary/heat/heat-api/start.sh b/docker/centos/binary/heat/heat-api/start.sh new file mode 120000 index 000000000..cf3eb022c --- /dev/null +++ b/docker/centos/binary/heat/heat-api/start.sh @@ -0,0 +1 @@ +../../../../common/heat/heat-api/start.sh \ No newline at end of file diff --git a/docker/centos/binary/heat/heat-base/config-heat.sh b/docker/centos/binary/heat/heat-base/config-heat.sh deleted file mode 100755 index 74b2718a4..000000000 --- a/docker/centos/binary/heat/heat-base/config-heat.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh - -: ${ADMIN_TENANT_NAME:=admin} -: ${HEAT_DB_NAME:=heat} -: ${HEAT_DB_USER:=heat} -: ${HEAT_KEYSTONE_USER:=heat} -: ${HEAT_CFN_KEYSTONE_USER:=heat_cfn} -: ${KEYSTONE_AUTH_PROTOCOL:=http} -: ${PUBLIC_IP:=$HEAT_API_PORT_8004_TCP_ADDR} -: ${RABBIT_USER:=guest} -: ${RABBIT_PASSWORD:=guest} - -check_required_vars HEAT_DB_PASSWORD HEAT_KEYSTONE_PASSWORD \ - KEYSTONE_PUBLIC_SERVICE_HOST RABBITMQ_SERVICE_HOST - -fail_unless_db -dump_vars - -cat > /openrc < /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -fi - -exit $RES - diff --git a/docker/centos/binary/keystone/check.sh b/docker/centos/binary/keystone/check.sh new file mode 120000 index 000000000..fe8e7608c --- /dev/null +++ b/docker/centos/binary/keystone/check.sh @@ -0,0 +1 @@ +../../../common/keystone/check.sh \ No newline at end of file diff --git a/docker/centos/binary/keystone/start.sh b/docker/centos/binary/keystone/start.sh deleted file mode 100755 index 6dfebe060..000000000 --- a/docker/centos/binary/keystone/start.sh +++ /dev/null @@ -1,162 +0,0 @@ -#!/bin/bash - -set -e - -# Run Kolla common script -echo "Running the kolla-common script" -. /opt/kolla/kolla-common.sh - -# Credentials, token, etc.. -: ${ADMIN_USER:=admin} -: ${ADMIN_USER_PASSWORD:=password} -: ${ADMIN_TENANT_NAME:=admin} -: ${KEYSTONE_USER:=keystone} -: ${KEYSTONE_ADMIN_PASSWORD:=password} -: ${KEYSTONE_ADMIN_TOKEN:=changeme} -# DB Settings -: ${INIT_DB:=true} -: ${KEYSTONE_DB_NAME:=keystone} -: ${KEYSTONE_DB_USER:=keystone} -: ${DB_ROOT_PASSWORD:=password} -: ${MARIADB_SERVICE_HOST:=$PUBLIC_IP} -: ${KEYSTONE_DB_PASSWORD:=password} -# Service Addresses/Ports/Version -: ${KEYSTONE_PUBLIC_SERVICE_HOST:=$PUBLIC_IP} -: ${KEYSTONE_ADMIN_SERVICE_HOST:=$PUBLIC_IP} -: ${KEYSTONE_PUBLIC_SERVICE_PORT:=5000} -: ${KEYSTONE_ADMIN_SERVICE_PORT:=35357} -: ${KEYSTONE_API_VERSION:=2.0} -# Logging -: ${LOG_FILE:=/var/log/keystone/keystone.log} -: ${VERBOSE_LOGGING:=true} -: ${DEBUG_LOGGING:=false} -: ${USE_STDERR:=false} -# Token provider, driver, etc.. -: ${TOKEN_PROVIDER:=uuid} -: ${TOKEN_DRIVER:=sql} - -## Check DB connectivity and required variables -echo "Checking connectivity to the DB" -fail_unless_db -echo "Checking for required variables" -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_DB_PASSWORD \ - KEYSTONE_ADMIN_PASSWORD ADMIN_TENANT_NAME \ - KEYSTONE_PUBLIC_SERVICE_HOST KEYSTONE_ADMIN_SERVICE_HOST \ - PUBLIC_IP -dump_vars - -# Setup the Keystone DB -echo "Setting up Keystone DB" -mysql -h ${MARIADB_SERVICE_HOST} -u root -p"${DB_ROOT_PASSWORD}" mysql < /openrc < /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -else - if ! heat stack-list > /dev/null; then - echo "ERROR: heat stack-list failed" >&2 - RES=1 - fi -fi - -exit $RES diff --git a/docker/centos/binary/magnum/magnum-api/check.sh b/docker/centos/binary/magnum/magnum-api/check.sh new file mode 120000 index 000000000..7464ba296 --- /dev/null +++ b/docker/centos/binary/magnum/magnum-api/check.sh @@ -0,0 +1 @@ +../../../../common/magnum/magnum-api/check.sh \ No newline at end of file diff --git a/docker/centos/binary/magnum/magnum-api/start.sh b/docker/centos/binary/magnum/magnum-api/start.sh deleted file mode 100755 index 00a51b3cd..000000000 --- a/docker/centos/binary/magnum/magnum-api/start.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -set -e - -. /opt/kolla/kolla-common.sh -. /opt/kolla/config-magnum.sh - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - MAGNUM_KEYSTONE_USER MAGNUM_KEYSTONE_PASSWORD \ - KEYSTONE_AUTH_PROTOCOL ADMIN_TENANT_NAME \ - MAGNUM_API_SERVICE_HOST KEYSTONE_ADMIN_SERVICE_PORT \ - MAGNUM_API_SERVICE_PORT - -fail_unless_os_service_running keystone - -export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0" -crux user-create -n ${MAGNUM_KEYSTONE_USER} \ - -p ${MAGNUM_KEYSTONE_PASSWORD} \ - -t ${ADMIN_TENANT_NAME} \ - -r admin - -crux endpoint-create --remove-all -n ${MAGNUM_KEYSTONE_USER} -t container \ - -I "${KEYSTONE_AUTH_PROTOCOL}://${MAGNUM_API_SERVICE_HOST}:${MAGNUM_API_SERVICE_PORT}/v1" \ - -P "${KEYSTONE_AUTH_PROTOCOL}://${MAGNUM_API_SERVICE_HOST}:${MAGNUM_API_SERVICE_PORT}/v1" \ - -A "${KEYSTONE_AUTH_PROTOCOL}://${MAGNUM_API_SERVICE_HOST}:${MAGNUM_API_SERVICE_PORT}/v1" - -exec /usr/bin/magnum-api diff --git a/docker/centos/binary/magnum/magnum-api/start.sh b/docker/centos/binary/magnum/magnum-api/start.sh new file mode 120000 index 000000000..58cc9e37c --- /dev/null +++ b/docker/centos/binary/magnum/magnum-api/start.sh @@ -0,0 +1 @@ +../../../../common/magnum/magnum-api/start.sh \ No newline at end of file diff --git a/docker/centos/binary/magnum/magnum-base/config-magnum.sh b/docker/centos/binary/magnum/magnum-base/config-magnum.sh deleted file mode 100755 index 03599d359..000000000 --- a/docker/centos/binary/magnum/magnum-base/config-magnum.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/kolla-common.sh - -check_required_vars MAGNUM_DB_PASSWORD MAGNUM_KEYSTONE_PASSWORD \ - KEYSTONE_PUBLIC_SERVICE_HOST KEYSTONE_PUBLIC_SERVICE_PORT \ - MAGNUM_KEYSTONE_USER ADMIN_TENANT_NAME \ - MAGNUM_DB_USER MAGNUM_DB_NAME KEYSTONE_AUTH_PROTOCOL \ - KEYSTONE_PUBLIC_SERVICE_PORT RABBITMQ_SERVICE_HOST \ - VERBOSE_LOGGING DEBUG_LOGGING - -fail_unless_db -dump_vars - -cat > /openrc <&2 'error: database is uninitialized and MARIADB_ROOT_PASSWORD not set' - echo >&2 ' Did you forget to add -e MARIADB_ROOT_PASSWORD=... ?' - exit 1 - fi - - mysql_install_db --user=mysql --datadir="$DATADIR" - - # These statements _must_ be on individual lines, and _must_ end with - # semicolons (no line breaks or comments are permitted). - # TODO proper SQL escaping on ALL the things D: - TEMP_FILE='/tmp/mysql-first-time.sql' - cat > "$TEMP_FILE" <<-EOSQL -DELETE FROM mysql.user ; -CREATE USER 'root'@'%' IDENTIFIED BY '${MARIADB_ROOT_PASSWORD}' ; -GRANT ALL ON *.* TO 'root'@'%' WITH GRANT OPTION ; -DROP DATABASE IF EXISTS test ; -EOSQL - - if [ "$MARIADB_DATABASE" ]; then - echo "CREATE DATABASE IF NOT EXISTS $MARIADB_DATABASE ;" >> "$TEMP_FILE" - fi - - if [ "$MARIADB_USER" -a "$MARIADB_PASSWORD" ]; then - echo "CREATE USER '$MARIADB_USER'@'%' IDENTIFIED BY '$MARIADB_PASSWORD' ;" >> "$TEMP_FILE" - - if [ "$MARIADB_DATABASE" ]; then - echo "GRANT ALL ON $MARIADB_DATABASE.* TO '$MARIADB_USER'@'%' ;" >> "$TEMP_FILE" - fi - fi - - echo 'FLUSH PRIVILEGES ;' >> "$TEMP_FILE" - - set -- "$@" --init-file="$TEMP_FILE" -fi - -chown -R mysql:mysql "$DATADIR" - -exec "$@" diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh deleted file mode 100755 index 7dda736ef..000000000 --- a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -RES=0 - -check=$(/usr/bin/neutron agent-list | awk '/ DHCP / {print $9}') -error="ERROR: Neutron DHCP Agent is not alive." - -if [[ $check != ":-)" ]]; then - echo $error >&2 - RES=1 -fi - -exit $RES diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh new file mode 120000 index 000000000..fcce4f251 --- /dev/null +++ b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh @@ -0,0 +1 @@ +../../../../../common/neutron/neutron-agents/check-scripts/check-dhcp-agent.sh \ No newline at end of file diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-l3-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-l3-agent.sh deleted file mode 100755 index d32c1e272..000000000 --- a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-l3-agent.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -RES=0 - -check=$(/usr/bin/neutron agent-list | awk '/ L3 / {print $9}') -error="ERROR: Neutron L3 Agent is not alive." - -if [[ $check != ":-)" ]]; then - echo $error >&2 - RES=1 -fi - -exit $RES diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-l3-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-l3-agent.sh new file mode 120000 index 000000000..3975d06b6 --- /dev/null +++ b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-l3-agent.sh @@ -0,0 +1 @@ +../../../../../common/neutron/neutron-agents/check-scripts/check-l3-agent.sh \ No newline at end of file diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh deleted file mode 100755 index 4485fc1ec..000000000 --- a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -RES=0 - -check=$(/usr/bin/neutron agent-list | awk '/ Linux / {print $10}') -error="ERROR: Neutron Linux Bridge agent is not alive." - -if [[ $check != ":-)" ]]; then - echo $error >&2 - RES=1 -fi - -exit $RES diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh new file mode 120000 index 000000000..8f26a18fe --- /dev/null +++ b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh @@ -0,0 +1 @@ +../../../../../common/neutron/neutron-agents/check-scripts/check-linuxbridge-agent.sh \ No newline at end of file diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-metadata-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-metadata-agent.sh deleted file mode 100755 index fd1c6812b..000000000 --- a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-metadata-agent.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -RES=0 - -check=$(/usr/bin/neutron agent-list | awk '/ Metadata / {print $9}') -error="ERROR: Neutron Metadata Agent is not alive." - -if [[ $check != ":-)" ]]; then - echo $error >&2 - RES=1 -fi - -exit $RES diff --git a/docker/centos/binary/neutron/neutron-agents/check-scripts/check-metadata-agent.sh b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-metadata-agent.sh new file mode 120000 index 000000000..aabb2a9ee --- /dev/null +++ b/docker/centos/binary/neutron/neutron-agents/check-scripts/check-metadata-agent.sh @@ -0,0 +1 @@ +../../../../../common/neutron/neutron-agents/check-scripts/check-metadata-agent.sh \ No newline at end of file diff --git a/docker/centos/binary/neutron/neutron-agents/config-scripts/config-dhcp-agent.sh b/docker/centos/binary/neutron/neutron-agents/config-scripts/config-dhcp-agent.sh deleted file mode 100755 index db71678b1..000000000 --- a/docker/centos/binary/neutron/neutron-agents/config-scripts/config-dhcp-agent.sh +++ /dev/null @@ -1,88 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/config-neutron.sh -. /opt/kolla/config-sudoers.sh - -: ${DHCP_DRIVER:=neutron.agent.linux.dhcp.Dnsmasq} -: ${USE_NAMESPACES:=true} -: ${DELETE_NAMESPACES:=true} -: ${DNSMASQ_CONFIG_FILE:=/etc/neutron/dnsmasq/dnsmasq-neutron.conf} -: ${ROOT_HELPER:=sudo neutron-rootwrap /etc/neutron/rootwrap.conf} - -mkdir -p $(dirname $DNSMASQ_CONFIG_FILE) - -check_required_vars VERBOSE_LOGGING DEBUG_LOGGING MECHANISM_DRIVERS \ - DHCP_DRIVER USE_NAMESPACES DELETE_NAMESPACES \ - NEUTRON_LOG_DIR DNSMASQ_CONFIG_FILE \ - -cfg=/etc/neutron/dhcp_agent.ini -neutron_conf=/etc/neutron/neutron.conf - -# Workaround bug in dhclient in cirros images which does not correctly -# handle setting checksums of packets when using hardware with checksum -# offloading. See: -# https://www.rdoproject.org/forum/discussion/567/packstack-allinone-grizzly-cirros-image-cannot-get-a-dhcp-address-when-a-centos-image-can/p1 - -/usr/sbin/iptables -A POSTROUTING -t mangle -p udp --dport bootpc \ - -j CHECKSUM --checksum-fill - -if [[ ${MECHANISM_DRIVERS} =~ linuxbridge ]]; then - interface_driver="neutron.agent.linux.interface.BridgeInterfaceDriver" -elif [[ ${MECHANISM_DRIVERS} == "openvswitch" ]]; then - interface_driver="neutron.agent.linux.interface.OVSInterfaceDriver" -fi - -# Logging -crudini --set $neutron_conf \ - DEFAULT \ - log_file \ - "${NEUTRON_DHCP_AGENT_LOG_FILE}" - -# Configure dhcp_agent.ini -crudini --set $cfg \ - DEFAULT \ - verbose \ - "${VERBOSE_LOGGING}" -crudini --set $cfg \ - DEFAULT \ - debug \ - "${DEBUG_LOGGING}" -crudini --set $cfg \ - DEFAULT \ - interface_driver \ - "$interface_driver" -crudini --set $cfg \ - DEFAULT \ - dhcp_driver \ - "${DHCP_DRIVER}" -crudini --set $cfg \ - DEFAULT \ - use_namespaces \ - "${USE_NAMESPACES}" -crudini --set $cfg \ - DEFAULT \ - delete_namespaces \ - "${DELETE_NAMESPACES}" -crudini --set $cfg \ - DEFAULT \ - dnsmasq_config_file \ - "${DNSMASQ_CONFIG_FILE}" -crudini --set $cfg \ - DEFAULT \ - root_helper \ - "${ROOT_HELPER}" - -cat > ${DNSMASQ_CONFIG_FILE} < /openrc < /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -else - if ! neutron ext-list > /dev/null; then - echo "ERROR: neutron ext-list failed" >&2 - RES=1 - fi -fi - -exit $RES - diff --git a/docker/centos/binary/neutron/neutron-server/check.sh b/docker/centos/binary/neutron/neutron-server/check.sh new file mode 120000 index 000000000..001936616 --- /dev/null +++ b/docker/centos/binary/neutron/neutron-server/check.sh @@ -0,0 +1 @@ +../../../../common/neutron/neutron-server/check.sh \ No newline at end of file diff --git a/docker/centos/binary/neutron/neutron-server/start.sh b/docker/centos/binary/neutron/neutron-server/start.sh deleted file mode 100755 index fb971083f..000000000 --- a/docker/centos/binary/neutron/neutron-server/start.sh +++ /dev/null @@ -1,98 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/config-neutron.sh - -: ${NEUTRON_FLAT_NETWORK_NAME:=physnet1} -: ${NEUTRON_FLAT_NETWORK_INTERFACE:=eth1} - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - KEYSTONE_AUTH_PROTOCOL NOVA_API_SERVICE_HOST \ - NOVA_KEYSTONE_USER NOVA_KEYSTONE_PASSWORD \ - NEUTRON_DB_NAME NEUTRON_DB_USER NEUTRON_DB_PASSWORD \ - NEUTRON_KEYSTONE_USER NEUTRON_KEYSTONE_PASSWORD \ - ADMIN_TENANT_NAME NEUTRON_SERVER_SERVICE_HOST \ - PUBLIC_IP NEUTRON_DB_PASSWORD -fail_unless_os_service_running keystone -fail_unless_db - -mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql < /openrc < /etc/sysconfig/network-scripts/ifcfg-$FLAT_INTERFACE < /dev/null; then - echo "ERROR: keystone token-get failed" >&2 - RES=1 -else - if ! nova list > /dev/null; then - echo "ERROR: nova list failed" >&2 - RES=1 - fi -fi - -exit $RES - diff --git a/docker/centos/binary/nova-controller/nova-api/check.sh b/docker/centos/binary/nova-controller/nova-api/check.sh new file mode 120000 index 000000000..2a047038e --- /dev/null +++ b/docker/centos/binary/nova-controller/nova-api/check.sh @@ -0,0 +1 @@ +../../../../common/nova-controller/nova-api/check.sh \ No newline at end of file diff --git a/docker/centos/binary/nova-controller/nova-api/start.sh b/docker/centos/binary/nova-controller/nova-api/start.sh deleted file mode 100755 index 7928370a4..000000000 --- a/docker/centos/binary/nova-controller/nova-api/start.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/config-nova.sh - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - NOVA_KEYSTONE_USER NOVA_KEYSTONE_PASSWORD \ - ADMIN_TENANT_NAME NOVA_API_SERVICE_HOST \ - NOVA_EC2_API_SERVICE_HOST PUBLIC_IP NOVA_DB_NAME -fail_unless_os_service_running keystone -fail_unless_db $NOVA_DB_NAME - -export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="http://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" - -cfg=/etc/nova/nova.conf - -# configure logging -crudini --set $cfg DEFAULT log_file "${NOVA_API_LOG_FILE}" - -crux user-create --update \ - -n "${NOVA_KEYSTONE_USER}" \ - -p "${NOVA_KEYSTONE_PASSWORD}" \ - -t "${ADMIN_TENANT_NAME}" \ - -r admin - -crux endpoint-create --remove-all \ - -n ec2 -t ec2 \ - -I "http://${NOVA_EC2_API_SERVICE_HOST}:8773/services/Cloud" \ - -P "http://${PUBLIC_IP}:8773/services/Cloud" \ - -A "http://${NOVA_EC2_API_SERVICE_HOST}:8773/services/Admin" - -crux endpoint-create --remove-all \ - -n nova -t compute \ - -I "http://${NOVA_API_SERVICE_HOST}:8774/v2/\$(tenant_id)s" \ - -P "http://${PUBLIC_IP}:8774/v2/\$(tenant_id)s" \ - -A "http://${NOVA_API_SERVICE_HOST}:8774/v2/\$(tenant_id)s" - -crux endpoint-create --remove-all \ - -n novav3 -t computev3 \ - -I "http://${NOVA_API_SERVICE_HOST}:8774/v3" \ - -P "http://${PUBLIC_IP}:8774/v3" \ - -A "http://${NOVA_API_SERVICE_HOST}:8774/v3" - -exec /usr/bin/nova-api --config-file /etc/nova/nova.conf diff --git a/docker/centos/binary/nova-controller/nova-api/start.sh b/docker/centos/binary/nova-controller/nova-api/start.sh new file mode 120000 index 000000000..7613d713a --- /dev/null +++ b/docker/centos/binary/nova-controller/nova-api/start.sh @@ -0,0 +1 @@ +../../../../common/nova-controller/nova-api/start.sh \ No newline at end of file diff --git a/docker/centos/binary/nova-controller/nova-conductor/start.sh b/docker/centos/binary/nova-controller/nova-conductor/start.sh deleted file mode 100755 index 575e7ff6c..000000000 --- a/docker/centos/binary/nova-controller/nova-conductor/start.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash - -set -e - -. /opt/kolla/config-nova.sh - -check_required_vars NOVA_DB_NAME NOVA_DB_USER NOVA_DB_PASSWORD -fail_unless_db - -cfg=/etc/nova/nova.conf - -# configure logging -crudini --set $cfg DEFAULT log_file "${NOVA_CONDUCTOR_LOG_FILE}" - -mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql <>}, - {default_pass, <<"@RABBITMQ_PASS@">>} - ]}, - {kernel, [ - - ]} -]. -% EOF - diff --git a/docker/centos/binary/rabbitmq/rabbitmq.config b/docker/centos/binary/rabbitmq/rabbitmq.config new file mode 120000 index 000000000..cfb088507 --- /dev/null +++ b/docker/centos/binary/rabbitmq/rabbitmq.config @@ -0,0 +1 @@ +../../../common/rabbitmq/rabbitmq.config \ No newline at end of file diff --git a/docker/centos/binary/rabbitmq/start.sh b/docker/centos/binary/rabbitmq/start.sh deleted file mode 100755 index f70c34866..000000000 --- a/docker/centos/binary/rabbitmq/start.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -set -e - -: ${RABBITMQ_USER:=guest} -: ${RABBITMQ_PASS:=guest} -: ${RABBITMQ_NODENAME:=rabbit} -: ${RABBITMQ_LOG_BASE:=/var/log/rabbitmq} - -sed -i ' - s|@RABBITMQ_USER@|'"$RABBITMQ_USER"'|g - s|@RABBITMQ_PASS@|'"$RABBITMQ_PASS"'|g -' /etc/rabbitmq/rabbitmq.config - -sed -i ' - s|@RABBITMQ_NODENAME@|'"$RABBITMQ_NODENAME"'|g - s|@RABBITMQ_LOG_BASE@|'"$RABBITMQ_LOG_BASE"'|g -' /etc/rabbitmq/rabbitmq-env.conf - -# work around: -# https://bugs.launchpad.net/ubuntu/+source/rabbitmq-server/+bug/653405 -echo "${RABBITMQ_SERVICE_HOST} `/usr/bin/hostname -s`" > /etc/hosts - -exec /usr/sbin/rabbitmq-server diff --git a/docker/centos/binary/rabbitmq/start.sh b/docker/centos/binary/rabbitmq/start.sh new file mode 120000 index 000000000..035f55e26 --- /dev/null +++ b/docker/centos/binary/rabbitmq/start.sh @@ -0,0 +1 @@ +../../../common/rabbitmq/start.sh \ No newline at end of file diff --git a/docker/centos/binary/swift/swift-account/start.sh b/docker/centos/binary/swift/swift-account/start.sh deleted file mode 100644 index bf86830f9..000000000 --- a/docker/centos/binary/swift/swift-account/start.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/bash - -: ${SWIFT_DB_USER:=swift} -: ${SWIFT_DB_NAME:=swift} -: ${KEYSTONE_AUTH_PROTOCOL:=http} -: ${SWIFT_KEYSTONE_USER:=swift} -: ${ADMIN_TENANT_NAME:=admin} - -check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ - SWIFT_ADMIN_PASSWORD -fail_unless_db -fail_unless_os_service_running keystone - -if ! [ "$SWIFT_DB_PASSWORD" ]; then - SWIFT_DB_PASSWORD=$(openssl rand -hex 15) - export SWIFT_DB_PASSWORD -fi - -sh /opt/swift/config-swift.sh account-server - -mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql < /openrc <