class Inspec::Resources::Mongodb
Attributes
conf_path[R]
Public Class Methods
new()
click to toggle source
# File lib/inspec/resources/mongodb.rb, line 11 def initialize case inspec.os[:family] when "debian", "fedora", "redhat", "linux", "suse" init_linux when "darwin" init_macos when "windows" init_windows end end
Public Instance Methods
to_s()
click to toggle source
# File lib/inspec/resources/mongodb.rb, line 22 def to_s "MongoDB" end
Private Instance Methods
dir_to_version(dir)
click to toggle source
# File lib/inspec/resources/mongodb.rb, line 61 def dir_to_version(dir) dir.chomp.split("/").last end
init_linux()
click to toggle source
# File lib/inspec/resources/mongodb.rb, line 28 def init_linux @conf_path = "/etc/mongod.conf" end
init_macos()
click to toggle source
# File lib/inspec/resources/mongodb.rb, line 32 def init_macos @conf_path = "/usr/local/etc/mongod.conf" end
init_windows()
click to toggle source
# File lib/inspec/resources/mongodb.rb, line 36 def init_windows dir = "C:\\Program Files\\MongoDB\\Server" @version = version_from_dir(dir) unless @version.to_s.empty? @conf_path = "#{dir}\\#{@version}\\bin\\mongod.cfg" end end
version_from_dir(dir)
click to toggle source
# File lib/inspec/resources/mongodb.rb, line 44 def version_from_dir(dir) dirs = inspec.command("Get-ChildItem -Path \"#{dir}\" -Name").stdout entries = dirs.lines.count case entries when 0 warn "Could not determine version of installed MongoDB by inspecting #{dir}" nil when 1 dir_to_version(dirs) else warn "Multiple versions of MongoDB installed or incorrect base dir #{dir}" first = dir_to_version(dirs.lines.first) warn "Using the first version found: #{first}" first end end