summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoah Kantrowitz <noah@coderanger.net>2016-03-15 11:16:34 -0700
committerNoah Kantrowitz <noah@coderanger.net>2016-03-15 11:16:34 -0700
commitc4f145b7e7ba9f6c1fb229c7c96ebe3d17d2aa01 (patch)
tree55a7a9790138ba32cefe9b61928f24ed4731f256
parent84ee78a74a6873ff1fce2090736413b8fb155ddf (diff)
downloadchef-c4f145b7e7ba9f6c1fb229c7c96ebe3d17d2aa01.tar.gz
Restore the :enable check but only look for service_missing and give a clearer error.
-rw-r--r--lib/chef/provider/service/redhat.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/chef/provider/service/redhat.rb b/lib/chef/provider/service/redhat.rb
index 2eda4748e3..4e17caf768 100644
--- a/lib/chef/provider/service/redhat.rb
+++ b/lib/chef/provider/service/redhat.rb
@@ -60,6 +60,12 @@ class Chef
a.failure_message Chef::Exceptions::Service, "#{chkconfig_file} dbleoes not exist!"
end
+ requirements.assert(:enable) do |a|
+ a.assertion { !@service_missing }
+ a.failure_message Chef::Exceptions::Service, "#{new_resource}: Service is not known to chkconfig."
+ a.whyrun "Assuming service would be disabled. The init script is not presently installed."
+ end
+
requirements.assert(:start, :reload, :restart) do |a|
a.assertion do
new_resource.init_command || custom_command_for_action?(action) || !@service_missing