module Capistrano::DSL

Public Instance Methods

consul_all_nodes(properties = {}) { |node| ... } click to toggle source
# File lib/capistrano/consul.rb, line 30
def consul_all_nodes(properties = {})
  Consul.setup
  Diplomat::Node.get_all.each_with_index do |node, index|
    if block_given?
      yield(node)
    else
      extra_properties = index.zero? ? { primary: true } : {}
      server(node['Address'], properties.merge(extra_properties))
    end
  end
end
consul_service(service_name, properties = {}) { |node| ... } click to toggle source
# File lib/capistrano/consul.rb, line 42
def consul_service(service_name, properties = {})
  Consul.setup
  Diplomat::Service.get(service_name, :all).each_with_index do |node, index|
    if block_given?
      yield(node)
    else
      extra_properties = index.zero? ? { primary: true } : {}
      server(node['Address'], properties.merge(extra_properties))
    end
  end
end