在Ruby/Inspec中解析Casandra.yaml以获取种子值



如何在Ruby(InSpec(配置文件中解析Cassandra.yaml中的以下yaml以获得种子值。我想在一个字符串中获得所有的3个IP地址,或者在3个字符串中获取3个IP

种子提供者:

- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
# seeds is actually a comma-delimited list of addresses.
# Ex: "<ip1>,<ip2>,<ip3>"
- seeds: "10.0.0.1, 10.0.0.2, 10.0.0.3"

也许有更好的方法,但这会奏效:

require 'yaml'
config = YAML.load_file("/path/cassandra.yml")[0]
config.dig("parameters").first['seeds']
# => "10.0.0.1, 10.0.0.2, 10.0.0.3"

您可以在InSpec中尝试文件资源或yaml资源。

最新更新