#!/bin/bash FROM_HOST=cautotest TO_HOST=cautotest-cq POOL=pool:cq function quiet() { $@ > /dev/null } function silent() { $@ > /dev/null 2>&1 } function host_labels() { ./cli/atest host list --web=$FROM_HOST --parse $1 | awk -F '|' '{ print $5 }' | sed 's/Labels=//' | sed 's/, /,/g' } function host_platform() { ./cli/atest host list --web=$FROM_HOST $1 | sed 1d | awk '{ print $4; }' } function lock_host() { ./cli/atest host mod --web=$FROM_HOST -l $1 } function create_labels() { ./cli/atest label create --web=$TO_HOST $1 } function create_platform() { ./cli/atest label create -t --web=$TO_HOST $1 } function create_host() { ./cli/atest host create --web=$TO_HOST -b $2 $1 } function remove_host() { ./cli/atest host delete --web=$FROM_HOST $1 } HOSTS_TO_MOVE=$(./cli/atest host list --web=$FROM_HOST -b $POOL | sed 1d | awk '{ print $1 }') for host in $HOSTS_TO_MOVE do # if ! silent lock_host $host; then echo $host already handled; continue; fi LABELS=$(host_labels $host) PLATFORM=$(host_platform $host) silent create_labels $LABELS silent create_platform $PLATFORM if create_host $host $LABELS then silent remove_host $host echo $host migrated else echo $host failed fi done