class Sprinkle::Actors::Actor

Writing an actor

All actors should inherit from Sprinkle::Actors::Actor. Actors must provide the following methods:

Hopefully these methods are kind of fairly obvious. They should return true to indicate success and false to indicate failure. The actual commands you need to execute can be retrived from installer.install_sequence and verifier.commands.

Public Instance Methods

install(installer, roles, options) click to toggle source
# File lib/sprinkle/actors/actor.rb, line 36
def install(installer, roles, options)
  raise "you must define install"
end
servers_for_role?(role) click to toggle source

an actor must define this method so that each policy can ask the actor if there are any servers with that policy's roles so the policy knows whether it should execute or not

input: a single role or array of roles

# File lib/sprinkle/actors/actor.rb, line 32
def servers_for_role?(role)
  raise "please define servers_for_role?"
end
sudo?() click to toggle source

an actor must define this and let the installers know if it plans to try and add sudo to all of their commands or not since some installers might need to handle sudo their own special way

# File lib/sprinkle/actors/actor.rb, line 43
def sudo?
  raise "you must define sudo?"
end
sudo_command() click to toggle source

if an installer needs to call sudo this is the command the actor would prefer the installers to use

# File lib/sprinkle/actors/actor.rb, line 49
def sudo_command
  raise "you must define sudo_command"
end
verify(verifier, roles, options) click to toggle source
# File lib/sprinkle/actors/actor.rb, line 53
def verify(verifier, roles, options)
  raise "you must define verify"
end