无论 Fabric 是否干净退出,我都需要执行一堆清理任务(主要是删除临时文件和文件夹)。
如何使用 Fabric 实现这一目标?
在你的 fabfile 中放这样的东西:
from fabric.context_managers import settings
def task_name():
# commands that are not expected to fail
...
with settings(warn_only=True):
# commands that might fail
...
clean_up()
warn_only=True
如果您不在乎,您甚至可能希望对整个任务进行处理:
@with_settings(warn_only=True)
def task_name():
...
(更多信息)
您总是可以使用新的 execute() 并将其包装在 try/except 中,或者只查看 run() 的返回码。