inspec - 我想输出结构化数据以供另一个函数解析

inspec - i want to output structured data to be parsed by another function

我有一个 inspec 测试,这很棒:

inspec exec scratchpad/profiles/forum_profile --reporter yaml

问题是我想在脚本中 运行 并将其输出到数组

我找不到指示我需要使用什么方法来模拟相同内容的文档

我这样做

def my_func
  http_checker = Inspec::Runner.new()
  http_checker.add_target('scratchpad/profiles/forum_profile')
  http_checker.run
  puts http_checker.report

所以报告方法似乎给了我等效类型的负载以及更多 - 有没有人有关于返回与 --reporter yaml 类型响应相同的输出但在脚本中的任何文档或建议?我想解析响应以便与另一个函数共享输出

我从来没有接触过inspec,所以对以下内容持保留态度,但根据https://github.com/inspec/inspec/blob/master/lib/inspec/runner.rb#L140, you can provide reporter option while instantiating the runner. Looking at https://github.com/inspec/inspec/blob/master/lib/inspec/reporters.rb#L11我认为应该是smth。喜欢 ["yaml", {}]。那么,你能不能试试

# ...
http_checker = Inspec::Runner.new(reporter: ["yaml", {}])
# ...

(它很可能会给你想要的输出)