Sha256: eaed1d27fee4689f4804ce62080a26667626181a6718feb88b1a2c2aaebb36ee
Contents?: true
Size: 1.63 KB
Versions: 4
Compression:
Stored size: 1.63 KB
Contents
require 'capistrano/cli' require 'pp' module Sprinkle module Actors class Dummy < Actor #:nodoc: attr_accessor :per_host def initialize(&block) #:nodoc: # @config.set(:_sprinkle_actor, self) @roles={} self.instance_eval(&block) end def role(role, server, opts={}) @roles[role]||=[] @roles[role] << [ server, opts ] end # Determines if there are any servers for the given roles def servers_for_role?(roles) roles=Array(roles) roles.any? { |r| @roles.keys.include?(r) } end def install(installer, roles, opts={}) @installer = installer if self.per_host=opts.delete(:per_host) servers_per_role(roles).each do |server| installer.reconfigure_for(server) installer.announce process(installer.package.name, installer.install_sequence, server, opts) end else process(installer.package, installer.install_sequence, roles, opts) end end def sudo? false end def verify(verifier, roles, opts = {}) process(verifier.package.name, verifier.commands, roles, opts = {}) end def servers_per_role(role) @roles[role] end def print_command(cmd) puts cmd.inspect end def process(name, commands, roles, opts = {}) #:nodoc: # puts "PROCESS: #{name} on #{roles}" commands.each do |cmd| print_command(cmd) end # return false if suppress_and_return_failures true end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
sprinkle-0.7.7 | lib/sprinkle/actors/dummy.rb |
sprinkle-0.7.6.2 | lib/sprinkle/actors/dummy.rb |
sprinkle-0.7.6.1 | lib/sprinkle/actors/dummy.rb |
sprinkle-0.7.6 | lib/sprinkle/actors/dummy.rb |