module HelperClasses::Platform
Attributes
services[RW]
system[RW]
Public Instance Methods
daemon_reload()
click to toggle source
# File lib/helper_classes/platform.rb, line 101 def daemon_reload reload end
disable(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 89 def disable(service) service_run(service, {ArchLinux: 'systemctl disable ##', Ubuntu: 'systemctl disable ##', MacOSX: nil} ) end
enable(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 82 def enable(service) service_run(service, {ArchLinux: 'systemctl enable ##', Ubuntu: 'systemctl enable ##', MacOSX: nil} ) end
enable_start(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 105 def enable_start(service) enable(service) start(service) end
net_restart(iface)
click to toggle source
# File lib/helper_classes/platform.rb, line 133 def net_restart(iface) net_stop(iface) net_start(iface) end
net_start(iface)
click to toggle source
# File lib/helper_classes/platform.rb, line 115 def net_start(iface) c = "#{@services[:net_start][@system]} #{iface}" if !System.run_bool(c) log_msg :Services, "Command #{c} failed" return false end return true end
net_status(iface, dev)
click to toggle source
# File lib/helper_classes/platform.rb, line 138 def net_status(iface, dev) case @system when :ArchLinux return System.run_str("netctl status #{iface} | grep Active") =~ /: active/ when :Ubuntu return System.run_str("ifconfig | grep #{dev}") != '' else return false end end
net_stop(iface)
click to toggle source
# File lib/helper_classes/platform.rb, line 124 def net_stop(iface) c = "#{@services[:net_stop][@system]} #{iface}" if !System.run_bool(c) log_msg :Services, "Command #{c} failed" return false end return true end
reload()
click to toggle source
# File lib/helper_classes/platform.rb, line 96 def reload return unless @system == :ArchLinux System.run_bool('/usr/bin/systemctl daemon-reload') end
restart(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 75 def restart(service) service_run(service, {ArchLinux: 'systemctl restart ##', Ubuntu: 'systemctl restart ##', MacOSX: nil} ) end
service_get(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 28 def service_get(service) begin @services[service.to_sym][@system] rescue NoMethodError => _e service.to_s end end
service_run(service, cmd)
click to toggle source
# File lib/helper_classes/platform.rb, line 36 def service_run(service, cmd) return unless @system if !cmd log_msg :Services, "System #{@system} can't start services" return false end service_name = service_get(service) if !service_name log_msg :Services, "System #{@system} doesn't have service #{service}" return false end cmd_system = cmd[@system] if !cmd_system log_msg :Services, "System #{@system} doesn't know how to do #{cmd}" return false end [service_name].flatten.each { |s| c = cmd_system.sub(/##/, s) if !System.run_bool(c) log_msg :Services, "Command #{c} failed" return false end } end
start(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 61 def start(service) service_run(service, {ArchLinux: 'systemctl start ##', Ubuntu: 'systemctl start ##', MacOSX: nil} ) end
stop(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 68 def stop(service) service_run(service, {ArchLinux: 'systemctl stop ##', Ubuntu: 'systemctl stop ##', MacOSX: nil} ) end
stop_disable(service)
click to toggle source
# File lib/helper_classes/platform.rb, line 110 def stop_disable(service) disable(service) stop(service) end