Sha256: e89a1a9b5c0a6f5195a9a86efc86ba194e91a790a5ce9eea3141b8ce11126fb6

Contents?: true

Size: 1.51 KB

Versions: 1

Compression:

Stored size: 1.51 KB

Contents

module PoolParty
  class Base
    plugin :heartbeat do
      
      def enable
        has_package(:name => "heartbeat-2", :ensure => "installed")
        has_service(:name => "heartbeat", :hasstatus => true) do
          ensures "running"
        end
        
        has_exec(:name => "heartbeat-update-cib", :command => "/usr/sbin/cibadmin -R -x /etc/ha.d/cib.xml", :refreshonly => true)
        
        # variables for the templates
        has_variable({:name => "nodenames", :value => list_of_node_names})
        has_variable({:name => "node_ips",  :value => list_of_node_ips})
        has_variable({:name => "port", :value => (port || Base.port)})
        
        # These can also be passed in via hash
        has_remotefile(:name => "/etc/ha.d/ha.cf") do
          mode 444
          requires 'Package["heartbeat-2"]'
          notify 'Service["heartbeat"]'
          template File.join(File.dirname(__FILE__), "..", "templates/ha.cf")
        end
        
        has_remotefile(:name => "/etc/ha.d/authkeys") do
          mode 400
          requires 'Package["heartbeat-2"]'
          notify 'Service["heartbeat"]'
          template File.join(File.dirname(__FILE__), "..", "templates/authkeys")
        end
        
        has_remotefile(:name => "/etc/ha.d/cib.xml") do
          mode 444
          requires 'Package["heartbeat-2"]'
          notify 'Exec["heartbeat-update-cib"]'
          template File.join(File.dirname(__FILE__), "..", "templates/cib.xml")
        end                
        
      end
    end  
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
auser-poolparty-0.2.2 lib/poolparty/base_packages/heartbeat.rb