我开始了Python调用
from invoke import task
@task
def build():
print("Building!")
期望输出为
$ invoke build
Building!
但是,我的输出是
$ invoke build
Can't find any collection named 'tasks'!
我不知道为什么。
令人惊奇的是,一旦我在virtualenv中调用,那么我就可以在没有virtualenv的情况下构建。
> mkvirtualenv myenv
> invoke build
Building!
> deactivate myenv
> invoke build
Building!
我错过什么了吗?
根据文档,包含task的文件应该命名为tasks.py。确保从与tasks.py相同的目录运行构建
您也可以将tasks.py
重命名为您选择的名称,并可以使用'-c'
选项运行它。
假设下面是您的简单py文件命名为'invoke_testing.py'
from invoke import task
@task
def check_config_files(c):
print("Hey I am Checking configurations")
您需要像这样运行命令行:例如,列出可用的任务
invoke -c invoke_testing --lists
输出:Available tasks:
check-config-files
注。函数名中的'_'
已替换为'-'
如果你需要运行一个特定的任务,它已经运行的名称列在列表中。
invoke -c invoke_testing check-config-files
我从这个源Python调用
得到这个引用