Я собираюсь сделать автоматизированного менеджера проектов Google Cloud на основе pythonic. Просто тестирую кучу моделей Tensorflow и прочее. Даже когда у меня есть полный доступ к обучению, развертыванию и тестированию моделей внутри проекта, я не могу создавать новые проекты, поскольку я аутентифицирован с помощью учетной записи службы через:
google.oauth2.service_account.Credentials.from_service_account_file("thisisakey.json")
Но, насколько я понимаю, учетная запись служб привязана к проекту, поэтому совершенно правильно, что создание нового проекта с ней вызывает ошибку. На самом деле это так:
googleapiclient.discovery.build("cloudresourcemanager", "v1", cache_discovery=False)
Фалис с:
Service accounts cannot create project without a parent.
Таким образом, либо создание/нахождение «родителя» для этого проекта, либо вход в более «мощную» учетную запись могут решить эту проблему. Но я не могу их понять. Существуют ли какие-либо другие типы учетных данных для загрузки и встраивания в python? Могу ли я создать проект из python? Все, что я проверял по этому поводу, имеет по крайней мере 2 года и кажется очень устаревшим (тогда проекты просто невозможно было создавать через API)
Обновление: я попытался создать проект, используя флаг «родительский» в теле проекта, в организации, созданной на основе корпорации, над которой я работаю. и даже если эта учетная запись службы имеет роли «Владелец» и «Администратор организации», запросы на создание завершаются с ошибкой:
Encountered 403 Forbidden with reason "forbidden"
User is not authorized.
Так что проблема сохраняется.