Можно ли автоматизировать Google Cloud SDK gcloud init - интерактивная команда

Документация по Google Cloud SDK https://cloud.google.com/sdk/docs/ дает указание запустить gcloud init после его установки.

Есть ли способ автоматизировать этот шаг, учитывая, что gcloud init такое интерактивная команда?

1 ответ

Решение

Не нужно бежать gcloud init, Основная цель - убедиться, что учетные данные настроены и, возможно, установлено свойство проекта. Если у вас есть учетные данные учетной записи службы, gcloud может быть настроен и готов к работе через

gcloud auth activate-service-account --key-file=credential_key.json
gcloud config set project my-project

Для полноты gcloud init по сути, выполняет следующие шаги:

  1. Выберите конфигурацию (один из следующих)
    • gcloud config configrations create my_configuration
    • gcloud config configrations activate my_configuration
  2. Настройка учетных данных (один из следующих)
    • (Интерактивный) gcloud auth login
    • gcloud config set account my_existsting_credentials
    • gcloud auth activate-service-account
  3. Задать проект
    • gcloud config set project my_project
      • Список доступных проектов для установленных учетных данных можно увидеть черезgcloud projects list
  4. (Необязательно) Установите зону GCE по умолчанию (должен быть включен Compute API)
    • gcloud config set compute/zone my_default_gce_zone
      • Список зон можно получить через gcloud compute zones list
  5. (Необязательно) Установите регион GCE по умолчанию (должен быть включен Compute API)
    • gcloud config set compute/region my_default_gce_region
      • Список регионов можно получить через список вычислений gcloud.
  6. (Необязательно) создайте файл конфигурации по умолчанию для gsutil
    • gsutil config -n -o ~/.boto
Другие вопросы по тегам