Class: Niman::Platform

Inherits:
Object
  • Object
show all
Defined in:
lib/niman/platform.rb

Instance Method Summary collapse

Constructor Details

#initialize(platform) ⇒ Platform

Returns a new instance of Platform.



3
4
5
# File 'lib/niman/platform.rb', line 3

def initialize(platform)
  @platform = platform
end

Instance Method Details

#linux?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/niman/platform.rb', line 19

def linux?
  unix? && !mac?
end

#linux_variant(exists_block, read_block) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/niman/platform.rb', line 23

def linux_variant(exists_block, read_block)
  variant = { :distro => nil, :family => nil }

  if exists_block.('/etc/lsb-release')
    lsb_release = read_block.('/etc/lsb-release') 
    variant = { :distro => $1 } if lsb_release =~ /^DISTRIB_ID=(.*)/
  end

  if exists_block.('/etc/debian_version')
    variant[:distro] = :debian if variant[:distro].nil?
    variant[:family] = :debian if variant[:variant].nil?
  elsif exists_block.('/etc/redhat-release') or exists_block.('/etc/centos-release')
    variant[:family] = :redhat if variant[:family].nil?
    variant[:distro] = :centos if exists_block.('/etc/centos-release')
  elsif exists_block.('/etc/SuSE-release')
    variant[:distro] = :sles if variant[:distro].nil?
  end
  variant
end

#mac?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/niman/platform.rb', line 11

def mac?
  (/darwin/ =~ @platform) != nil
end

#unix?Boolean

Returns:

  • (Boolean)


15
16
17
# File 'lib/niman/platform.rb', line 15

def unix?
  !windows?
end

#windows?Boolean

Returns:

  • (Boolean)


7
8
9
# File 'lib/niman/platform.rb', line 7

def windows?
  (/cygwin|mswin|mingw|bccwin|wince|emx/ =~ @platform) != nil
end