#!/usr/bin/env ruby
require '3scale/backend'
require 'daemons'

if ARGV.delete '--version'
  STDOUT.puts "3scale_backend_worker version #{ThreeScale::Backend::VERSION}"
  exit 0
end

options = {
  multiple: true,
  dir_mode: :normal,
  dir: '/var/run/3scale'
}

# make --no-daemonize an alias of --ontop
options[:ontop] = true if ARGV.delete '--no-daemonize'

if !File.writable? options[:dir]
  require 'fileutils'
  FileUtils.mkdir_p options[:dir]
end

Daemons.run_proc('3scale_backend_worker', options) do
  ThreeScale::Backend::Worker.work
end
