From 91ca8d4b00c632bcf7a2a9903aa4cf584fee27e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Andr=C3=A9?= <martin.andre@kvhasia.com> Date: Mon, 1 Dec 2014 14:50:58 +0900 Subject: [PATCH] Cleanup required variables checks for all containers This allows Kubernetes to reschedule containers in case a required variable is missing, for example when the Kubernetes pod is started before the service. The checks were cleaned using the following method: * remove duplicates * remove check for variables that get a default value in the same file * check for all variables used in the file * check for required services when it is obvious. Change-Id: Ib7e0530c410c61f828d36efe8925a20dc9781eab --- docker/barbican/start.sh | 15 +++++-------- docker/ceilometer/ceilometer-api/start.sh | 7 +++++- .../ceilometer-base/config-ceilometer.sh | 6 +++-- docker/ceilometer/ceilometer-central/start.sh | 4 ++-- docker/ceilometer/ceilometer-compute/start.sh | 4 ++-- docker/cinder/start.sh | 22 ++++++------------- docker/glance/glance-base/config-glance.sh | 4 +++- docker/heat/heat-base/config-heat.sh | 5 ++++- docker/heat/heat-engine/start.sh | 3 +-- docker/horizon/start.sh | 2 -- docker/keystone/start.sh | 3 ++- docker/neutron/agents/dhcp/start.sh | 2 ++ docker/neutron/agents/l3/start.sh | 2 ++ docker/neutron/agents/linux-bridge/start.sh | 2 ++ docker/neutron/agents/metadata/start.sh | 5 +++++ docker/neutron/neutron-base/config-neutron.sh | 4 +++- docker/neutron/neutron-server/start.sh | 4 +++- docker/nova-base/config-nova.sh | 7 ++++-- docker/nova-controller/nova-api/start.sh | 4 ++++ .../nova-controller/nova-conductor/start.sh | 1 + docker/swift/swift-account/start.sh | 17 +++++--------- docker/swift/swift-container/start.sh | 17 +++++--------- docker/swift/swift-object/start.sh | 17 +++++--------- docker/zaqar/start.sh | 10 +++------ 24 files changed, 84 insertions(+), 83 deletions(-) diff --git a/docker/barbican/start.sh b/docker/barbican/start.sh index 676374faa0..c90f66c470 100755 --- a/docker/barbican/start.sh +++ b/docker/barbican/start.sh @@ -8,21 +8,16 @@ set -e : ${BARBICAN_KEYSTONE_USER:=barbican} : ${ADMIN_TENANT_NAME:=admin} -if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then - echo "*** Missing KEYSTONE_ADMIN_TOKEN" >&2 - exit 1 -fi - -if ! [ "$DB_ROOT_PASSWORD" ]; then - echo "*** Missing DB_ROOT_PASSWORD" >&2 - exit 1 -fi - 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 +check_for_db +check_for_keystone + mysql -h ${MARIADB_SERVICE_HOST} -u root -p"${DB_ROOT_PASSWORD}" mysql <<EOF CREATE DATABASE IF NOT EXISTS ${BARBICAN_DB_NAME}; GRANT ALL PRIVILEGES ON barbican.* TO diff --git a/docker/ceilometer/ceilometer-api/start.sh b/docker/ceilometer/ceilometer-api/start.sh index 8c9acef5fe..1cd6d4c185 100644 --- a/docker/ceilometer/ceilometer-api/start.sh +++ b/docker/ceilometer/ceilometer-api/start.sh @@ -5,7 +5,12 @@ set -e . /opt/kolla/kolla-common.sh . /opt/kolla/config-ceilometer.sh -check_required_vars CEILOMETER_DB_USER CEILOMETER_DB_NAME KEYSTONE_AUTH_PROTOCOL CEILOMETER_KEYSTONE_USER CEILOMETER_ADMIN_PASSWORD ADMIN_TENANT_NAME METERING_SECRET CEILOMETER_API_SERVICE_HOST PUBLIC_IP +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 check_for_keystone check_for_db diff --git a/docker/ceilometer/ceilometer-base/config-ceilometer.sh b/docker/ceilometer/ceilometer-base/config-ceilometer.sh index 87dcac6538..9df45994ab 100644 --- a/docker/ceilometer/ceilometer-base/config-ceilometer.sh +++ b/docker/ceilometer/ceilometer-base/config-ceilometer.sh @@ -10,8 +10,10 @@ set -e : ${CEILOMETER_ADMIN_PASSWORD:=kolla} : ${ADMIN_TENANT_NAME:=admin} : ${METERING_SECRET:=ceilometer} +: ${RABBIT_PASSWORD:=guest} -check_required_vars CEILOMETER_DB_PASSWORD KEYSTONE_ADMIN_TOKEN DB_ROOT_PASSWORD +check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ + KEYSTONE_ADMIN_SERVICE_PORT KEYSTONE_PUBLIC_SERVICE_HOST \ dump_vars cat > /openrc <<EOF @@ -27,7 +29,7 @@ crudini --set $cfg \ crudini --set $cfg \ DEFAULT rabbit_host ${RABBITMQ_SERVICE_HOST} crudini --set $cfg \ - DEFAULT rabbit_password ${RABBITMQ_PASS} + DEFAULT rabbit_password ${RABBIT_PASSWORD} crudini --set $cfg \ keystone_authtoken \ diff --git a/docker/ceilometer/ceilometer-central/start.sh b/docker/ceilometer/ceilometer-central/start.sh index a40a3dde07..ec9951c908 100644 --- a/docker/ceilometer/ceilometer-central/start.sh +++ b/docker/ceilometer/ceilometer-central/start.sh @@ -3,10 +3,10 @@ . /opt/kolla/kolla-common.sh . /opt/kolla/config-ceilometer.sh -check_required_vars KEYSTONE_AUTH_PROTOCOL CEILOMETER_KEYSTONE_USER CEILOMETER_ADMIN_PASSWORD ADMIN_TENANT_NAME +check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_AUTH_PROTOCOL \ + KEYSTONE_ADMIN_SERVICE_HOST KEYSTONE_ADMIN_SERVICE_PORT check_for_keystone -check_for_db export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:${KEYSTONE_ADMIN_SERVICE_PORT}/v2.0" diff --git a/docker/ceilometer/ceilometer-compute/start.sh b/docker/ceilometer/ceilometer-compute/start.sh index d9b62be823..5b610b28af 100644 --- a/docker/ceilometer/ceilometer-compute/start.sh +++ b/docker/ceilometer/ceilometer-compute/start.sh @@ -4,7 +4,7 @@ . /opt/kolla/config-ceilometer.sh -check_required_vars KEYSTONE_ADMIN_TOKEN RABBITMQ_SERVICE_HOST KEYSTONE_AUTH_PROTOCOL CEILOMETER_KEYSTONE_USER ADMIN_TENANT_NAME +check_required_vars KEYSTONE_ADMIN_TOKEN RABBITMQ_SERVICE_HOST RABBIT_PASSWORD check_for_keystone @@ -19,7 +19,7 @@ crudini --set /etc/nova/nova.conf DEFAULT notification_driver ceilometer.compute cfg=/etc/ceilometer/ceilometer.conf crudini --set $cfg publisher_rpc metering_secret ${KEYSTONE_ADMIN_TOKEN} crudini --set $cfg rabbit_host ${RABBITMQ_SERVICE_HOST} -crudini --set $cfg rabbit_password ${RABBITMQ_PASS} +crudini --set $cfg rabbit_password ${RABBIT_PASSWORD} exec /usr/bin/ceilometer-agent-compute diff --git a/docker/cinder/start.sh b/docker/cinder/start.sh index 12dcf3dc17..4508d96f46 100755 --- a/docker/cinder/start.sh +++ b/docker/cinder/start.sh @@ -1,29 +1,21 @@ #!/bin/bash -e -: ${CINDER_DB_USER%:=cinder} +: ${CINDER_DB_USER:=cinder} : ${CINDER_DB_NAME:=cinder} : ${KEYSTONE_AUTH_PROTOCOL:=http} : ${CINDER_KEYSTONE_USER:=cinder} : ${ADMIN_TENANT_NAME:=admin} -if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then - echo "*** Missing KEYSTONE_ADMIN_TOKEN" >&2 - exit 1 -fi - -if ! [ "$DB_ROOT_PASSWORD" ]; then - echo "*** Missing DB_ROOT_PASSWORD" >&2 - exit 1 -fi - if ! [ "$CINDER_DB_PASSWORD" ]; then CINDER_DB_PASSWORD=$(openssl rand -hex 15) export CINDER_DB_PASSWORD fi -mysql -h ${MARIADB_PORT_3306_TCP_ADDR} -u root \ - -p${DB_ROOT_PASSWORD} mysql <<EOF -EOF +check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ + CINDER_ADMIN_PASSWORD +check_for_db + +mysql -h ${MARIADB_SERVICE_HOST} -u root -p"${DB_ROOT_PASSWORD}" mysql <<EOF CREATE DATABASE IF NOT EXISTS ${CINDER_DB_NAME}; GRANT ALL PRIVILEGES ON glance* TO '${CINDER_DB_USER}'@'%' IDENTIFIED BY '${CINDER_DB_PASSWORD}' @@ -143,7 +135,7 @@ crudini --set /etc/cinder/cinder.conf \ export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_PORT_35357_TCP_ADDR}:35357/v2.0" +export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" /bin/keystone user-create --name ${CINDER_KEYSTONE_USER} --pass ${CINDER_ADMIN_PASSWORD} /bin/keystone role-create --name ${CINDER_KEYSTONE_USER} diff --git a/docker/glance/glance-base/config-glance.sh b/docker/glance/glance-base/config-glance.sh index a6380e5c8d..2a6e54caa1 100644 --- a/docker/glance/glance-base/config-glance.sh +++ b/docker/glance/glance-base/config-glance.sh @@ -11,7 +11,9 @@ set -e : ${KEYSTONE_AUTH_PROTOCOL:=http} : ${PUBLIC_IP:=$GLANCE_API_PORT_9292_TCP_ADDR} -check_required_vars GLANCE_DB_PASSWORD GLANCE_KEYSTONE_PASSWORD +check_for_db +check_required_vars GLANCE_DB_PASSWORD GLANCE_KEYSTONE_PASSWORD \ + KEYSTONE_PUBLIC_SERVICE_HOST dump_vars cat > /openrc <<EOF diff --git a/docker/heat/heat-base/config-heat.sh b/docker/heat/heat-base/config-heat.sh index c2837325c2..3dcb1435aa 100755 --- a/docker/heat/heat-base/config-heat.sh +++ b/docker/heat/heat-base/config-heat.sh @@ -13,7 +13,10 @@ set -e : ${RABBIT_USER:=guest} : ${RABBIT_PASSWORD:=guest} -check_required_vars HEAT_DB_PASSWORD HEAT_KEYSTONE_PASSWORD +check_required_vars HEAT_DB_PASSWORD HEAT_KEYSTONE_PASSWORD \ + KEYSTONE_PUBLIC_SERVICE_HOST RABBITMQ_SERVICE_HOST + +check_for_db dump_vars cat > /openrc <<EOF diff --git a/docker/heat/heat-engine/start.sh b/docker/heat/heat-engine/start.sh index 0ab9e48005..e9d3f9e413 100755 --- a/docker/heat/heat-engine/start.sh +++ b/docker/heat/heat-engine/start.sh @@ -3,8 +3,7 @@ . /opt/kolla/kolla-common.sh . /opt/kolla/config-heat.sh -check_required_vars MARIADB_SERVICE_HOST DB_ROOT_PASSWORD \ - HEAT_DB_NAME HEAT_DB_USER HEAT_DB_PASSWORD +check_required_vars HEAT_DB_NAME HEAT_DB_USER HEAT_DB_PASSWORD check_for_db mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql <<EOF diff --git a/docker/horizon/start.sh b/docker/horizon/start.sh index d51cac6551..01b1405e79 100755 --- a/docker/horizon/start.sh +++ b/docker/horizon/start.sh @@ -5,8 +5,6 @@ set -e . /opt/kolla/kolla-common.sh -check_required_vars HORIZON_KEYSTONE_USER - check_for_keystone check_for_glance check_for_nova diff --git a/docker/keystone/start.sh b/docker/keystone/start.sh index afa04ed66c..087cecc36b 100755 --- a/docker/keystone/start.sh +++ b/docker/keystone/start.sh @@ -9,7 +9,8 @@ set -e check_for_db check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_DB_PASSWORD \ KEYSTONE_ADMIN_PASSWORD ADMIN_TENANT_NAME \ - KEYSTONE_PUBLIC_SERVICE_HOST KEYSTONE_ADMIN_SERVICE_HOST + KEYSTONE_PUBLIC_SERVICE_HOST KEYSTONE_ADMIN_SERVICE_HOST \ + PUBLIC_IP dump_vars mysql -h ${MARIADB_SERVICE_HOST} -u root -p"${DB_ROOT_PASSWORD}" mysql <<EOF diff --git a/docker/neutron/agents/dhcp/start.sh b/docker/neutron/agents/dhcp/start.sh index 81f35dd877..7754532a62 100755 --- a/docker/neutron/agents/dhcp/start.sh +++ b/docker/neutron/agents/dhcp/start.sh @@ -9,6 +9,8 @@ set -e : ${DHCP_DRIVER:=neutron.agent.linux.dhcp.Dnsmasq} : ${USE_NAMESPACES:=false} +check_required_vars VERBOSE_LOGGING DEBUG_LOGGING + cfg=/etc/neutron/dhcp_agent.ini # Configure dhcp_agent.ini diff --git a/docker/neutron/agents/l3/start.sh b/docker/neutron/agents/l3/start.sh index 602bf31935..17a09ad653 100755 --- a/docker/neutron/agents/l3/start.sh +++ b/docker/neutron/agents/l3/start.sh @@ -8,6 +8,8 @@ set -e : ${INTERFACE_DRIVER:=neutron.agent.linux.interface.BridgeInterfaceDriver} : ${USE_NAMESPACES:=false} +check_required_vars VERBOSE_LOGGING DEBUG_LOGGING + cfg=/etc/neutron/l3_agent.ini # Configure l3_agent.ini diff --git a/docker/neutron/agents/linux-bridge/start.sh b/docker/neutron/agents/linux-bridge/start.sh index e5982fe669..727db24b5f 100755 --- a/docker/neutron/agents/linux-bridge/start.sh +++ b/docker/neutron/agents/linux-bridge/start.sh @@ -8,6 +8,8 @@ set -e : ${BRIDGE_PHYSICAL_INTERFACE:=eth1} : ${ML2_FLAT_NETWORK:=physnet1} +check_required_vars PUBLIC_IP + cfg=/etc/neutron/plugins/ml2/ml2_conf.ini # Configure ml2_conf.ini diff --git a/docker/neutron/agents/metadata/start.sh b/docker/neutron/agents/metadata/start.sh index fbe72e18fa..9eef79a313 100755 --- a/docker/neutron/agents/metadata/start.sh +++ b/docker/neutron/agents/metadata/start.sh @@ -7,6 +7,11 @@ set -e : ${KEYSTONE_REGION:=RegionOne} +check_required_vars VERBOSE_LOGGING DEBUG_LOGGING KEYSTONE_AUTH_PROTOCOL \ + KEYSTONE_PUBLIC_SERVICE_HOST ADMIN_TENANT_NAME \ + NEUTRON_KEYSTONE_USER NEUTRON_KEYSTONE_PASSWORD \ + NEUTRON_SHARED_SECRET NOVA_API_SERVICE_HOST + cfg=/etc/neutron/metadata_agent.ini # Configure metadata_agent.ini diff --git a/docker/neutron/neutron-base/config-neutron.sh b/docker/neutron/neutron-base/config-neutron.sh index 7a68b19f2b..35a1375fff 100644 --- a/docker/neutron/neutron-base/config-neutron.sh +++ b/docker/neutron/neutron-base/config-neutron.sh @@ -15,7 +15,9 @@ set -e : ${VERBOSE_LOGGING:=true} : ${DEBUG_LOGGING:=false} -check_required_vars NEUTRON_KEYSTONE_PASSWORD +check_required_vars NEUTRON_KEYSTONE_PASSWORD \ + KEYSTONE_PUBLIC_SERVICE_HOST RABBITMQ_SERVICE_HOST + dump_vars cat > /openrc <<EOF diff --git a/docker/neutron/neutron-server/start.sh b/docker/neutron/neutron-server/start.sh index ffa90a2181..91af87bb32 100755 --- a/docker/neutron/neutron-server/start.sh +++ b/docker/neutron/neutron-server/start.sh @@ -6,9 +6,11 @@ set -e . /opt/kolla/config-neutron.sh check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ + KEYSTONE_AUTH_PROTOCOL NOVA_API_SERVICE_HOST \ + NOVA_ADMIN_PASSWORD NEUTRON_DB_NAME NEUTRON_DB_USER \ NEUTRON_KEYSTONE_USER NEUTRON_KEYSTONE_PASSWORD \ ADMIN_TENANT_NAME NEUTRON_SERVER_SERVICE_HOST \ - PUBLIC_IP + PUBLIC_IP NEUTRON_DB_PASSWORD check_for_keystone check_for_db diff --git a/docker/nova-base/config-nova.sh b/docker/nova-base/config-nova.sh index 15ab7870cf..10aa646fab 100755 --- a/docker/nova-base/config-nova.sh +++ b/docker/nova-base/config-nova.sh @@ -11,8 +11,10 @@ : ${RABBIT_PASSWORD:=guest} : ${NETWORK_MANAGER:=nova} -check_required_vars KEYSTONE_ADMIN_TOKEN \ - NOVA_DB_PASSWORD +check_for_db +check_required_vars KEYSTONE_ADMIN_TOKEN NOVA_DB_PASSWORD \ + RABBITMQ_SERVICE_HOST GLANCE_API_SERVICE_HOST \ + KEYSTONE_PUBLIC_SERVICE_HOST PUBLIC_IP cfg=/etc/nova/nova.conf @@ -75,6 +77,7 @@ if [ "${NETWORK_MANAGER}" == "nova" ] ; then crudini --set $cfg DEFAULT flat_network_bridge br100 crudini --set $cfg DEFAULT public_interface eth1 elif [ "${NETWORK_MANAGER}" == "neutron" ] ; then + check_required_vars NEUTRON_SHARED_SECRET crudini --set $cfg DEFAULT service_neutron_metadata_proxy True crudini --set $cfg DEFAULT neutron_metadata_proxy_shared_secret ${NEUTRON_SHARED_SECRET} crudini --set $cfg DEFAULT neutron_default_tenant_id default diff --git a/docker/nova-controller/nova-api/start.sh b/docker/nova-controller/nova-api/start.sh index 2feeeea05f..49329f21c6 100755 --- a/docker/nova-controller/nova-api/start.sh +++ b/docker/nova-controller/nova-api/start.sh @@ -4,6 +4,10 @@ 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 check_for_keystone export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" diff --git a/docker/nova-controller/nova-conductor/start.sh b/docker/nova-controller/nova-conductor/start.sh index 4053a27ff9..831c80e807 100755 --- a/docker/nova-controller/nova-conductor/start.sh +++ b/docker/nova-controller/nova-conductor/start.sh @@ -4,6 +4,7 @@ set -e . /opt/kolla/config-nova.sh +check_required_vars NOVA_DB_NAME NOVA_DB_USER NOVA_DB_PASSWORD check_for_db mysql -h ${MARIADB_SERVICE_HOST} -u root \ diff --git a/docker/swift/swift-account/start.sh b/docker/swift/swift-account/start.sh index 562fd4ca42..2fe6f24696 100644 --- a/docker/swift/swift-account/start.sh +++ b/docker/swift/swift-account/start.sh @@ -6,15 +6,10 @@ : ${SWIFT_KEYSTONE_USER:=swift} : ${ADMIN_TENANT_NAME:=admin} -if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then - echo "*** Missing KEYSTONE_ADMIN_TOKEN" >&2 - exit 1 -fi - -if ! [ "$DB_ROOT_PASSWORD" ]; then - echo "*** Missing DB_ROOT_PASSWORD" >&2 - exit 1 -fi +check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ + SWIFT_ADMIN_PASSWORD +check_for_db +check_for_keystone if ! [ "$SWIFT_DB_PASSWORD" ]; then SWIFT_DB_PASSWORD=$(openssl rand -hex 15) @@ -23,7 +18,7 @@ fi sh /opt/swift/config-swift.sh account-server -mysql -h ${MARIADB_PORT_3306_TCP_ADDR} -u root \ +mysql -h ${MARIADB_SERVICE_HOST} -u root \ -p${DB_ROOT_PASSWORD} mysql <<EOF CREATE DATABASE IF NOT EXISTS ${SWIFT_DB_NAME}; GRANT ALL PRIVILEGES ON swift* TO @@ -31,7 +26,7 @@ GRANT ALL PRIVILEGES ON swift* TO EOF export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_PORT_35357_TCP_ADDR}:35357/v2.0" +export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" /bin/keystone user-create --name ${SWIFT_KEYSTONE_USER} --pass ${SWIFT_ADMIN_PASSWORD} /bin/keystone role-create --name ${SWIFT_KEYSTONE_USER} diff --git a/docker/swift/swift-container/start.sh b/docker/swift/swift-container/start.sh index e96471fb73..2a191e1d2f 100644 --- a/docker/swift/swift-container/start.sh +++ b/docker/swift/swift-container/start.sh @@ -6,15 +6,10 @@ : ${SWIFT_KEYSTONE_USER:=swift} : ${ADMIN_TENANT_NAME:=admin} -if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then - echo "*** Missing KEYSTONE_ADMIN_TOKEN" >&2 - exit 1 -fi - -if ! [ "$DB_ROOT_PASSWORD" ]; then - echo "*** Missing DB_ROOT_PASSWORD" >&2 - exit 1 -fi +check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ + SWIFT_ADMIN_PASSWORD +check_for_db +check_for_keystone if ! [ "$SWIFT_DB_PASSWORD" ]; then SWIFT_DB_PASSWORD=$(openssl rand -hex 15) @@ -23,7 +18,7 @@ fi sh /opt/swift/config-swift.sh container -mysql -h ${MARIADB_PORT_3306_TCP_ADDR} -u root \ +mysql -h ${MARIADB_SERVICE_HOST} -u root \ -p${DB_ROOT_PASSWORD} mysql <<EOF CREATE DATABASE IF NOT EXISTS ${SWIFT_DB_NAME}; GRANT ALL PRIVILEGES ON swift* TO @@ -31,7 +26,7 @@ GRANT ALL PRIVILEGES ON swift* TO EOF export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_PORT_35357_TCP_ADDR}:35357/v2.0" +export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" /bin/keystone user-create --name ${SWIFT_KEYSTONE_USER} --pass ${SWIFT_ADMIN_PASSWORD} /bin/keystone role-create --name ${SWIFT_KEYSTONE_USER} diff --git a/docker/swift/swift-object/start.sh b/docker/swift/swift-object/start.sh index 1546d8271a..c43efc5fb5 100644 --- a/docker/swift/swift-object/start.sh +++ b/docker/swift/swift-object/start.sh @@ -6,15 +6,10 @@ : ${SWIFT_KEYSTONE_USER:=swift} : ${ADMIN_TENANT_NAME:=admin} -if ! [ "$KEYSTONE_ADMIN_TOKEN" ]; then - echo "*** Missing KEYSTONE_ADMIN_TOKEN" >&2 - exit 1 -fi - -if ! [ "$DB_ROOT_PASSWORD" ]; then - echo "*** Missing DB_ROOT_PASSWORD" >&2 - exit 1 -fi +check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_ADMIN_SERVICE_HOST \ + SWIFT_ADMIN_PASSWORD +check_for_db +check_for_keystone if ! [ "$SWIFT_DB_PASSWORD" ]; then SWIFT_DB_PASSWORD=$(openssl rand -hex 15) @@ -23,7 +18,7 @@ fi sh /opt/swift/config-swift.sh engine -mysql -h ${MARIADB_PORT_3306_TCP_ADDR} -u root \ +mysql -h ${MARIADB_SERVICE_HOST} -u root \ -p${DB_ROOT_PASSWORD} mysql <<EOF CREATE DATABASE IF NOT EXISTS ${SWIFT_DB_NAME}; GRANT ALL PRIVILEGES ON swift* TO @@ -31,7 +26,7 @@ GRANT ALL PRIVILEGES ON swift* TO EOF export SERVICE_TOKEN="${KEYSTONE_ADMIN_TOKEN}" -export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_PORT_35357_TCP_ADDR}:35357/v2.0" +export SERVICE_ENDPOINT="${KEYSTONE_AUTH_PROTOCOL}://${KEYSTONE_ADMIN_SERVICE_HOST}:35357/v2.0" /bin/keystone user-create --name ${SWIFT_KEYSTONE_USER} --pass ${SWIFT_ADMIN_PASSWORD} /bin/keystone role-create --name ${SWIFT_KEYSTONE_USER} diff --git a/docker/zaqar/start.sh b/docker/zaqar/start.sh index 7ed89a40ad..6c68fccf22 100755 --- a/docker/zaqar/start.sh +++ b/docker/zaqar/start.sh @@ -5,16 +5,12 @@ set -e . /opt/kolla/kolla-common.sh : ${ADMIN_TENANT_NAME:=admin} - -: ${ZAQAR_DB_NAME:=zaqar} -: ${ZAQAR_DB_USER:=zaqar} - : ${ZAQAR_KEYSTONE_USER:=zaqar} - : ${KEYSTONE_AUTH_PROTOCOL:=http} -check_required_vars ZAQAR_DB_PASSWORD ZAQAR_KEYSTONE_PASSWORD \ - KEYSTONE_ADMIN_TOKEN +check_required_vars ZAQAR_KEYSTONE_PASSWORD ZAQAR_SERVER_SERVICE_HOST \ + KEYSTONE_ADMIN_SERVICE_HOST KEYSTONE_ADMIN_TOKEN \ + PUBLIC_IP dump_vars #check_for_mongodb -- GitLab