I am using GKE, with the default GCP ingress controller
For simplicities sake, there are many repositories but we can isolate this problem down to an example with 2
- API micro service defined in source repository 1
- UI service defined in source repository 2.
Each repository is configured to deploy its resources to an existing managed GKE cluster and has ingress routes defined only for itself.
Ideally, I would have one subdomain for the entire Ingress controller (using the default GCP Ingress Controller), and I believe one load balancer for that controller. But I would define the routes in 2 separate Ingress files and associate both of them with that Controller. I have been unable to figure out how to do this. And based on the related question below, it may not be possible.
But I find this desirable as API would be verifiable, including its Ingress configuration once deployed, and also does not configure routes for other projects that it should not depend on.
This led me to try to find some "create or append" solution for the Ingress resource, but I'm not finding that a lot of people feel the need to do this, which leads me to believe I am just thinking about this problem incorrectly.
So how do you manage your Ingress resource definition when no single repository should own the entire spec?
related question. Is it possible to have multiple ingress resources with a single GKE ingress controller