【发布时间】:2017-11-29 05:55:44
【问题描述】:
我正在尝试使用 api 创建一个云函数,源代码将在一个 zip 存档中提供,其中包含一个 index.js 和 package.json 文件.我已将此存档上传到存储桶并通过 API 请求创建了一个云功能,但现在我需要提取此 zip 存档以指出云功能的来源,我该如何实现?
这是我所做的: 来自views.py
sclient = storage.Client()
bucket = sclient.get_bucket(func_obj.bucket)
blob = bucket.blob(func_obj.sourceFile.name)
print('Uploading archive...')
print(blob.upload_from_filename(file_name))
name = "projects/{}/locations/us-central1/functions/{}".format(func_obj.project, func_obj.fname,)
print(name)
req_body = {
"name": name,
"entryPoint": func_obj.entryPoint,
"timeout": "3.5s",
"availableMemoryMb": func_obj.fmemory,
# "sourceUploadUrl": upload_url,
"sourceArchiveUrl": "gs://newer_bucket/func.zip",
"httpsTrigger": {},
}
service = discovery.build('cloudfunctions', 'v1')
func_api = service.projects().locations().functions()
response = func_api.create(location='projects/' + func_obj.project + '/locations/us-central1',
body=req_body).execute()
pprint.pprint(response)
【问题讨论】:
标签: python google-cloud-platform google-cloud-storage google-api-python-client