Skip to content

Instantly share code, notes, and snippets.

@adamhjk
Created November 13, 2009 21:32
Show Gist options
  • Save adamhjk/234188 to your computer and use it in GitHub Desktop.
Save adamhjk/234188 to your computer and use it in GitHub Desktop.
require 'merb-core'
require 'chef'
Chef::Config.from_file('/etc/chef/server.rb')
require 'chef/nanite'
require 'uuidtools'
Chef::Config[:nanite_identity] = "chef-#{UUIDTools::UUID.random_create.to_s}"
Chef::Nanite.in_event { Chef::Log.info "Nanite Booting..." }
time = 17
while(time != 0) do
time = time - 1
Chef::Log.info("Passing to nanite.. #{time}")
Thread.pass
sleep 1
end
Merb::Config.setup(:merb_root => File.expand_path(File.dirname(__FILE__)),
:fork_for_class_load => false,
:environment => 'production', :init_file => File.dirname(__FILE__) / "config/init.rb")
Merb.environment = Merb::Config[:environment]
Merb.root = Merb::Config[:merb_root]
Merb::BootLoader.run
# Uncomment if your app is mounted at a suburi
#if prefix = ::Merb::Config[:path_prefix]
# use Merb::Rack::PathPrefix, prefix
#end
run Merb::Rack::Application.new
# What ports/sockets to listen on, and what options for them.
listen 6880, :tcp_nodelay => true, :backlog => 1024
# What the timeout for killing busy workers is, in seconds
timeout 3600
# Whether the app should be pre-loaded
preload_app false
# How many worker processes
worker_processes 8
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment