module PoiseService::ServiceMixin

Mixin for application services. This is any resource that will be part of an application deployment and involves running a persistent service.

@since 1.0.0 @example

module MyApp
  class Resource < Chef::Resource
    include Poise
    provides(:my_app)
    include PoiseService::ServiceMixin
  end

  class Provider < Chef::Provider
    include Poise
    provides(:my_app)
    include PoiseService::ServiceMixin

    def action_enable
      notifying_block do
        template '/etc/myapp.conf' do
          # ...
        end
      end
      super
    end

    def service_options(r)
      r.command('myapp --serve')
    end
  end
end