本地上下文中的fabric命令是grep命令失败

时间:2015-01-08 17:18:50

标签: python docker fabric

我在OS X上使用boot2docker。我正在尝试使用fabric来简化为QA运行的docker容器。

运行此命令......

  containerFound = fab.local('docker ps -a | grep nodejs', capture=True)
  # this didn't work either if fab.local('docker ps -a | grep nodejs').succeeded

生成以下错误:

Fatal error: local() encountered an error (return code 1) while executing 'docker ps -a | grep nodejs'

这是使用boot2docker的问题吗?我尝试过使用sudo,但没有。我相信boot2docker无论如何都以root身份运行,所以不需要sudo。

1 个答案:

答案 0 :(得分:1)

至少在Fabric 1.3.2中,您可以通过捕获SystemExit异常来恢复异常。如果您有多个命令在批处理中运行(如部署),并且想要在其中一个命令失败时进行清理,那么这将非常有用。