github.com/iqoqo/nomad@v0.11.3-0.20200911112621-d7021c74d101/e2e/upgrades/run_upgrade_safe.sh (about)

     1  #!/bin/sh
     2  if [ $# -lt 2 ]; then
     3      echo "usage: $0 path-nomad-v1 path-nomad-v2" 1>&2
     4      exit 1
     5  fi
     6  
     7  v1="$1"; shift
     8  v2="$1"; shift
     9  
    10  sh run_cluster.sh "$v1" &
    11  
    12  function peers () {
    13      $v1 operator raft list-peers | tail -n+2 | awk '{print $1 " " $2}'
    14  }
    15  
    16  while true; do
    17      n=`peers | grep -c '\bserver[1-3]\b'`
    18      [ "$n" = 3 ] && break
    19  done
    20  
    21  function wait_serf () {
    22      echo "wait $1 \c"; date
    23      while true; do
    24  	  peers \
    25  	      | egrep "$1.global [0-9a-f-][0-9a-f-]{35}$" \
    26  	      && break
    27  	  sleep 1
    28      done
    29      echo "done $1 \c"; date
    30  }
    31  
    32  for i in {3,2,1}; do
    33      sh kill_node.sh server$i
    34      sh run_node.sh "$v2" server$i &
    35      wait_serf server$i
    36  done