Skip to content

Enhancement CNTRLPLANE-3527: Add Router to ServicePublishingStrategy for non-cloud platform support#2024

Draft
vsolanki12 wants to merge 1 commit into
openshift:masterfrom
vsolanki12:CNTRLPLANE-3527-router-service-publishing-strategy
Draft

Enhancement CNTRLPLANE-3527: Add Router to ServicePublishingStrategy for non-cloud platform support#2024
vsolanki12 wants to merge 1 commit into
openshift:masterfrom
vsolanki12:CNTRLPLANE-3527-router-service-publishing-strategy

Conversation

@vsolanki12
Copy link
Copy Markdown

Why was this change needed?

The HCP private router Service is unconditionally created as LoadBalancer regardless of platform.
On management clusters without cloud load-balancer support (Agent, KubeVirt, None platforms), the
Service stays Pending indefinitely, blocking route status propagation and KAS service resolution.

OCPBUGS-77856 identified this issue. PR openshift/hypershift#8439 provided an initial fix using
platform auto-detection, but was closed after review identified that ClusterIP used for NodePort
services is not externally reachable.

What changes are being made?

This enhancement proposes adding Router as a new ServiceType in spec.services[], extending
the existing ServicePublishingStrategyMapping pattern to cover the private router. This gives
operators explicit control over the service type and external address used to reach HCP routes.

Key changes:

  • New Router ServiceType constant in the HostedCluster API
  • Reuses existing NodePortPublishingStrategy (address + port fields)
  • CPO reads the strategy to determine service type and external address
  • Backward compatible — no Router entry defaults to LoadBalancer

References

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label May 28, 2026
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label May 28, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 28, 2026

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented May 28, 2026

@vsolanki12: This pull request references CNTRLPLANE-3527 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the epic to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Why was this change needed?

The HCP private router Service is unconditionally created as LoadBalancer regardless of platform.
On management clusters without cloud load-balancer support (Agent, KubeVirt, None platforms), the
Service stays Pending indefinitely, blocking route status propagation and KAS service resolution.

OCPBUGS-77856 identified this issue. PR openshift/hypershift#8439 provided an initial fix using
platform auto-detection, but was closed after review identified that ClusterIP used for NodePort
services is not externally reachable.

What changes are being made?

This enhancement proposes adding Router as a new ServiceType in spec.services[], extending
the existing ServicePublishingStrategyMapping pattern to cover the private router. This gives
operators explicit control over the service type and external address used to reach HCP routes.

Key changes:

  • New Router ServiceType constant in the HostedCluster API
  • Reuses existing NodePortPublishingStrategy (address + port fields)
  • CPO reads the strategy to determine service type and external address
  • Backward compatible — no Router entry defaults to LoadBalancer

References

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 28, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign enxebre for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

…atforms

Signed-off-by: Vimal Solanki <vsolanki@redhat.com>
@vsolanki12 vsolanki12 force-pushed the CNTRLPLANE-3527-router-service-publishing-strategy branch from cd86889 to 1cf0499 Compare June 2, 2026 09:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants