class LogicBomb::Generators::Installer

Public Class Methods

source_root() click to toggle source
# File lib/logicbomb/generators/installer.rb, line 10
def self.source_root
  File.expand_path(File.join(File.dirname(__FILE__), '../templates'))
end

Public Instance Methods

install() click to toggle source
# File lib/logicbomb/generators/installer.rb, line 14
def install
  @config = File.expand_path config
  copy_template
  reload_daemon
  enable_logicbomb
  start_logicbomb
end

Private Instance Methods

copy_template() click to toggle source
# File lib/logicbomb/generators/installer.rb, line 23
def copy_template
  begin
    template("logicbomb.service", "/etc/systemd/system/logicbomb.service")
  rescue Errno::EACCES
    puts "To install the daemon you need sudo access since we hit systemd."
    puts "Try again with rvmsudo if you have it, otherwise sudo."
    exit 1
  end
end
enable_logicbomb() click to toggle source
# File lib/logicbomb/generators/installer.rb, line 38
def enable_logicbomb
  puts "Success. Enabling logicbomb service..."
  run_command('sudo systemctl enable logicbomb')

end
reload_daemon() click to toggle source
# File lib/logicbomb/generators/installer.rb, line 33
def reload_daemon
  puts "Reloading the daemon..."
  run_command 'sudo systemctl daemon-reload'
end
run_command(cmd) click to toggle source
# File lib/logicbomb/generators/installer.rb, line 49
def run_command(cmd)
  exit_bool = system(cmd)
  return if exit_bool
  puts "Error running `#{cmd}'. Quitting"
  exit 1
end
start_logicbomb() click to toggle source
# File lib/logicbomb/generators/installer.rb, line 44
def start_logicbomb
  puts "Success. Starting logicbomb..."
  run_command('sudo systemctl start logicbomb')
end