shutdown_vms.sh 974 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/bin/bash
  2. azure_config=azure_config.json
  3. if [ ! -f ${azure_config} ]; then
  4. echo "Cannot find $azure_config"
  5. exit 1
  6. fi
  7. delete=0
  8. while getopts 'd' flag; do
  9. case "${flag}" in
  10. d) delete=1 ;;
  11. *)
  12. echo "Unexpected option ${flag}"
  13. exit 1
  14. ;;
  15. esac
  16. done
  17. num_vms=`cat ${azure_config} | jq .num_vms`
  18. if [ $num_vms == "null" ]; then echo 'missing num_vms in config'; exit 1; fi
  19. location=`cat ${azure_config} | jq .location | sed 's/"//g'`
  20. if [ $location == "null" ]; then echo 'missing location in config'; exit 1; fi
  21. base_vm_name=deepspeed
  22. resource_group=deepspeed_rg_$location
  23. for i in `seq 0 $(( num_vms - 1))`; do
  24. vm_name=${base_vm_name}_$i
  25. if [ $delete == 0 ]; then
  26. echo "deallocating $vm_name"
  27. az vm deallocate --resource-group $resource_group --name $vm_name --no-wait
  28. else
  29. echo "deleting $vm_name"
  30. az vm delete -y --resource-group $resource_group --name $vm_name --no-wait
  31. fi
  32. done