-
Story
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
False
-
None
-
False
-
Sprint 58 - week 2 and 3, Sprint 59, Sprint 60, Sprint 61, Sprint 62
The IOR code is currently quite complex for what it does: it just takes Istio Gateways and creates OCP Routes based on a set of rules. But because we implemented an initial sync mechanism (run at startup) that is different from the event-based reconciliation that happens while running, we have to be twice as careful (literally) when fixing bugs or adding new features, simply because there are two very similar code paths with a lot of duplication. We should rework the code base to either get rid of the initial sync completely or at least remove the code duplication as much as possible as to avoid problems.
Acceptance Criteria:
- extend Integration test for IOR that uses SMMR to be able to safely refactor
- egress gateways should be ignored
- routes should not be recreated on startup
- routes for the same Gateway should not be recreated
- environment variable PILOT_SCOPE_GATEWAY_TO_NAMESPACE should be respected
- Remove duplicate code paths/ reuse code wherever possible
- Cleanup unit tests
- incorporates
-
OSSM-1900 IOR findService queries the API server for each namespace
- Closed
- is related to
-
OSSM-1105 IOR doesn't support a host with namespace/ prefix
- Closed
- relates to
-
OSSM-319 IOR generates duplicate routes
- Closed
-
OSSM-1974 All IOR routes are recreated when changes are made in the SMCP
- Closed
- mentioned on