Module: VagrantPlugins::Ventriloquist::Cap::Debian::VentriloquistContainersUpstart

Defined in:
lib/ventriloquist/cap/services/debian/ventriloquist_containers_upstart.rb

Class Method Summary collapse

Class Method Details

.ventriloquist_containers_upstart(machine) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/ventriloquist/cap/services/debian/ventriloquist_containers_upstart.rb', line 6

def self.ventriloquist_containers_upstart(machine)
  machine.communicate.tap do |comm|
    if ! comm.test('test -f /etc/init/ventriloquist.conf')
      machine.env.ui.info('Configuring Ventriloquist services upstart')
      comm.sudo '
cat<<EOF > /etc/init/ventriloquist.conf
description "Restart configured Ventriloquist services after reboot"

start on started docker

task

script
  if [ -d /var/lib/ventriloquist/cids ]; then
    sleep 1 # Give Docker some time
    for cidfile in \$(ls /var/lib/ventriloquist/cids/*); do
      cid=\$(cat \$cidfile)
      if ! \$(docker ps | grep -q \$cid); then
        docker start \$(cat \$cidfile)
      else
        echo "Container \${cid} already started"
      fi
    done
  fi
end script
EOF'
    end
  end
end