smf understands the concept of refreshable
PUP-6238 Serivce SMF should declare has_feature :refreshable
diff --git a/lib/puppet/provider/service/smf.rb b/lib/puppet/provider/service/smf.rb
--- a/lib/puppet/provider/service/smf.rb
+++ b/lib/puppet/provider/service/smf.rb
@@ -23,6 +23,8 @@ Puppet::Type.type(:service).provide :smf, :parent => :base do
commands :adm => "/usr/sbin/svcadm", :svcs => "/usr/bin/svcs"
commands :svccfg => "/usr/sbin/svccfg"
+ has_feature :refreshable
+
def setupservice
if resource[:manifest]
[command(:svcs), "-l", @resource[:name]]