Sha256: 6c49cf151c7125137c4f12bf64531c87ab71e46e1951d4413125ca82237db18a

Contents?: true

Size: 805 Bytes

Versions: 10

Compression:

Stored size: 805 Bytes

Contents

set(:monitrc) { "#{deploy_to}/.monitrc.local" }

after "deploy:update_code", "monit:setup"
before "deploy:restart", "monit:reload"

namespace :monit do
  desc "Setup monit configuration files"
  task :setup do
    configs = fetch(:monit_configs, {})
    servers = find_servers

    upload_template(monitrc, :mode => "0644") do |server|
      configs.select do |name, config|
        roles = config[:options][:roles]
        if roles.nil?
          true
        else
          [roles].flatten.select do |r|
            self.roles[r.to_sym].include?(server)
          end.any?
        end
      end.map do |name, config|
        "# #{name}\n#{config[:body]}"
      end.join("\n\n")
    end
  end

  desc "Reload monit configuration"
  task :reload do
    run "monit reload &>/dev/null && sleep 1"
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
capper-1.2.4 lib/capper/monit.rb
capper-1.2.3 lib/capper/monit.rb
capper-1.2.2 lib/capper/monit.rb
capper-1.2.1 lib/capper/monit.rb
capper-1.2.0 lib/capper/monit.rb
capper-1.1.0 lib/capper/monit.rb
capper-1.0.1 lib/capper/monit.rb
capper-1.0.0 lib/capper/monit.rb
capper-0.9.23 lib/capper/monit.rb
capper-0.9.22 lib/capper/monit.rb