Skip to content

Instantly share code, notes, and snippets.

@laserlemon
Forked from ezmobius/default.rb
Created January 15, 2010 17:56
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 6 You must be signed in to fork a gist
  • Save laserlemon/278261 to your computer and use it in GitHub Desktop.
Save laserlemon/278261 to your computer and use it in GitHub Desktop.
#
# Cookbook Name:: delayed_job
# Recipe:: default
#
if %w(solo app app_master).include?(node[:instance_role])
user = node[:owner_name]
framework_env = node[:environment][:framework_env]
# Be sure to replace APP_NAME with the name of your application.
# The run_for_app method also accepts multiple application name arguments.
run_for_app('APP_NAME') do |app_name, data|
worker_name = "#{app_name}_delayed_job"
directory "/data/#{app_name}/shared/pids" do
owner user
group user
mode 0755
end
template "/etc/monit.d/delayed_job_worker.#{app_name}.monitrc" do
source 'delayed_job_worker.monitrc.erb'
owner 'root'
group 'root'
mode 0644
variables(
:app_name => app_name,
:user => user,
:worker_name => worker_name,
:framework_env => framework_env
)
end
bash 'monit-reload-restart' do
user 'root'
code 'monit reload && monit'
end
end
end
check process <%= @worker_name %>
with pidfile /data/<%= @app_name %>/shared/pids/delayed_job.pid
start program = "/bin/su -c 'RAILS_ENV=<%= @framework_env %> /data/<%= @app_name %>/current/script/delayed_job start' - <%= @user %>"
stop program = "/bin/su -c 'RAILS_ENV=<%= @framework_env %> /data/<%= @app_name %>/current/script/delayed_job stop' - <%= @user %>"
group <%= @app_name %>_jobs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment