Skip to content

fix: handle multiple istio-ingress-route relations in jupyter-ui#576

Merged
NohaIhab merged 5 commits into
mainfrom
kf-8750-handle-multiple-istio-ingress-route-relations
Jun 17, 2026
Merged

fix: handle multiple istio-ingress-route relations in jupyter-ui#576
NohaIhab merged 5 commits into
mainfrom
kf-8750-handle-multiple-istio-ingress-route-relations

Conversation

@NohaIhab

@NohaIhab NohaIhab commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Part of canonical/bundle-kubeflow#1446

Use model.relations[...] instead of model.get_relation(...) when checking ingress relations, so the charm no longer raises TooManyRelatedAppsError when more than one istio-ingress-route relation is present.

Add unit tests covering multiple istio-ingress-route relations and verifying each relation receives a valid HTTPRoute config.

Note: this PR will be replicated to all our charm that relate to istio-ingress-route, once approved

@ckfbot ckfbot added backport track/1.10 Backport to track/1.10 backport track/1.11 Backport to track/1.11 labels Jun 11, 2026
@ckfbot

ckfbot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

🤖 Backport labels populated

Labels to this pull request were added automatically by the populate-labels.yaml action.

When the PR is merged, backport PRs according to the labels will be automatically created. To skip the backport creation, remove any unneeded labels before merging the PR.

@NohaIhab NohaIhab removed the backport track/1.10 Backport to track/1.10 label Jun 12, 2026
@NohaIhab NohaIhab marked this pull request as ready for review June 12, 2026 07:11
@NohaIhab NohaIhab requested review from a team, dariofaccin and mvlassis June 12, 2026 07:11
@dariofaccin

Copy link
Copy Markdown
Contributor

question: was this also tested on real deployment / integration tests with multiple integrations?

Deploy a second istio-ingress-k8s instance, relate it to jupyter-ui's
istio-ingress-route endpoint, and assert the resulting HTTPRoute is created
and attached to the second Gateway via parentRefs. Adjust concierge MetalLB
CIDR to provide two IPs, one per Istio ingress gateway.
@NohaIhab

Copy link
Copy Markdown
Contributor Author

@dariofaccin yes I've validated it locally, and now added integration tests too. Thanks!

Comment thread charms/jupyter-ui/tests/unit/test_operator.py
Comment thread concierge.yaml
Comment thread charms/jupyter-ui/tests/integration/test_charm_ambient.py Outdated
Comment thread charms/jupyter-ui/tests/integration/test_charm_ambient.py
Comment thread charms/jupyter-ui/src/charm.py
@NohaIhab NohaIhab requested a review from MattiaSarti June 17, 2026 08:53
@NohaIhab NohaIhab removed the request for review from mvlassis June 17, 2026 09:03
Comment thread charms/jupyter-ui/tests/unit/test_operator.py

@dariofaccin dariofaccin left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thank you for the thorough integration tests.

@NohaIhab NohaIhab merged commit 06cefb2 into main Jun 17, 2026
22 checks passed
@NohaIhab NohaIhab deleted the kf-8750-handle-multiple-istio-ingress-route-relations branch June 17, 2026 15:13
@ckfbot

ckfbot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Successfully created backport PR for track/1.11:

NohaIhab added a commit that referenced this pull request Jun 24, 2026
…kport #576) (#577)

# Description
Backport of #576 to `track/1.11`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport track/1.11 Backport to track/1.11

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants