Привязался к обновлению развертывания в кластере GKE с помощью CircleCI. Мне удалось создать контейнер и загрузить его в GCR.
Но я не смог найти способ указать регион GCP при аутентификации с помощью такой команды, как gcloud --quiet container clusters get-credentials $K8S_CLUSTER --region=$MY_REGION
для обновления моего развертывания Kubernetes.
#!/bin/bash -eo pipefail
gcloud --quiet config set project $GOOGLE_PROJECT_ID
gcloud --quiet config set compute/region $MY_REGION
gcloud --quiet container clusters get-credentials $K8S_CLUSTER --region $MY_REGION
kubectl set image deployment/$DEPLOYMENT $APP_NAME=gcr.io/$PROJECT_ID/$APP_NAME:v2
Updated property [core/project].
Updated property [compute/region].
ERROR: (gcloud.container.clusters.get-credentials) unrecognized arguments:
--region
asia-southeast1
Exited with code 2
Мы знаем, что есть аргумент под названием --region
указать регион.
root@host# gcloud container clusters get-credentials -h
Usage: gcloud container clusters get-credentials NAME [optional flags]
optional flags may be --help | --internal-ip | --region | --zone
For detailed information on this command and its flags, run:
gcloud container clusters get-credentials --help
root@host#
Почему версия gcloud от CircleCI не поддерживает этот параметр?