我正在看这个使用Deployment Manager部署云功能的示例:https://github.com/GoogleCloudPlatform/deploymentmanager-samples/tree/master/examples/v2/cloud_functions
使得此操作笨拙且不太实用的一件事是,它要求您在函数中显式导入每个文件:
imports:
- path: cloud_function.py
# The function code will be defined for the files in function/
- path: function/index.js
- path: function/package.json
每次有一个新文件时都必须添加它。 Deployment Manager也不支持通配符。
如何以编程方式导入文件?
这是cloud_function.py引用导入文件的部分,我尝试仅使用字符串,但是似乎导入实际上将文件复制到某处?我该如何以编程方式进行操作,这样就不必显式定义每个文件了?
files = ["function/index.js","function/package.json"] # this does not work if these files have not been declared via "import"
#for imp in ctx.imports:
for imp in files:
if imp.startswith(ctx.properties['codeLocation']):
zip_file.writestr(imp[len(ctx.properties['codeLocation']):],
ctx.imports[imp])
答案 0 :(得分:1)