我正在用Python3编写一个OpenWhisk操作,它需要读取一个本地文件。似乎一旦我用这个python文件创建一个OpenWhisk操作并调用它,python操作就不能再读取这个本地文件了。本地文件与python文件位于相同的目录中。日志为stderr: IOError: Errno 2没有这样的文件或目录:'./localFile‘
有人知道如何在OpenWhisk操作中访问文件吗?
发布于 2017-04-01 22:23:47
问题是,对文件的相对引用将不起作用,因为与内部运行时相比,源代码从不同的方向(/action)运行。这可以通过不使用相对路径(例如,./)引用文件来以暴力方式补救。
例如,这是可行的--但不是理想的:
$ cat __main__.py
def main(args):
f = open('/action/workfile', 'r')
return {'file': f.read()}
$ echo "hello" > workfile
$ zip p.zip __main__.py workfile
$ wsk action update p p.zip --kind python:3
ok: updated action p
$ wsk action invoke -br p
{
"file": "hello\n"
}https://stackoverflow.com/questions/43151225
复制相似问题