<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!-- Original puppet manifest: Luke Kanies - puppetlabs.com -->
<service_bundle type="manifest" name="puppet">

  <service name="/puppet" type="service" version="1">

    <create_default_instance enabled="false"/>
    <single_instance/>

    <dependency name="config-file" grouping="require_all" restart_on="none" type="path">
      <service_fmri value="file:///usr/pkg/etc/puppet/puppet.conf"/>
    </dependency>

    <dependency name="loopback" grouping="require_all" restart_on="error" type="service">
      <service_fmri value="svc:/network/loopback:default"/>
    </dependency>

    <dependency name="physical" grouping="require_all" restart_on="error" type="service">
      <service_fmri value="svc:/network/physical:default"/>
    </dependency>

    <dependency name="fs-local" grouping="require_all" restart_on="none" type="service">
      <service_fmri value="svc:/system/filesystem/local"/>
    </dependency>

    <exec_method type="method" name="start" exec="/lib/svc/method/puppet start" timeout_seconds="60"/>

    <exec_method type="method" name="stop" exec="/lib/svc/method/puppet stop" timeout_seconds="60"/>

    <exec_method type="method" name="refresh" exec=":kill" timeout_seconds="60"/>

  <stability value="Evolving"/>

    <template>
      <common_name>
        <loctext xml:lang="C">Puppet Agent Daemon</loctext>
      </common_name>
      <documentation>
        <manpage title="puppet" section="1"/>
        <doc_link name="puppetlabs.com" uri="https://puppetlabs.com/puppet/introduction"/>
      </documentation>
    </template>
  </service>

</service_bundle>
