summaryrefslogtreecommitdiff
path: root/lib/chef/resource/service.rb
diff options
context:
space:
mode:
authorDavide Cavalca <dcavalca@fb.com>2015-12-14 14:25:35 -0800
committerDavide Cavalca <dcavalca@fb.com>2016-02-22 14:03:16 -0800
commit11e74a822c52b57d87411f74fdc0167e2fad7d79 (patch)
tree667dfce98e211dcdfe49c98d8acdbf0fb5dff314 /lib/chef/resource/service.rb
parent1967e8c24ff5990f5352cec4ae84691b1643b2e1 (diff)
downloadchef-11e74a822c52b57d87411f74fdc0167e2fad7d79.tar.gz
Extend service resource to support masking
Diffstat (limited to 'lib/chef/resource/service.rb')
-rw-r--r--lib/chef/resource/service.rb15
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/chef/resource/service.rb b/lib/chef/resource/service.rb
index 849afebad0..616af6cf11 100644
--- a/lib/chef/resource/service.rb
+++ b/lib/chef/resource/service.rb
@@ -24,16 +24,18 @@ class Chef
class Service < Chef::Resource
identity_attr :service_name
- state_attrs :enabled, :running
+ state_attrs :enabled, :running, :masked
default_action :nothing
- allowed_actions :enable, :disable, :start, :stop, :restart, :reload
+ allowed_actions :enable, :disable, :start, :stop, :restart, :reload,
+ :mask, :unmask
def initialize(name, run_context = nil)
super
@service_name = name
@enabled = nil
@running = nil
+ @masked = nil
@parameters = nil
@pattern = service_name
@start_command = nil
@@ -140,6 +142,15 @@ class Chef
)
end
+ # if the service is masked or not
+ def masked(arg=nil)
+ set_or_return(
+ :masked,
+ arg,
+ :kind_of => [ TrueClass, FalseClass ]
+ )
+ end
+
# Priority arguments can have two forms:
#
# - a simple number, in which the default start runlevels get