aboutsummaryrefslogtreecommitdiff
path: root/docker/common
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-07-09 22:45:12 +0000
committerGerrit Code Review <review@openstack.org>2015-07-09 22:45:12 +0000
commit667aed114f05d77af515760ff2c8d2db572d7a16 (patch)
tree0a229f62cddde6bce5d5afd5feb62fea241e8a7a /docker/common
parentea5dc525f5c28b734e1e96593654d0cea6ed04a1 (diff)
parente34b3b68fdd22a26f6e55178f19f0e35364ddc33 (diff)
downloadkolla-667aed114f05d77af515760ff2c8d2db572d7a16.tar.gz
kolla-667aed114f05d77af515760ff2c8d2db572d7a16.zip
Merge "Add config-internal/config-external to Magnum containers"
Diffstat (limited to 'docker/common')
-rw-r--r--docker/common/magnum/magnum-api/config-external.sh10
-rw-r--r--docker/common/magnum/magnum-api/config-internal.sh27
-rwxr-xr-xdocker/common/magnum/magnum-api/start.sh35
-rw-r--r--docker/common/magnum/magnum-conductor/config-external.sh10
-rw-r--r--docker/common/magnum/magnum-conductor/config-internal.sh17
-rwxr-xr-xdocker/common/magnum/magnum-conductor/start.sh19
6 files changed, 86 insertions, 32 deletions
diff --git a/docker/common/magnum/magnum-api/config-external.sh b/docker/common/magnum/magnum-api/config-external.sh
new file mode 100644
index 000000000..573043f7d
--- /dev/null
+++ b/docker/common/magnum/magnum-api/config-external.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+SOURCE="/opt/kolla/magnum/magnum-api/magnum.conf"
+TARGET="/etc/magnum/magnum.conf"
+OWNER="magnum"
+
+if [[ -f "$SOURCE" ]]; then
+ cp $SOURCE $TARGET
+ chown ${OWNER}: $TARGET
+ chmod 0644 $TARGET
+fi
diff --git a/docker/common/magnum/magnum-api/config-internal.sh b/docker/common/magnum/magnum-api/config-internal.sh
new file mode 100644
index 000000000..00a51b3cd
--- /dev/null
+++ b/docker/common/magnum/magnum-api/config-internal.sh
@@ -0,0 +1,27 @@
+#!/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/common/magnum/magnum-api/start.sh b/docker/common/magnum/magnum-api/start.sh
index 00a51b3cd..5a47fdf89 100755
--- a/docker/common/magnum/magnum-api/start.sh
+++ b/docker/common/magnum/magnum-api/start.sh
@@ -1,27 +1,20 @@
#!/bin/bash
-set -e
-. /opt/kolla/kolla-common.sh
-. /opt/kolla/config-magnum.sh
+set -o errexit
+CMD="/usr/bin/magnum-api"
+ARGS=""
-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
+# Loading common functions.
+source /opt/kolla/kolla-common.sh
-fail_unless_os_service_running keystone
+# Config-internal script exec out of this function, it does not return here.
+set_configs
-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
+# 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 "magnum-manage db_sync" magnum
+ exit 0
+fi
-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
+exec $CMD $ARGS
diff --git a/docker/common/magnum/magnum-conductor/config-external.sh b/docker/common/magnum/magnum-conductor/config-external.sh
new file mode 100644
index 000000000..b96e3179e
--- /dev/null
+++ b/docker/common/magnum/magnum-conductor/config-external.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+SOURCE="/opt/kolla/magnum/magnum-conductor/magnum.conf"
+TARGET="/etc/magnum/magnum.conf"
+OWNER="magnum"
+
+if [[ -f "$SOURCE" ]]; then
+ cp $SOURCE $TARGET
+ chown ${OWNER}: $TARGET
+ chmod 0644 $TARGET
+fi
diff --git a/docker/common/magnum/magnum-conductor/config-internal.sh b/docker/common/magnum/magnum-conductor/config-internal.sh
new file mode 100644
index 000000000..4cf1291a3
--- /dev/null
+++ b/docker/common/magnum/magnum-conductor/config-internal.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+. /opt/kolla/kolla-common.sh
+. /opt/kolla/config-magnum.sh
+
+check_required_vars MAGNUM_DB_NAME MAGNUM_DB_USER MAGNUM_DB_PASSWORD
+fail_unless_db
+
+mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql <<EOF
+CREATE DATABASE IF NOT EXISTS ${MAGNUM_DB_NAME} DEFAULT CHARACTER SET utf8;
+GRANT ALL PRIVILEGES ON ${MAGNUM_DB_NAME}.* TO
+ '${MAGNUM_DB_USER}'@'%' IDENTIFIED BY '${MAGNUM_DB_PASSWORD}'
+EOF
+
+/usr/bin/magnum-db-manage upgrade
+
+exec /usr/bin/magnum-conductor
diff --git a/docker/common/magnum/magnum-conductor/start.sh b/docker/common/magnum/magnum-conductor/start.sh
index 4cf1291a3..07f3b1ac4 100755
--- a/docker/common/magnum/magnum-conductor/start.sh
+++ b/docker/common/magnum/magnum-conductor/start.sh
@@ -1,17 +1,14 @@
#!/bin/bash
-. /opt/kolla/kolla-common.sh
-. /opt/kolla/config-magnum.sh
+set -o errexit
-check_required_vars MAGNUM_DB_NAME MAGNUM_DB_USER MAGNUM_DB_PASSWORD
-fail_unless_db
+CMD="/usr/bin/magnum-conductor"
+ARGS=""
-mysql -h ${MARIADB_SERVICE_HOST} -u root -p${DB_ROOT_PASSWORD} mysql <<EOF
-CREATE DATABASE IF NOT EXISTS ${MAGNUM_DB_NAME} DEFAULT CHARACTER SET utf8;
-GRANT ALL PRIVILEGES ON ${MAGNUM_DB_NAME}.* TO
- '${MAGNUM_DB_USER}'@'%' IDENTIFIED BY '${MAGNUM_DB_PASSWORD}'
-EOF
+# Loading common functions.
+source /opt/kolla/kolla-common.sh
-/usr/bin/magnum-db-manage upgrade
+# Config-internal script exec out of this function, it does not return here.
+set_configs
-exec /usr/bin/magnum-conductor
+exec $CMD $ARGS