Module: Ansible::PlaybookMethods

Included in:
Ansible, Playbook
Defined in:
lib/ansible/playbook.rb

Constant Summary collapse

BIN =
'ansible-playbook'

Instance Method Summary collapse

Instance Method Details

#playbook(pb) ⇒ Object Also known as: <<



8
9
10
# File 'lib/ansible/playbook.rb', line 8

def playbook pb
  `#{config.to_s "#{BIN} #{pb}"}`
end

#stream(pb) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/ansible/playbook.rb', line 13

def stream pb
  # Use PTY because otherwise output is buffered
  SafePty.spawn config.to_s("#{BIN} #{pb}") do |r,w,p| # add -vvvv here for verbose
    until r.eof? do
      line = r.gets
      block_given? ? yield(line) : puts(line)

      raise "FAILED: #{line}" if line.include?('fatal: [')
      raise Playbook::Exception.new("ERROR: #{line}") if line.include?('ERROR!')
      # TODO raise if contains FAILED!
    end
  end
end