Sha256: b2125f3bc0e6e9b716d3c04dd8ae0a419082d1b18c399310ea7cf5e7c1ead894
Contents?: true
Size: 1.13 KB
Versions: 3
Compression:
Stored size: 1.13 KB
Contents
require 'thor' require 'grape' require 'grape-route-helpers' require 'site_hook/webhook' require 'thin' require 'site_hook/config' require 'super_callbacks' module SiteHook module Commands class ServerClass < Thor # def __version # puts SiteHook::VERSION # end # map ['-v', '--version'] => __version method_option(:host, banner: 'HOST', aliases: ['-h'], type: :string, default: SiteHook::Config.new.webhook.host) method_option(:port, banner: 'PORT', aliases: ['-p'], type: :numeric, default: SiteHook::Config.new.webhook.port) desc 'listen [options]', '' def listen $threads << Thread.new do ::Thin::Server.start(options[:host], options[:port], SiteHook::Server, debug: true) end $threads << Thread.new do loop do case $stdin.gets when "reload\n" ::SiteHook::Config.reload! when "quit\n" $threads.each do |thr| thr == Thread.current ? exit(0) : thr.exit end end end end $threads.each(&:join) end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
site_hook-1.0.7 | lib/site_hook/commands/server_class.rb |
site_hook-1.0.6 | lib/site_hook/commands/server_class.rb |
site_hook-1.0.5 | lib/site_hook/commands/server_class.rb |