批量测试模板切换的脚本

批量测试模板切换的脚本

#!/bin/sh

ipaddress=`hostname -i`
url="http://${ipaddress}/api"
user="admin@internal"
password="123456"

allTemplate=`psql -U engine -h localhost -d engine << EOF 
    SELECT vmt_guid, name from vm_templates_view ;
EOF`
echo $allTemplate

echo "input the change tempalte UUID:"
read templateuuid

echo `date`
echo `date +%s.%N`
date1_s=`date +%s.%N | cut -d '.' -f 1`
date2_ns=`date +%s.%N | cut -d '.' -f 2`

result=`psql -U engine -h localhost -d engine << EOF
    select vm_guid from vm_static where entity_type='VM';
EOF`

echo $result
result2=`echo ${result} | cut -f 3-7 -d ' '`
echo ${result2}

OLD_IFS="$IFS" 
IFS=" " 
arr=($result2) 
IFS="$OLD_IFS" 
for s in ${arr[@]} 
do
  curl \
  --insecure \
  --request PUT \
  --header "Accept: application/xml" \
  --header "Content-Type: application/xml" \
  --user "${user}:${password}" \
  --data "
  <vm>
    <new_templateuuid>${templateuuid}</new_templateuuid>
  </vm>" \
  "${url}/vms/${s}"
done

echo `date`
echo `date +%s.%N`
date2_s=`date +%s.%N | cut -d '.' -f 1`
date2_ns=`date +%s.%N | cut -d '.' -f 2`
echo "The total run time is: $(( ( 10#$date2_s - 10#$date1_s ) * 1000 + ( 10#$date2_ns / 1000000 - 10#$date1_ns / 1000000 ) )) ms!"


你可能感兴趣的:(批量测试模板切换的脚本)