Currently the 2.0 code starts an SSE events server and a RPC server. The SSE events server contains other servers like the REST API server and ADMIN server. But sidecar as a whole can potentially work without sse connectivity. In that case we still want to be able to set up a REST API (for instance to serve entities that were already stored in DB) and we want to have an admin server (to expose the metrics and;/or status endpoint). Ultimately we want the metrics of rpc server to be available under the admin /metrics endpoint, but that is out of scope of this ticket.
AC:
Database connectivity is defined outside of the sse server config part. The remaining sse config is optional
REST API is defined outside of the sse server config -> it's still optional
ADMIN API is defined outside of the sse server config -> it's still optional
There is a validation which checks that REST API needs to have a database connection configured. Sidecar should fail to spin up if that's not true.
Currently the 2.0 code starts an SSE events server and a RPC server. The SSE events server contains other servers like the REST API server and ADMIN server. But sidecar as a whole can potentially work without sse connectivity. In that case we still want to be able to set up a REST API (for instance to serve entities that were already stored in DB) and we want to have an admin server (to expose the metrics and;/or status endpoint). Ultimately we want the metrics of rpc server to be available under the admin /metrics endpoint, but that is out of scope of this ticket.
AC: