РЕШЕНИЕ: проблема с google cloud sdk: `` вызывающие абоненты должны принять условия обслуживания ''

Известная проблема:

Установка google-cloud-sdk (пакет linux или из tarball) имеет причуду, при которой вы не можете создавать проекты из командной строки до принятия условий обслуживания.

Действия по воспроизведению:

  1. Загрузите sdk, распакуйте, переместите папку в домашний каталог и добавьте корневой каталог google sdk в PATH с помощью install.sh
  2. Инициализируйте и войдите с помощью: $ google init
  3. Создайте проект из CL: $ gcloud projects create --set-as-default

Это выдаст ошибку вроде:

ОШИБКА: (gcloud.projects.create) Операция [cp.5641973328385684887] завершилась неудачно: 9: вызывающие абоненты должны принять Условия использования

Я рискну предположить, что принятие условий обслуживания еще не встроено в инициализацию командной строки. Пропуск такого фундаментального шага в процессе установки должен быть незаконным, с последствиями, варьирующимися от смерти от тысячи нажатий клавиш, до «создания операционной системы нахуй» ... но это только я ...


person BitShift    schedule 22.07.2019    source источник


Ответы (3)


Мы находим решение в самом безумном месте: в интерфейсе управления облаком Google (облачная консоль).

  • Перейдите в облачную консоль.
  • Создайте проект, выбрав «выбрать проект» (вверху слева рядом с «Google Cloud Platform», а затем «создать проект» (вверху справа во всплывающем окне).

Это приведет к появлению соглашения об условиях обслуживания, и вы сможете продолжить после того, как согласитесь с условиями обслуживания.

Я надеюсь, что это поможет тому, кто еще наткнется на эту самую досадную ошибку.

Живи долго и процветай

Битовый сдвиг

person BitShift    schedule 22.07.2019
comment
Хотел бы я дать вам 10 голосов. Ты действительно сэкономил мне на этом бекон. Спасибо! - person Nick Schwaderer; 24.04.2020
comment
@NickSchwaderer Добро пожаловать, сэр :) так рад, что смог быть полезен! - person BitShift; 05.05.2020
comment
да, гугл .. почему бы тебе не включить это в документацию: eyeroll: - person blah blah; 16.05.2020

Не будем так драматичны с «смертью от тысячи нажатий клавиш». Это мера безопасности, которую необходимо реализовать. Безопасность не всегда удобна, но может избавить ваш текущий / кредитный счет от многих проблем.

Представьте себе этот теоретический сценарий. Вы предоставляете мне учетную запись службы, у которой есть роли для создания проекта. Создаю новый проект. Этот проект создается под вашей учетной записью Google. Я знаю, что делаю с Google IAM, поэтому я удаляю вас из нового проекта и делаю себя владельцем проекта. Теперь у вас нет доступа к новому проекту, но ваша кредитная карта оплачивает счета по моему проекту. Думаю, тогда вы кричали бы «смерть от миллиона нажатий клавиш».

Есть два типа проектов:

  • Независимые проекты, не являющиеся частью организации.
  • Проекты, являющиеся частью организации.

Если вы являетесь частью облачной организации Google, вы можете легко создавать проекты в пределах своей квоты (по умолчанию 5). Никаких запросов, принятия TOS и т. Д. Использование интерфейса командной строки для создания нового проекта не требует усилий.

Если вы не являетесь частью Google Cloud Organization, то вы в основном создаете новую учетную запись, вам необходимо настроить выставление счетов, принять условия обслуживания и т. Д. Это означает, что вам не следует использовать интерфейс командной строки для создания нового проекта в качестве CLI не запрашивает элементы, необходимые для нового проекта. Почему интерфейс командной строки должен использовать учетную запись службы. Учетная запись службы не является членом IAM, которому она принадлежит. Это заставит вас войти в Google Cloud Console, используя свои учетные данные, чтобы создать новый проект.

person John Hanley    schedule 22.07.2019
comment
Понятно. Все это кажется вполне разумным. В этом случае это должно быть отмечено в интерфейсе командной строки, предлагая пользователю войти в систему и завершить создание проекта безопасным способом. Предоставление пользователю возможности понять это по счастливой случайности в равной степени заслуживает наказания. - person BitShift; 25.07.2019
comment
Консоль Google - это действительно место, где можно потеряться. Мне потребовалось 15 минут, чтобы заставить мой код работать с API, но только после того, как я потратил целых 4 дня на попытки заставить работать аутентификацию. Документы Google API и AMI часто ошибочны, устарели или просто не работают. В конце концов, я заставил его работать - но только следуя некоторым советам, отмеченным как устаревшие в Stack Overflow, которые вообще не отображаются в документации Google! Я полностью понимаю необходимость аутентификации, однако, сделать ее на несколько порядков сложнее, чем сам сервис, не кажется хорошим подходом. - person Synchro; 12.06.2020

Для тех, кто получает это сообщение при попытке создать агент диалогового потока:

Перейдите на https://console.cloud.google.com, войдите в систему и примите отображаемые положения и условия. .

Впоследствии это сработало для меня ...

person jackygeee    schedule 15.06.2021