Home | History | Annotate | Download | only in contrib
      1 #!/bin/bash
      2 FROM_HOST=cautotest
      3 TO_HOST=cautotest-cq
      4 POOL=pool:cq
      5 
      6 function quiet() {
      7   $@ > /dev/null
      8 }
      9 
     10 function silent() {
     11   $@ > /dev/null 2>&1
     12 }
     13 
     14 function host_labels() {
     15   ./cli/atest host list --web=$FROM_HOST --parse $1 | awk -F '|' '{ print $5 }' | sed 's/Labels=//' | sed 's/, /,/g'
     16 }
     17 
     18 function host_platform() {
     19   ./cli/atest host list --web=$FROM_HOST $1 | sed 1d | awk '{ print $4; }'
     20 }
     21 
     22 function lock_host() {
     23   ./cli/atest host mod --web=$FROM_HOST -l $1
     24 }
     25 
     26 function create_labels() {
     27   ./cli/atest label create --web=$TO_HOST $1
     28 }
     29 
     30 function create_platform() {
     31   ./cli/atest label create -t --web=$TO_HOST $1
     32 }
     33 
     34 function create_host() {
     35   ./cli/atest host create --web=$TO_HOST -b $2 $1
     36 }
     37 
     38 function remove_host() {
     39   ./cli/atest host delete --web=$FROM_HOST $1
     40 }
     41 
     42 HOSTS_TO_MOVE=$(./cli/atest host list --web=$FROM_HOST -b $POOL | sed 1d | awk '{ print $1 }')
     43 
     44 for host in $HOSTS_TO_MOVE
     45 do
     46   # if ! silent lock_host $host; then echo $host already handled; continue; fi
     47   LABELS=$(host_labels $host)
     48   PLATFORM=$(host_platform $host)
     49   silent create_labels $LABELS
     50   silent create_platform $PLATFORM
     51   if create_host $host $LABELS
     52   then
     53     silent remove_host $host
     54     echo $host migrated
     55   else
     56     echo $host failed
     57   fi
     58 done
     59