Class: DQS::CheckDependencies

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

Constant Summary collapse

@@dpkg =

Instance variables…

'/usr/bin/dpkg'
@@aptitude =
'/usr/bin/aptitude'
@@grep =
'/bin/grep --color -i -e'
@@gem =
'/usr/bin/gem'
@@awk =
'/usr/bin/awk'

Instance Method Summary collapse

Instance Method Details

#dependences_deb(debs) ⇒ Object

Check gems



55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'lib/dqscore.rb', line 55

def dependences_deb(debs)
  begin
    puts "#{Tty.white}Updating #{Tty.blue} ==> #{Tty.green} Repositories #{Tty.reset}"
    unless system("#{@@aptitude} update >> /dev/null")
      puts "#{Tty.red} Error: Installing #{Tty.blue}==>#{Tty.red} #{dep}!#{Tty.reset}"
      exit!
    end
    puts "#{Tty.white}Repositories #{Tty.blue} ==> #{Tty.green} Updated #{Tty.reset}"

    debs.each do |dep|
        unless system("#{@@dpkg} -l | #{@@grep} #{dep} | #{@@awk} {'print $2}' | #{@@grep} \"^#{dep}$\" >> /dev/null")
        puts "#{Tty.white}Installing #{Tty.blue} ==> #{Tty.green} #{dep} #{Tty.reset}"
          unless system("#{@@aptitude} install #{dep} -y >> /dev/null")
            puts "#{Tty.red} Error: Installing #{Tty.blue}==>#{Tty.red} #{dep}!#{Tty.reset}"
            exit!
          end
        end
    end
    rescue Exception => e
    puts "#{Tty.red} Error: #{Tty.blue}==>#{Tty.red} #{e.message}!#{Tty.reset}"
    exit!
  end
  puts "#{Tty.white}All the deb packages are #{Tty.blue} ==> #{Tty.green} OK #{Tty.reset}"
end

#dependences_gems(gems) ⇒ Object

Check gems



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/dqscore.rb', line 35

def dependences_gems(gems)
  begin
    gems.each do |dep|
      unless system("#{@@gem} list -i #{dep} >> /dev/null")
        puts "#{Tty.white}Installing #{Tty.blue} ==> #{Tty.green} #{dep} #{Tty.reset}"
        #unless system("#{@@gem} install #{dep} --no-ri --no-rdoc")
        unless system("#{@@gem} install #{dep}")
          puts "#{Tty.red} Error: Installing #{Tty.blue}==>#{Tty.red} #{dep}!#{Tty.reset}"
          exit!
        end
      end
    end 
    rescue Exception => e
    puts "#{Tty.red} Error: #{Tty.blue}==>#{Tty.red} #{e.message}!#{Tty.reset}"
    exit!
  end
  puts "#{Tty.white}All the gems are #{Tty.blue} ==> #{Tty.green} OK #{Tty.reset}"
end