Class: Inspec::Resources::YumRepo

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

Instance Method Summary collapse

Constructor Details

#initialize(yum, reponame) ⇒ YumRepo

Returns a new instance of YumRepo.



109
110
111
112
# File 'lib/resources/yum.rb', line 109

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

Instance Method Details

#enabled?Boolean

Returns:

  • (Boolean)


132
133
134
135
136
# File 'lib/resources/yum.rb', line 132

def enabled?
  repo = info
  return false if repo.nil?
  info['status'] == 'enabled'
end

#exist?Boolean

Returns:

  • (Boolean)


128
129
130
# File 'lib/resources/yum.rb', line 128

def exist?
  !info.nil?
end

#infoObject



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

def info
  return @cache if defined?(@cache)
  selection = @yum.repositories.select { |e| e['id'] == @reponame || shortname(e['id']) == @reponame }
  @cache = selection[0] if !selection.nil? && selection.length == 1
  @cache
end

#shortname(id) ⇒ Object

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



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

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