Sha256: d7292b58fa7ceec9bf7b831e00447dade09c0f8a9714faf4335e626396cada36
Contents?: true
Size: 1.37 KB
Versions: 3
Compression:
Stored size: 1.37 KB
Contents
# encoding: utf-8 require 'utils/erlang_parser' require 'utils/file_reader' module Inspec::Resources class RabbitmqConf < Inspec.resource(1) name 'rabbitmq_config' supports platform: 'unix' desc 'Use the rabbitmq_config InSpec resource to test configuration data '\ 'for the RabbitMQ service located in /etc/rabbitmq/rabbitmq.config on '\ 'Linux and UNIX platforms.' example " describe rabbitmq_config.params('rabbit', 'ssl_listeners') do it { should cmp 5671 } end " include FileReader def initialize(conf_path = nil) @conf_path = conf_path || '/etc/rabbitmq/rabbitmq.config' @content = read_file_content(@conf_path, allow_empty: true) end def params(*opts) opts.inject(read_params) do |res, nxt| res.respond_to?(:key) ? res[nxt] : nil end end def to_s "rabbitmq_config #{@conf_path}" end private def read_content return @content if defined?(@content) @content = read_file_content(@conf_path, allow_empty: true) end def read_params return @params if defined?(@params) return @params = {} if read_content.nil? @params = ErlangConfigFile.parse(read_content) rescue Parslet::ParseFailed raise "Cannot parse RabbitMQ config: \"#{read_content}\"" end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
inspec-2.1.81 | lib/resources/rabbitmq_conf.rb |
inspec-2.1.21 | lib/resources/rabbitmq_conf.rb |
inspec-2.1.10 | lib/resources/rabbitmq_conf.rb |