使用@task和submodule约定,我的“父” fabfile导入了两个子模块(“ dev”和“ stable”,其任务在各自的init.py文件中定义)。如何在dev模块中获取@task来调用父fabfile中定义的任务。我似乎无法使导入正常工作。

我也尝试使用imp.load_source,但是产生了讨厌的循环导入(fabfile.py imports试图导入../fabfile.py)。

以这个为例:http://docs.fabfile.org/en/1.4.3/usage/tasks.html#going-deeper

在lb.py中定义的任务如何在顶部init.py中调用某项,或者在migrations.py中的任务在顶部init.py中调用某项?

最佳答案

您可以按名称调用结构任务:

from fabric.api import execute, task
@task
def innertask():
    execute("mytask", arg1, key1=kwarg1)

关于python - 结构-使用父模块中的常见任务,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12902644/

10-16 18:06