As a ServiceX developer I want to run the server without a RabbitMQ connection so I can test it locally.
Currently, the create_app factory calls the _init_rabbit_mq function, which blocks until a connection is made to RabbitMQ. This precludes using the server's other features, such as the web frontend and API requests which do not depend on RabbitMQ.
Acceptance Criteria
It's possible to visiting webpages and make API requests to endpoints which do not require RabbitMQ before a connection is made.
Endpoints which do require a RabbitMQ connection, such as submitting a transformation request, should return HTTP 503 - Service Unavailable if there is no connection.
The server can be run locally using flask run with or without RabbitMQ.
Assumptions
The SubmitTransformationRequest resource is the only one which requires a RabbitMQ connection.
Story
As a ServiceX developer I want to run the server without a RabbitMQ connection so I can test it locally.
Currently, the
create_app
factory calls the_init_rabbit_mq
function, which blocks until a connection is made to RabbitMQ. This precludes using the server's other features, such as the web frontend and API requests which do not depend on RabbitMQ.Acceptance Criteria
flask run
with or without RabbitMQ.Assumptions
SubmitTransformationRequest
resource is the only one which requires a RabbitMQ connection.