尝试通过使用服务帐户从Python部署App Engine实例。目标是启动许多实例,执行一些繁重的网络任务(下载和上传文件)并关闭后遗症。 我正在尝试使用Python运行时中的服务帐户执行此操作,但是出现以下错误
TypeError: Missing required parameter "servicesId"
这可能是什么问题,或者对于这种任务有更好的解决方案?谢谢,代码如下:
SCOPES = ['https://www.googleapis.com/auth/cloud-platform']
SERVICE_ACCOUNT_FILE = 'service.json'
credentials = service_account.Credentials.from_service_account_file(
SERVICE_ACCOUNT_FILE, scopes=SCOPES)
gcp = build('appengine', 'v1', credentials=credentials)
res = gcp.apps().create(body={"id":"251499913983"})
app_json = {
"deployment": {
"files": {
"my-resource-file1": {
"sourceUrl": "https://storage.googleapis.com/downloader_sources/hello-world/main.py"
}
}
},
"handlers": [
{
"script": {
"scriptPath": "main.app"
},
"urlRegex": "/.*"
}
],
"runtime": "python27",
"threadsafe": True
}
res2 = gcp.apps().services().versions().create(body=app_json)
答案 0 :(得分:1)
我想您需要指定要部署到的服务。您可以使用默认值:
gcp.apps().services().versions().create(serviceID=default, body=app_json)
有关更多详细信息,请参见doc。