0

我正在使用Fn Project作为 Oracle Cloud Functions 的一部分,我希望包含一些我自己编写的帮助函数,这些函数目前在其他一些程序中使用。我想包含这些函数,而不必将它们复制并粘贴到我的源代码中,我觉得有一种方法可以做到这一点,但我还没有找到。

这是我的目录结构的样子。名称已更改,以使其更易于理解。

- helper
  - foo.py
- other
  - example.py
- functions
  - myfunc
    - func.py
    - func.yaml
    - requirements.txt

目前,在example.py我有以下内容:

from helper import foo
...
foo.bar() 

当我写 func.py 时,我写了同样的东西,但是当我运行时fn deploy -app test_appfn invoke test_app myfunc它在 import 语句上出错(我from helper import foo在顶部运行了基本的 hello world 函数:

Error invoking function. status: 502 message: function failed

我的第一反应是放入helperrequirements.txt 文件,但这仅适用于pip包。如何确保包含我自己的代码?

任何帮助将非常感激!


更新

到目前为止,我唯一的解决方案是将我的代码从字面上复制并粘贴到源文件中,这不是很容易维护。

4

1 回答 1

1

一旦你在from helper import foo里面func.py完成,包括库导入在内的整个代码都将在func.py. 使用pip freeze > requirements.txt主目录中的命令,您可以在requirements.txt. 因此,当您创建 docker 映像时,它将从requirements.txt.

于 2020-07-13T12:15:00.617 回答