Sha256: 31c66f7032f800891a3f1ca88e445052960dc1b41d190314320e4939a4edad14
Contents?: true
Size: 1.06 KB
Versions: 1
Compression:
Stored size: 1.06 KB
Contents
# LinuxAdmin Service Representation # # Copyright (C) 2013 Red Hat Inc. # Licensed under the MIT License class LinuxAdmin class Service < LinuxAdmin attr_accessor :id private def systemctl(cmd) run!(cmd(:systemctl), :params => { nil => [cmd, "#{id}.service"] }) end public def initialize(id) @id = id end def running? run(cmd(:service), :params => { nil => [id, "status"] }).exit_status == 0 end def enable systemctl 'enable' self end def disable systemctl 'disable' self end def start run!(cmd(:service), :params => { nil => [id, "start"] }) self end def stop run!(cmd(:service), :params => { nil => [id, "stop"] }) self end def restart status = run(cmd(:service), :params => { nil => [id, "restart"] }).exit_status # attempt to manually stop/start if restart fails if status != 0 self.stop self.start end self end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
linux_admin-0.2.1 | lib/linux_admin/service.rb |