patch-for-autoupdate.sh 1.3 KB

12345678910111213141516171819202122
  1. #!/usr/bin/env bash
  2. export KUBECONFIG=/etc/kubernetes/admin.conf
  3. source <(/opt/yunion/bin/ocadm cluster rcadmin)
  4. CommercialOrCommunityEdition=$(kubectl -n onecloud get oc -o jsonpath='{.items[0].metadata.annotations.onecloud\.yunion\.io/edition}' || :)
  5. CurrentVersion=$(kubectl -n onecloud get onecloudclusters default -o=jsonpath='{.spec.version}')
  6. # echo "CommercialOrCommunityEdition: [[$CommercialOrCommunityEdition]]; CurrentVersion: [[$CurrentVersion]]"
  7. if [[ "$CommercialOrCommunityEdition" == "ce" ]]; then
  8. kubectl -n onecloud patch onecloudcluster default --type='json' -p '[{"op": "replace", "path": "/spec/autoupdate/disable", "value": true }]'
  9. # delete configmap
  10. kubectl delete configmap -n onecloud default-autoupdate &>/dev/null || :
  11. pods=($(kubectl get pods -A | grep autoupdate | awk '{print $2}'))
  12. if [[ "${#pods[@]}" -gt 0 ]]; then
  13. kubectl -n onecloud delete pods "${pods[@]}" &>/dev/null || :
  14. fi
  15. kubectl -n onecloud delete configmap default-autoupdate &>/dev/null || :
  16. kubectl -n onecloud delete deployments default-autoupdate &>/dev/null || :
  17. elif [[ "$CommercialOrCommunityEdition" == "ee" ]]; then
  18. kubectl -n onecloud patch onecloudcluster default --type='json' -p '[{"op": "replace", "path": "/spec/autoupdate/disable", "value": false }]'
  19. fi