1

我为 python 编写了一个 ansible playbook 角色,并尝试使用带有 Serverspec/RSpec 的厨房测试对其进行测试。以下测试确保我是否能够源激活 virtualenv。这在 CentOS 上运行良好,但在 Debian-Ubuntu 上测试失败并出现错误(检查代码块下方)

  describe command("source #{jenkins_home}/virtualenv/#{version}/bin/activate") do
    its(:exit_status) { should eq 0 }
  end

错误:

 6) Command "source /home/jenkins/virtualenv/pypy3/bin/activate" exit_status should eq 0
    Failure/Error: its(:exit_status) { should eq 0 }

      expected: 0
           got: 127

      (compared using ==)
      /bin/sh -c source\ /home/jenkins/virtualenv/pypy3/bin/activate

    # /tmp/verifier/suites/serverspec/python_spec.rb:22:in `block (3 levels) in <top (required)>'

我的假设

它试图从基本上无法运行命令的/bin/sh运行。我怎样才能缓解这个问题?

4

1 回答 1

2

你能把电话从source改为.吗?这应该适用于bashsh

于 2015-10-12T21:38:43.933 回答