mirror of https://github.com/docker/docs.git
discovery integration: No need to wait anymore
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
This commit is contained in:
parent
3de0b5f567
commit
2a27adaea1
|
|
@ -8,17 +8,8 @@ CONSUL_HOST=127.0.0.1:$(( ( RANDOM % 1000 ) + 8000 ))
|
||||||
# Container name for integration test
|
# Container name for integration test
|
||||||
CONTAINER_NAME=swarm_consul
|
CONTAINER_NAME=swarm_consul
|
||||||
|
|
||||||
function check_leader() {
|
|
||||||
# Confirm Cluster leader election
|
|
||||||
docker_host logs $CONTAINER_NAME | grep "New leader elected"
|
|
||||||
# Check member state
|
|
||||||
docker_host logs $CONTAINER_NAME | grep "consul: member '$CONTAINER_NAME' joined, marking health alive"
|
|
||||||
}
|
|
||||||
|
|
||||||
function start_consul() {
|
function start_consul() {
|
||||||
docker_host run --name=$CONTAINER_NAME -h $CONTAINER_NAME -p $CONSUL_HOST:8500 -d progrium/consul -server -bootstrap-expect 1 -data-dir /test
|
docker_host run --name=$CONTAINER_NAME -h $CONTAINER_NAME -p $CONSUL_HOST:8500 -d progrium/consul -server -bootstrap-expect 1 -data-dir /test
|
||||||
# Check if consul cluster leader is elected
|
|
||||||
retry 30 1 check_leader
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function stop_consul() {
|
function stop_consul() {
|
||||||
|
|
|
||||||
|
|
@ -8,17 +8,8 @@ ETCD_HOST=127.0.0.1:$(( ( RANDOM % 1000 ) + 9000 ))
|
||||||
# Container name for integration test
|
# Container name for integration test
|
||||||
CONTAINER_NAME=swarm_etcd
|
CONTAINER_NAME=swarm_etcd
|
||||||
|
|
||||||
function check_leader() {
|
|
||||||
# Confirm Cluster leader election
|
|
||||||
docker_host logs $CONTAINER_NAME | grep "state changed from 'follower' to 'leader'"
|
|
||||||
# Check leader event
|
|
||||||
docker_host logs $CONTAINER_NAME | grep "leader changed from '' to"
|
|
||||||
}
|
|
||||||
|
|
||||||
function start_etcd() {
|
function start_etcd() {
|
||||||
docker_host run -p $ETCD_HOST:4001 --name=$CONTAINER_NAME -d coreos/etcd
|
docker_host run -p $ETCD_HOST:4001 --name=$CONTAINER_NAME -d coreos/etcd
|
||||||
# Check if etcd cluster leader is elected
|
|
||||||
retry 30 1 check_leader
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function stop_etcd() {
|
function stop_etcd() {
|
||||||
|
|
|
||||||
|
|
@ -8,20 +8,12 @@ ZK_HOST=127.0.0.1:$(( ( RANDOM % 1000 ) + 7000 ))
|
||||||
# Container name for integration test
|
# Container name for integration test
|
||||||
ZK_CONTAINER_NAME=swarm_integration_zk
|
ZK_CONTAINER_NAME=swarm_integration_zk
|
||||||
|
|
||||||
function check_zk_started() {
|
|
||||||
docker_host logs $ZK_CONTAINER_NAME | grep "binding to port 0.0.0.0/0.0.0.0:2181"
|
|
||||||
}
|
|
||||||
|
|
||||||
function start_zk() {
|
function start_zk() {
|
||||||
run docker_host run --name $ZK_CONTAINER_NAME -p $ZK_HOST:2181 -d jplock/zookeeper
|
docker_host run --name $ZK_CONTAINER_NAME -p $ZK_HOST:2181 -d jplock/zookeeper
|
||||||
[ "$status" -eq 0 ]
|
|
||||||
|
|
||||||
retry 30 1 check_zk_started
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function stop_zk() {
|
function stop_zk() {
|
||||||
run docker_host rm -f -v $ZK_CONTAINER_NAME
|
docker_host rm -f -v $ZK_CONTAINER_NAME
|
||||||
[ "$status" -eq 0 ]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function setup() {
|
function setup() {
|
||||||
|
|
|
||||||
|
|
@ -124,7 +124,7 @@ function swarm_join() {
|
||||||
for ((i=current; i < nodes; i++)); do
|
for ((i=current; i < nodes; i++)); do
|
||||||
local h="${HOSTS[$i]}"
|
local h="${HOSTS[$i]}"
|
||||||
echo "Swarm join #${i}: $h $addr"
|
echo "Swarm join #${i}: $h $addr"
|
||||||
"$SWARM_BINARY" join --addr="$h" "$addr" &
|
"$SWARM_BINARY" join --heartbeat=1 --addr="$h" "$addr" &
|
||||||
SWARM_JOIN_PID[$i]=$!
|
SWARM_JOIN_PID[$i]=$!
|
||||||
done
|
done
|
||||||
retry 10 0.5 check_discovery_nodes "$addr"
|
retry 10 0.5 check_discovery_nodes "$addr"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue