Class: Inspec::Resources::YumRepo

Inherits:
Object
  • Object
show all
Defined in:
lib/inspec/resources/yum.rb

Instance Method Summary collapse

Constructor Details

#initialize(yum, reponame) ⇒ YumRepo

Returns a new instance of YumRepo.



116
117
118
119
# File 'lib/inspec/resources/yum.rb', line 116

def initialize(yum, reponame)
  @yum = yum
  @reponame = reponame
end

Instance Method Details

#enabled?Boolean

Returns:

  • (Boolean)


140
141
142
143
144
# File 'lib/inspec/resources/yum.rb', line 140

def enabled?
  return false unless exist?

  info["status"] == "enabled"
end

#exist?Boolean

Returns:

  • (Boolean)


136
137
138
# File 'lib/inspec/resources/yum.rb', line 136

def exist?
  !info.empty?
end

#infoObject



128
129
130
131
132
133
134
# File 'lib/inspec/resources/yum.rb', line 128

def info
  return @cache if defined?(@cache)

  selection = @yum.repositories.select { |e| e["id"] == @reponame || shortname(e["id"]) == @reponame }
  @cache = selection.empty? ? {} : selection.first
  @cache
end

#shortname(id) ⇒ Object

extracts the shortname from a repo id e.g. extras/7/x86_64 -> extras



123
124
125
126
# File 'lib/inspec/resources/yum.rb', line 123

def shortname(id)
  val = %r{^\s*([^/]*?)/(.*?)\s*$}.match(id)
  val.nil? ? nil : val[1]
end

#to_sObject



162
163
164
# File 'lib/inspec/resources/yum.rb', line 162

def to_s
  "YumRepo #{@reponame}"
end