Details
Description
CHEF-597 made the Debian service provider (before insserv on Debian 6.0) use invoke-rc.d to start services, which respects system policy.
It is possible for a user to inadvertently disable a service in system policy. When Chef tries to start the service, it will succeed and continue but the service will not have started. This is because invoke-rc.d lies to us and reports a return code of 0 even when the service is disabled by policy. This can be frustrating and confusing.
We should check system policy before trying to start the service and issue a warning if it is unlikely to succeed. However, we should not raise an exception and we should not try to modify any settings, as this behavior may be intentional on the administrators part.
pull request https://github.com/opscode/chef/pull/223 should fix this. adds warning for rc-policy.d violation.
Let me know if there are additional style changes needed.