summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-06-18 21:26:04 +0000
committerluke <luke@980ebf18-57e1-0310-9a29-db15c13687c0>2007-06-18 21:26:04 +0000
commit0b1dbbb870cde50eb39005098ed02979ee217f77 (patch)
tree54f0c880926a9bfcaf04bf13397ba3790c2ab853
parent611e783594149696073324f4108b2eea72416d58 (diff)
downloadpuppet-0b1dbbb870cde50eb39005098ed02979ee217f77.tar.gz
puppet-0b1dbbb870cde50eb39005098ed02979ee217f77.tar.xz
puppet-0b1dbbb870cde50eb39005098ed02979ee217f77.zip
Applying patch in #572 by trombik
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2619 980ebf18-57e1-0310-9a29-db15c13687c0
-rw-r--r--CHANGELOG3
-rwxr-xr-xlib/puppet/provider/service/init.rb13
2 files changed, 16 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
index b14d94f77..7ccd0dce0 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+ Added patch by trombik in #572, supporting old-style
+ freebsd init scripts with '.sh' endings.
+
Added fink package provider (#642), as provided by 'do'.
Marked the dpkg package provider as versionable (#647).
diff --git a/lib/puppet/provider/service/init.rb b/lib/puppet/provider/service/init.rb
index 79e5a2c69..51a77a157 100755
--- a/lib/puppet/provider/service/init.rb
+++ b/lib/puppet/provider/service/init.rb
@@ -108,6 +108,19 @@ Puppet::Type.type(:service).provide :init, :parent => :base do
# if we've gotten this far, we found a valid script
return fqname
}
+ @model[:path].each { |path|
+ fqname_sh = File.join(path,"#{name}.sh")
+ begin
+ stat = File.stat(fqname_sh)
+ rescue
+ # should probably rescue specific errors...
+ self.debug("Could not find %s.sh in %s" % [name,path])
+ next
+ end
+
+ # if we've gotten this far, we found a valid script
+ return fqname_sh
+ }
raise Puppet::Error, "Could not find init script for '%s'" % name
end