您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

56 行
1.5KB

  1. #!/bin/bash
  2. GCP_VERSIONS=()
  3. LAST_VERSION_ID=""
  4. INSTANCE_ID=""
  5. get_instance_id() {
  6. # SERVICE VERSION ID VM_STATUS VM_LIVENESS DEBUG_MODE
  7. # default 20210807t221459 aef-default-20210807t221459-1nqz RUNNING HEALTHY YES
  8. echo "Getting gcloud instance id ..."
  9. if [ "$INSTANCE_ID" == "" ]
  10. then
  11. output=` gcloud app instances list | grep RUNNING` # get the running version only
  12. INSTANCE_ID=(` echo $output | awk -F' ' '{print $3}' `)
  13. LAST_VERSION_ID=(` echo $output | awk -F' ' '{print $2}' `)
  14. fi
  15. }
  16. del_old_instances(){
  17. get_instance_id
  18. echo "RUNNING VERSION: " $LAST_VERSION_ID
  19. GCP_VERSIONS=(` gcloud app versions list | awk -F' ' '{print $2}' `)
  20. LENGTH=${#GCP_VERSIONS[@]}
  21. for i in $(seq 1 1 $(expr $LENGTH - 1) )
  22. do
  23. if [ "${GCP_VERSIONS[$i]}" != "$LAST_VERSION_ID" ] ; then
  24. echo "delete old version ${GCP_VERSIONS[$i]} "
  25. del_instance_by_version ${GCP_VERSIONS[$i]}
  26. else
  27. echo "KEEP RUNNING VERSION ${GCP_VERSIONS[$i]}"
  28. fi
  29. done
  30. }
  31. del_instance_by_version() {
  32. versionId=$1
  33. if [ "$versionId" == "" ]; then
  34. return
  35. fi
  36. gcloud app versions delete --service=default $versionId ;
  37. # while true; do
  38. # read -p "Do you wish to delete version $versionId ?" yn
  39. # case $yn in
  40. # [Yy]* )
  41. # echo gcloud app instances delete $INSTANCE_ID --service=default --version=$versionId ;
  42. # break;;
  43. # [Nn]* ) exit;;
  44. # * ) echo "Please answer yes or no.";;
  45. # esac
  46. # done
  47. }