【问题标题】:Using a Chef InSpec resource before deleting a file在删除文件之前使用 Chef InSpec 资源
【发布时间】:2016-12-15 11:56:08
【问题描述】:

我正在运行 Chef InSpec 命令资源,该资源将命令的输出与文件中的某些内容相匹配。然后我在使用以下资源后删除该文件。但是以下命令返回"" 并且测试失败。

describe command("some command") do
  its ('stdout') {should match /some_regex/}
end

但是当我不删除文件时,上面的命令会返回预期的输出。 InSpec 资源和删除文件是否有任何问题?

【问题讨论】:

    标签: ruby rspec chef-infra inspec


    【解决方案1】:

    Rspec(以及 InSpec)有自己的两遍加载模型,与 Chef 的类似(但不相关且不同)。这意味着您可能会在测试运行之前将其删除,即使它看起来像是在代码中之后。尝试使用after(:all) 块?这是在普通 RSpec 中执行此操作的方法,但 InSpec 在某些地方与 Rspec 有偏差,所以我不是 100% 它会起作用。

    【讨论】:

    • 感谢@coderanger。它有很大帮助。在玩了一点语法并付出了一些努力之后,它起作用了,但与RSpec 不完全一样。
    猜你喜欢
    • 2016-11-02
    • 2016-12-09
    • 1970-01-01
    • 1970-01-01
    • 2017-01-30
    • 2022-07-28
    • 1970-01-01
    • 2017-01-27
    • 1970-01-01
    相关资源
    最近更新 更多