Method: VPS::CLI::Playbook#initialize

Defined in:
lib/vps/cli/playbook.rb

#initialize(playbook, command = nil) ⇒ Playbook

Returns a new instance of Playbook.



34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/vps/cli/playbook.rb', line 34

def initialize(playbook, command = nil)
  unless File.exists?(playbook)
    raise NotFoundError, "Could not find playbook #{playbook.inspect}"
  end

  @playbook = {"constants" => {}}.merge(YAML.load_file(playbook))
  unless (playbooks = Dir[playbook.gsub(/\.\w+$/, "/*")].collect{|yml| File.basename(yml, ".yml")}).empty?
    @playbook["constants"]["playbooks"] = playbooks
  end

  @command = command
end