Sha256: 1b18ba8d40b53d99bb460ea0f5f7b2c0860c5b1d8a3caa7a66861b2db93b5d8e

Contents?: true

Size: 1.95 KB

Versions: 2

Compression:

Stored size: 1.95 KB

Contents

require 'spec/spec_helper'

describe Upstart::Exporter::Templates do
  describe ".app" do
    it "should generate a valid app config" do

      conf = <<-HEREDOC
start on 12
stop on 13

pre-start script

bash << "EOF"
  mkdir -p /var/log/SOMEAPP
  chown -R SOMEUSER /var/log/SOMEAPP
  chgrp -R SOMEGROUP /var/log/SOMEAPP
  chmod -R g+w /var/log/SOMEAPP
EOF

end script
HEREDOC

      described_class.app(
        :run_user => 'SOMEUSER',
        :run_group => 'SOMEGROUP',
        :app_name => 'SOMEAPP',
        :start_on => '12',
        :stop_on => '13'
      ).should == conf
    end
  end

  describe ".helper" do
    it "should generate a valid helper script" do

      conf = <<-HEREDOC
#!/bin/bash

[[ -r /etc/profile.d/rbenv.sh ]] && source /etc/profile.d/rbenv.sh

SOME COMMAND
HEREDOC

      described_class.helper('cmd' => 'SOME COMMAND').should == conf
    end
  end


  describe ".helper" do
    it "should generate a valid upstart script for a single command" do

      conf = <<-HEREDOC
start on starting SOMEAPP
stop on stopping SOMEAPP
respawn
respawn limit 5 10
kill timeout 24

script
  touch /var/log/SOMEAPP/SOMECMD.log
  chown SOMEUSER /var/log/SOMEAPP/SOMECMD.log
  chgrp SOMEGROUP /var/log/SOMEAPP/SOMECMD.log
  chmod g+w /var/log/SOMEAPP/SOMECMD.log
  exec sudo -u SOMEUSER /bin/sh HELPERPATH >> /var/log/SOMEAPP/SOMECMD.log 2>&1
end script
HEREDOC

      described_class.command(:run_user => 'SOMEUSER',
                              :run_group => 'SOMEGROUP',
                              :app_name => 'SOMEAPP',
                              :cmd_name => 'SOMECMD',
                              :respawn => 'respawn',
                              :respawn_limit => 'respawn limit 5 10',
                              :start_on => 'starting SOMEAPP',
                              :stop_on => 'stopping SOMEAPP',
                              :kill_timeout => 24,
                              :helper_cmd_conf => 'HELPERPATH').should == conf
    end
  end



end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
upstart-exporter-2.1.2 spec/lib/upstart-exporter/templates_spec.rb
upstart-exporter-2.1.1 spec/lib/upstart-exporter/templates_spec.rb