Sha256: bbe8374b41887b71957b967ae58d81d4cba74129d8e5342a8db7f4bdcf008ee1

Contents?: true

Size: 935 Bytes

Versions: 13

Compression:

Stored size: 935 Bytes

Contents

module Capistrano
  class Puma::Monit < Capistrano::Plugin
    include PumaCommon
    def register_hooks
      before 'deploy:updating', 'puma:monit:unmonitor'
      after 'deploy:published', 'puma:monit:monitor'
    end

    def define_tasks
      eval_rakefile File.expand_path('../../tasks/monit.rake', __FILE__)
    end

    def set_defaults
      set_if_empty :puma_monit_conf_dir, -> { "/etc/monit/conf.d/#{puma_monit_service_name}.conf" }
      set_if_empty :puma_monit_use_sudo, true
      set_if_empty :puma_monit_bin, '/usr/bin/monit'
    end

    def puma_monit_service_name
      fetch(:puma_monit_service_name, "puma_#{fetch(:application)}_#{fetch(:stage)}")
    end

    def sudo_if_needed(command)
      if fetch(:puma_monit_use_sudo)
        backend.sudo command
      else
        puma_role = fetch(:puma_role)
        backend.on(puma_role) do
          backend.execute command
        end
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
capistrano3-puma-6.0.0.alpha.2 lib/capistrano/puma/monit.rb
capistrano3-puma-6.0.0.alpha.1 lib/capistrano/puma/monit.rb
capistrano3-puma-5.2.0 lib/capistrano/puma/monit.rb
capistrano3-puma-5.1.1 lib/capistrano/puma/monit.rb
capistrano3-puma-5.1.0 lib/capistrano/puma/monit.rb
capistrano3-puma-5.0.4 lib/capistrano/puma/monit.rb
capistrano3-puma-5.0.3 lib/capistrano/puma/monit.rb
capistrano3-puma-5.0.2 lib/capistrano/puma/monit.rb
capistrano3-puma-5.0.1 lib/capistrano/puma/monit.rb
capistrano3-puma-5.0.0 lib/capistrano/puma/monit.rb
capistrano3-puma-5.0.0.beta1 lib/capistrano/puma/monit.rb
capistrano3-puma-4.0.0 lib/capistrano/puma/monit.rb
capistrano3-puma-3.1.1 lib/capistrano/puma/monit.rb