Sha256: ee368f931302a0def40f8c462b8cf3f393a0b917a38f6bfbe0a8b7c2aba0d5e2

Contents?: true

Size: 1.85 KB

Versions: 13

Compression:

Stored size: 1.85 KB

Contents

git_plugin = self

namespace :puma do
  namespace :monit do
    desc 'Config Puma monit-service'
    task :config do
      on roles(fetch(:puma_role)) do |role|
        git_plugin.template_puma 'puma_monit.conf', "#{fetch(:tmp_dir)}/monit.conf", role
        git_plugin.sudo_if_needed "mv #{fetch(:tmp_dir)}/monit.conf #{fetch(:puma_monit_conf_dir)}"
        git_plugin.sudo_if_needed "#{fetch(:puma_monit_bin)} reload"
        # Wait for Monit to be reloaded
        sleep 1
      end
    end

    desc 'Monitor Puma monit-service'
    task :monitor do
      on roles(fetch(:puma_role)) do
        begin
          git_plugin.sudo_if_needed "#{fetch(:puma_monit_bin)} monitor #{git_plugin.puma_monit_service_name}"
        rescue
          invoke 'puma:monit:config'
          git_plugin.sudo_if_needed "#{fetch(:puma_monit_bin)} monitor #{git_plugin.puma_monit_service_name}"
        end
      end
    end

    desc 'Unmonitor Puma monit-service'
    task :unmonitor do
      on roles(fetch(:puma_role)) do
        begin
          git_plugin.sudo_if_needed "#{fetch(:puma_monit_bin)} unmonitor #{git_plugin.puma_monit_service_name}"
        rescue
          # no worries here (still no monitoring)
        end
      end
    end

    desc 'Start Puma monit-service'
    task :start do
      on roles(fetch(:puma_role)) do
        git_plugin.sudo_if_needed "#{fetch(:puma_monit_bin)} start #{git_plugin.puma_monit_service_name}"
      end
    end

    desc 'Stop Puma monit-service'
    task :stop do
      on roles(fetch(:puma_role)) do
        git_plugin.sudo_if_needed "#{fetch(:puma_monit_bin)}  stop #{git_plugin.puma_monit_service_name}"
      end
    end

    desc 'Restart Puma monit-service'
    task :restart do
      on roles(fetch(:puma_role)) do
        git_plugin.sudo_if_needed "#{fetch(:puma_monit_bin)} restart #{git_plugin.puma_monit_service_name}"
      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/tasks/monit.rake
capistrano3-puma-6.0.0.alpha.1 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.2.0 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.1.1 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.1.0 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.0.4 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.0.3 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.0.2 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.0.1 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.0.0 lib/capistrano/tasks/monit.rake
capistrano3-puma-5.0.0.beta1 lib/capistrano/tasks/monit.rake
capistrano3-puma-4.0.0 lib/capistrano/tasks/monit.rake
capistrano3-puma-3.1.1 lib/capistrano/tasks/monit.rake