Sha256: ed375ec13112ddbad03b042a7016fc5adb98d34e115d0016675775d77a2b488a

Contents?: true

Size: 1.19 KB

Versions: 25

Compression:

Stored size: 1.19 KB

Contents

# Don't change this file!
# Configure your daemon in config/environment.rb

DAEMON_ROOT = "#{File.expand_path(File.dirname(__FILE__))}/.." unless defined?( DAEMON_ROOT )

require "rubygems"
require "bundler/setup"

module DaemonKit
  class << self
    def boot!
      unless booted?
        pick_boot.run
      end
    end

    def booted?
      defined? DaemonKit::Initializer
    end

    def pick_boot
      (vendor_kit? ? VendorBoot : GemBoot).new
    end

    def vendor_kit?
      File.exists?( "#{DAEMON_ROOT}/vendor/daemon-kit" )
    end
  end

  class Boot
    def run
      load_initializer
      DaemonKit::Initializer.run
    end
  end

  class VendorBoot < Boot
    def load_initializer
      require "#{DAEMON_ROOT}/vendor/daemon-kit/lib/daemon_kit/initializer"
    end
  end

  class GemBoot < Boot
    def load_initializer
      begin
        require 'rubygems' unless defined?( ::Gem )
        gem 'daemon-kit'
        require 'daemon_kit/initializer'
      rescue ::Gem::LoadError => e
        msg = <<EOF

You are missing the daemon-kit gem. Please install the following gem:

sudo gem install daemon-kit

EOF
        $stderr.puts msg
        exit 1
      end
    end
  end
end

DaemonKit.boot!

Version data entries

25 entries across 25 versions & 5 rubygems

Version Path
daemon-kit-0.3.3 spec/fixtures/zero_two_three/config/boot.rb
daemon-kit-0.3.2 spec/fixtures/zero_two_three/config/boot.rb
daemon-kit-0.3.1 spec/fixtures/zero_two_three/config/boot.rb
daemon-kit-0.3.0 spec/fixtures/zero_two_three/config/boot.rb
daemon-kit-0.3.0.rc2 spec/fixtures/zero_two_three/config/boot.rb
daemon-kit-0.3.0.rc1 lib/generators/daemon_kit/app/templates/config/boot.rb
daemon-kit-0.2.3 lib/generators/daemon_kit/app/templates/config/boot.rb
daemon-kit-0.2.1 lib/generators/daemon_kit/app/templates/config/boot.rb
daemon-kit-0.2.0 lib/generators/daemon_kit/app/templates/config/boot.rb
leecher-1.1.1 config/boot.rb
leecher-1.1.0 config/boot.rb
leecher-1.0.0 config/boot.rb
em-langrove-0.0.4.6 functional/config/boot.rb
em-langrove-0.0.4.5 functional/config/boot.rb
langrove-0.0.4.5 functional/config/boot.rb
langrove-0.0.4.4 functional/config/boot.rb
langrove-0.0.4.3 functional/config/boot.rb
langrove-0.0.4.2 functional/config/boot.rb
langrove-0.0.4.1 functional/config/boot.rb
langrove-0.0.4 functional/config/boot.rb