lib/danarchy_deploy/services/init/openrc.rb in danarchy_deploy-0.2.7 vs lib/danarchy_deploy/services/init/openrc.rb in danarchy_deploy-0.2.8

- old
+ new

@@ -1,13 +1,14 @@ module DanarchyDeploy module Services class Init class Openrc - def initialize(service, options) - @service = service - @options = options + def initialize(service, runlevel, options) + @service = service + @runlevel = runlevel + @options = options end def status cmd = "rc-service #{@service} status" return { stdout: "Fake run: started", stderr: nil } if @options[:pretend] @@ -56,16 +57,19 @@ cmd = "rc-service #{@service} restart" DanarchyDeploy::Helpers.run_command(cmd, @options) end def enable - cmd = "rc-update add #{@service} default" + cmd = "rc-update add #{@service} #{@runlevel}" DanarchyDeploy::Helpers.run_command(cmd, @options) end def disable - cmd = "rc-update del #{@service} default" - DanarchyDeploy::Helpers.run_command(cmd, @options) + Dir["/etc/runlevels/*/#{@service}"].each do |svc| + runlevel, service = svc.split('/')[3,4] + cmd = "rc-update del #{service} #{runlevel}" + DanarchyDeploy::Helpers.run_command(cmd, @options) + end end end end end end