Sha256: ec25a32f3b7d82c9993b2e0004cb04ab1647796102e9ec2e975963bd21e87bce
Contents?: true
Size: 1.21 KB
Versions: 2
Compression:
Stored size: 1.21 KB
Contents
require 'webrick' require 'webrick/https' require 'openssl' require 'rack/ssl' class KL::Server def initialize @config = KL.config if @config['api']['ssl'] options = { :Port => @config['api']['port'], :SSLEnable => true, :SSLVerifyClient => OpenSSL::SSL::VERIFY_NONE, :SSLCertificate => OpenSSL::X509::Certificate.new(File.open(@config['api']['cert']['crt']).read), :SSLPrivateKey => OpenSSL::PKey::RSA.new(File.open(@config['api']['cert']['key']).read), :SSLCertName => [[ "CN", WEBrick::Utils::getservername ]] } else options = { :Port => @config['api']['port'], :SSLEnable => false } end @webrick_options = options @server = ::Rack::Handler::WEBrick end def start KL.logger.info '[server] Starting web server...' Thread.new { @server.run KL::Api, @webrick_options } if (@config['api']['ssl']) msg = "[server] Web server listening on #{@config['api']['port']} with SSL" else msg = "[server] Web server listening on #{@config['api']['port']}" end KL.logger.info msg end def stop @server.shutdown KL.logger.info '[server] Web server has stopped.' end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
kldockeragent-0.5.1 | lib/kldockeragent/server.rb |
kldockeragent-0.5.0 | lib/kldockeragent/server.rb |