class Slnky::CLI::Service

Public Instance Methods

execute() click to toggle source
# File lib/slnky/cli/service.rb, line 10
def execute
  lib = File.expand_path("#{Dir.pwd}/lib", __FILE__)
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)

  require 'rubygems'
  require 'bundler/setup'
  require 'dotenv'
  Dotenv.load

  require 'slnky'
  require "slnky/#{name}"

  Slnky::Config.reset!
  Slnky::Config.configure(name, 'environment' => environment)

  klass = "Slnky::#{name.capitalize}::Service".constantize
  klass.new.start
rescue => e
  puts "failed to run service #{name}: #{e.message} at #{e.backtrace.first}"
  if trace?
    e.backtrace.each do |b|
      puts "  #{b}"
    end
  end
end