|
1 | | -#!/bin/bash -le |
| 1 | +#!/bin/sh -e |
2 | 2 |
|
3 | 3 | HOST_IP="${HOST_IP:-$(/sbin/ip route|awk '/default/ { print $3 }')}" |
4 | 4 |
|
5 | | -cat <<END>> /etc/profile.d/cluster-deployer-env.sh |
6 | | -
|
7 | | -export ETCD_HOST='${ETCD_HOST:-$HOST_IP}' |
8 | | -export ETCD_PORT='${ETCD_PORT:-4001}' |
9 | | -export ETCD_TOTEM_BASE='${ETCD_TOTEM_BASE:-/totem}' |
10 | | -export ETCD_YODA_BASE='${ETCD_YODA_BASE:-/yoda}' |
11 | | -export CELERY_GEVENT_EXECUTORS='${CELERY_GEVENT_EXECUTORS:-1}' |
12 | | -export CELERY_GEVENT_CONCURRENCY='${CELERY_GEVENT_CONCURRENCY:-50}' |
13 | | -export API_EXECUTORS='${API_EXECUTORS:-2}' |
14 | | -export GITHUB_TOKEN='${GITHUB_TOKEN}' |
15 | | -export CLUSTER_NAME='${CLUSTER_NAME:-local}' |
16 | | -export TOTEM_ENV='${TOTEM_ENV:-local}' |
17 | | -export QUAY_ORGANIZATION='${QUAY_ORGANIZATION:-totem}' |
18 | | -export QUAY_PREFIX='${QUAY_PREFIX:-totem-}' |
| 5 | +export ETCD_HOST="${ETCD_HOST:-$HOST_IP}" |
| 6 | +export ETCD_PORT="${ETCD_PORT:-4001}" |
| 7 | +export ETCD_URL="${ETCD_URL:-http://$ETCD_HOST:$ETCD_PORT}" |
| 8 | +export ETCDCTL="${ETCDCTL:-etcdctl --peers $ETCD_URL}" |
| 9 | +export ETCD_TOTEM_BASE="${ETCD_TOTEM_BASE:-/totem}" |
| 10 | +export ETCD_YODA_BASE="${ETCD_YODA_BASE:-/yoda}" |
| 11 | +export CELERY_GEVENT_EXECUTORS="${CELERY_GEVENT_EXECUTORS:-1}" |
| 12 | +export CELERY_GEVENT_CONCURRENCY="${CELERY_GEVENT_CONCURRENCY:-50}" |
| 13 | +export API_EXECUTORS="${API_EXECUTORS:-2}" |
| 14 | +export GITHUB_TOKEN="${GITHUB_TOKEN}" |
| 15 | +export CLUSTER_NAME="${CLUSTER_NAME:-local}" |
| 16 | +export TOTEM_ENV="${TOTEM_ENV:-local}" |
| 17 | +export QUAY_ORGANIZATION="${QUAY_ORGANIZATION:-totem}" |
| 18 | +export QUAY_PREFIX="${QUAY_PREFIX:-totem-}" |
19 | 19 | export C_FORCE_ROOT=true |
20 | | -export AMQP_HOST='${AMQP_HOST:-$HOST_IP}' |
21 | | -export AMQP_PORT='${AMQP_PORT:-5672}' |
22 | | -export AMQP_USERNAME='${AMQP_USERNAME:-guest}' |
23 | | -export AMQP_PASSWORD='${AMQP_PASSWORD:-guest}' |
24 | | -export MONGODB_USERNAME='${MONGODB_USERNAME:-}' |
25 | | -export MONGODB_PASSWORD='${MONGODB_PASSWORD:-}' |
26 | | -export MONGODB_HOST='${MONGODB_HOST:-$HOST_IP}' |
27 | | -export MONGODB_PORT='${MONGODB_PORT:-27017}' |
28 | | -export MONGODB_DB='${MONGODB_DB}' |
29 | | -export MONGODB_AUTH_DB='${MONGODB_AUTH_DB}' |
30 | | -export BROKER_URL='${BROKER_URL}' |
31 | | -export CLUSTER_DEPLOYER_URL='${CLUSTER_DEPLOYER_URL:-http://$HOST_IP:9000}' |
32 | | -export ENCRYPTION_PASSPHRASE='${ENCRYPTION_PASSPHRASE:-changeit}' |
33 | | -export ENCRYPTION_S3_BUCKET='${ENCRYPTION_S3_BUCKET:-not-set}' |
34 | | -export ENCRYPTION_STORE='${ENCRYPTION_PROVIDER:-s3}' |
35 | | -export HIPCHAT_ENABLED='${HIPCHAT_ENABLED:-false}' |
36 | | -export HIPCHAT_TOKEN='${HIPCHAT_TOKEN}' |
37 | | -export HIPCHAT_ROOM='${HIPCHAT_ROOM:-not-set}' |
38 | | -export GITHUB_NOTIFICATION_ENABLED='${GITHUB_NOTIFICATION_ENABLED:-false}' |
39 | | -export LOG_IDENTIFIER='${LOG_IDENTIFIER:-cluster-orchestrator}' |
40 | | -export LOG_ROOT_LEVEL='${LOG_ROOT_LEVEL}' |
41 | | -END |
42 | | -
|
43 | | -/bin/bash -le -c " envsubst < /etc/supervisor/conf.d/supervisord.conf.template > /etc/supervisor/conf.d/supervisord.conf; \ |
44 | | - /usr/local/bin/supervisord -c /etc/supervisor/supervisord.conf" |
| 20 | +export AMQP_HOST="${AMQP_HOST:-$HOST_IP}" |
| 21 | +export AMQP_PORT="${AMQP_PORT:-5672}" |
| 22 | +export AMQP_USERNAME="${AMQP_USERNAME:-guest}" |
| 23 | +export AMQP_PASSWORD="${AMQP_PASSWORD:-guest}" |
| 24 | +export MONGODB_USERNAME="${MONGODB_USERNAME:-}" |
| 25 | +export MONGODB_PASSWORD="${MONGODB_PASSWORD:-}" |
| 26 | +export MONGODB_HOST="${MONGODB_HOST:-$HOST_IP}" |
| 27 | +export MONGODB_PORT="${MONGODB_PORT:-27017}" |
| 28 | +export MONGODB_DB="${MONGODB_DB}" |
| 29 | +export MONGODB_AUTH_DB="${MONGODB_AUTH_DB}" |
| 30 | +export BROKER_URL="${BROKER_URL}" |
| 31 | +export CLUSTER_DEPLOYER_URL="${CLUSTER_DEPLOYER_URL:-http://$HOST_IP:9000}" |
| 32 | +export ENCRYPTION_PASSPHRASE="${ENCRYPTION_PASSPHRASE:-changeit}" |
| 33 | +export ENCRYPTION_S3_BUCKET="${ENCRYPTION_S3_BUCKET:-not-set}" |
| 34 | +export ENCRYPTION_STORE="${ENCRYPTION_PROVIDER:-s3}" |
| 35 | +export HIPCHAT_ENABLED="${HIPCHAT_ENABLED:-false}" |
| 36 | +export HIPCHAT_TOKEN="${HIPCHAT_TOKEN}" |
| 37 | +export HIPCHAT_ROOM="${HIPCHAT_ROOM:-not-set}" |
| 38 | +export GITHUB_NOTIFICATION_ENABLED="${GITHUB_NOTIFICATION_ENABLED:-false}" |
| 39 | +export LOG_IDENTIFIER="${LOG_IDENTIFIER:-cluster-orchestrator}" |
| 40 | +export LOG_ROOT_LEVEL="${LOG_ROOT_LEVEL}" |
| 41 | + |
| 42 | +until $ETCDCTL cluster-health; do |
| 43 | + >&2 echo "Etcdctl cluster not healthy - sleeping" |
| 44 | + sleep 10 |
| 45 | +done |
| 46 | + |
| 47 | +# Cleanup for local testing |
| 48 | +if ls celerybeat* 2>/dev/null; then |
| 49 | + rm celerybeat* |
| 50 | +fi |
| 51 | + |
| 52 | +if [ "$DISCOVER_RABBITMQ" == "true" ]; then |
| 53 | + export AMQP_HOST="$($ETCDCTL ls $ETCD_TOTEM_BASE/rabbitmq/nodes | xargs -n 1 $ETCDCTL get | xargs echo -n | tr ' ' ',')" |
| 54 | + until [ ! -z "$AMQP_HOST" ]; do |
| 55 | + >&2 echo "Rabbitmq could not be discovered - sleeping" |
| 56 | + sleep 10 |
| 57 | + export AMQP_HOST="$($ETCDCTL ls $ETCD_TOTEM_BASE/rabbitmq/nodes | xargs -n 1 $ETCDCTL get | xargs echo -n | tr ' ' ',')" |
| 58 | + done |
| 59 | +fi |
| 60 | + |
| 61 | +if [ "$DISCOVER_MONGO" == "true" ]; then |
| 62 | + export MONGODB_SERVERS="$($ETCDCTL ls $ETCD_TOTEM_BASE/mongo/nodes | xargs -n 1 $ETCDCTL get | xargs echo -n | tr ' ' ',')" |
| 63 | + until [ ! -z "$MONGODB_SERVERS" ]; do |
| 64 | + >&2 echo "Mongo servers could not be discovered - sleeping" |
| 65 | + sleep 10 |
| 66 | + export MONGODB_SERVERS="$($ETCDCTL ls $ETCD_TOTEM_BASE/mongo/nodes | xargs -n 1 $ETCDCTL get | xargs echo -n | tr ' ' ',')" |
| 67 | + done |
| 68 | +fi |
| 69 | + |
| 70 | +envsubst < /etc/supervisor/conf.d/supervisord.conf.template > /etc/supervisor/conf.d/supervisord.conf |
| 71 | + |
| 72 | +/usr/local/bin/supervisord -c /etc/supervisor/supervisord.conf |
45 | 73 |
|
0 commit comments