X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/c283713dc8762c396407f68129fb276dc4a746fc..13efb6304b9fcbe0fd3b496c751184c7aa1cc4d0:/services/api/config/initializers/eventbus.rb diff --git a/services/api/config/initializers/eventbus.rb b/services/api/config/initializers/eventbus.rb index 2350b578c6..ea1c210385 100644 --- a/services/api/config/initializers/eventbus.rb +++ b/services/api/config/initializers/eventbus.rb @@ -1,3 +1,19 @@ +require 'eventbus' + +# See application.yml for details about configuring the websocket service. + Server::Application.configure do - config.middleware.insert_before ActionDispatch::Static, RackSocket + # Enables websockets if ARVADOS_WEBSOCKETS is defined with any value. If + # ARVADOS_WEBSOCKETS=ws-only, server will only accept websocket connections + # and return an error response for all other requests. + if ENV['ARVADOS_WEBSOCKETS'] + config.middleware.insert_after ArvadosApiToken, RackSocket, { + :handler => EventBus, + :mount => "/websocket", + :websocket_only => (ENV['ARVADOS_WEBSOCKETS'] == "ws-only") + } + Rails.logger.info "Websockets #{ENV['ARVADOS_WEBSOCKETS']}, running at /websocket" + else + Rails.logger.info "Websockets disabled" + end end