class Zypper::Upgraderepo::OsRelease

Constants

OS_VERSIONS

Attributes

custom[R]

Public Class Methods

new(options) click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 14
def initialize(options)
  fname = if File.exist? '/etc/os-release'
            '/etc/os-release'
          elsif File.exist? '/etc/SuSE-release'
            '/etc/SuSE-release'
          else
            raise ReleaseFileNotFound
          end
  @release = IniParse.parse(File.read(fname))
  @current_idx = OS_VERSIONS.index(@release['__anonymous__']['VERSION'].delete('"'))

  if options.version
    raise InvalidVersion, options.version unless OS_VERSIONS.include?(options.version)
    @custom = options.version
  end
end

Public Instance Methods

current() click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 31
def current
  OS_VERSIONS[@current_idx]
end
current?(version) click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 63
def current?(version)
  OS_VERSIONS.index(version) == @current_idx
end
first?() click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 55
def first?
  @current_idx == 0
end
last?() click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 51
def last?
  @current_idx == (OS_VERSIONS.count - 1)
end
next() click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 35
def next
  unless last?
    OS_VERSIONS[@current_idx.next]
  else
    nil
  end
end
previous() click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 43
def previous
  unless first?
    OS_VERSIONS[@current_idx.pred]
  else
    nil
  end
end
valid?(version) click to toggle source
# File lib/zypper/upgraderepo/os_release.rb, line 59
def valid?(version)
  OS_VERSIONS.include? version
end