-
Feature Request
-
Resolution: Done
-
Major
-
7.0.1.Final
-
None
-
The base URI for LRA participant callback endpoints is now configurable (previously it was taken from the base URI of the participant when it joined with the LRA
When an LRA participant enlists withing LRA, we detect the base URI of the participant from the UriInfo of the original JAX-RS call. This works but it might work better if we provide an option for user to override this baseURI manually with configuration. Currently, I can think of two reasons:
In the cloud/container/K8s/OS environment, we most likely parse base URI as the exposed route of the calling service if the client makes the call that joins the LRA. This is unnecessary because even if the coordinator runs in the same cluster, we need to go through the exposed route (like remote service) when we could call the service via the inner network (less DNS machinery).
I would really like to write a Quarkus DevService for the LRA Coordinator. Because of how testcontainers/Docker are constricted, we cannot run the coordinator container in the --network host, which we used so far to avoid problems when the coordinator container parses base URI as localhost. Because we can't run as network=host (testcontainers limitation), we need to access the host localhost from the LRA coordinator container as host.docker.internal. Without possible config override, I can't implement the Quarkus DevServices for LRA.