1

我正在开发一个自动化谷歌云设置的项目,有没有办法使用 Google-Api-Client for python 创建一个谷歌云平台项目?

请帮帮我!提前致谢!

这是我尝试过的:

来自views.py

from google.cloud import resource_manager
...

    client = resource_manager.Client()
         # List down all gcp projects
         for project in client.list_projects():
            print(project)
         new_project = client.new_project('project11-372', name='My new project')
         new_project.create()

它列出了我所有的 gcp 项目,但没有创建新项目。

这是我收到的错误:

文件“/Users/abdul/Documents/IGui/rest/views.py”,第 60 行,在 post new_project.create() 文件“/Users/abdul/IstioVirEnv/lib/python3.6/site-packages/google/cloud /resource_manager/project.py”,第 138 行,在 create data=data) 文件“/Users/abdul/IstioVirEnv/lib/python3.6/site-packages/google/cloud/_http.py”,第 293 行,在 api_request raise exceptions.from_http_response(response) google.cloud.exceptions.Forbidden: 403 POST https://cloudresourcemanager.googleapis.com/v1beta1/projects:调用者没有权限。
[2017 年 8 月 20 日 05:55:02]“POST /user/deployment/create/new HTTP/1.1”500 14960

4

1 回答 1

0

我已经使用谷歌云 API python 客户端成功创建了谷歌云项目。

脚步

  • gcloud beta auth application-default login通过登录到浏览器运行命令以获取应用程序默认凭据
  • 在我的 gcp 控制台上启用资源管理器 API

这是工作的python代码:

from googleapiclient import discovery
from oauth2client.client import GoogleCredentials
...


credentials = GoogleCredentials.get_application_default()
    service = discovery.build('cloudresourcemanager', 'v1', credentials=credentials)
            project_body = {
                'name': 'Api Project',
                'projectId': 'api-9837'
            }
            request = service.projects().create(body=project_body)
            request.execute()
            pprint(request)
于 2017-08-21T05:45:06.650 回答