Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] [DNM] Testing Fix conflicting network prefix for (C)UDNs. #2433

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

trozet
Copy link
Contributor

@trozet trozet commented Feb 3, 2025

Due to internal conversion of network name to network prefix by GetSecondaryNetworkPrefix, which replaces '-' with '.', non-conflicting networks get conflicting internal names, e.g. for node switches.

For example, NADs with network name 'tenant-blue' and 'tenant.blue' will have such conflict. In UDN case, network name was built as ., therefore 2 UDNs with namespace+name => network will have a conflict:

'test' + 'tenant-blue' => test.tenant-blue
'test-tenant' + 'blue' => test-tenant.blue

If we use underscore instead of a period, it will allow us to work around this issue for (C)UDN.

Move (C)UDN generate and parse network name function to utils to let other modules use this logic. Convert GetNetworkVRFName to use this function instead of prefix.

📑 Description

Fixes #

Additional Information for reviewers

✅ Checks

  • My code requires changes to the documentation
  • if so, I have updated the documentation as required
  • My code requires tests
  • if so, I have added and/or updated the tests as required
  • All the tests have passed in the CI

How to verify it

Due to internal conversion of network name to network prefix by
GetSecondaryNetworkPrefix, which replaces '-' with '.', non-conflicting
networks get conflicting internal names, e.g. for node switches.

For example, NADs with network name 'tenant-blue' and 'tenant.blue'
will have such conflict. In UDN case, network name was built as
<namespace>.<name>, therefore 2 UDNs with namespace+name => network
will have a conflict:

'test' + 'tenant-blue' => test.tenant-blue
'test-tenant' + 'blue' => test-tenant.blue

If we use underscore instead of a period, it will allow us to work
around this issue for (C)UDN.

Move (C)UDN generate and parse network name function to utils to let
other modules use this logic. Convert `GetNetworkVRFName` to use this
function instead of prefix.

Signed-off-by: Nadia Pinaeva <[email protected]>
@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 Feb 3, 2025
@openshift-ci openshift-ci bot requested review from jcaamano and tssurya February 3, 2025 20:30
Copy link
Contributor

openshift-ci bot commented Feb 3, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: trozet

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

The pull request process is described here

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

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 3, 2025
Copy link
Contributor

openshift-ci bot commented Feb 4, 2025

@trozet: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-metal-ipi-ovn-techpreview dcc2683 link false /test e2e-metal-ipi-ovn-techpreview
ci/prow/e2e-aws-ovn-hypershift-conformance-techpreview dcc2683 link false /test e2e-aws-ovn-hypershift-conformance-techpreview
ci/prow/e2e-metal-ipi-ovn-dualstack-local-gateway-techpreview dcc2683 link false /test e2e-metal-ipi-ovn-dualstack-local-gateway-techpreview
ci/prow/e2e-metal-ipi-ovn-dualstack-techpreview dcc2683 link false /test e2e-metal-ipi-ovn-dualstack-techpreview
ci/prow/e2e-vsphere-ovn-techpreview dcc2683 link false /test e2e-vsphere-ovn-techpreview
ci/prow/e2e-metal-ipi-ovn-dualstack dcc2683 link true /test e2e-metal-ipi-ovn-dualstack
ci/prow/okd-scos-e2e-aws-ovn dcc2683 link false /test okd-scos-e2e-aws-ovn
ci/prow/e2e-aws-ovn-single-node-techpreview dcc2683 link false /test e2e-aws-ovn-single-node-techpreview
ci/prow/e2e-aws-ovn-techpreview dcc2683 link false /test e2e-aws-ovn-techpreview
ci/prow/e2e-gcp-ovn-techpreview dcc2683 link true /test e2e-gcp-ovn-techpreview
ci/prow/e2e-metal-ipi-ovn-ipv6-techpreview dcc2683 link false /test e2e-metal-ipi-ovn-ipv6-techpreview
ci/prow/e2e-metal-ipi-ovn-ipv4-bgp-techpreview dcc2683 link false /test e2e-metal-ipi-ovn-ipv4-bgp-techpreview
ci/prow/e2e-azure-ovn-techpreview dcc2683 link false /test e2e-azure-ovn-techpreview
ci/prow/e2e-metal-ipi-ovn-ipv6 dcc2683 link true /test e2e-metal-ipi-ovn-ipv6
ci/prow/security dcc2683 link false /test security

Full PR test history. Your PR dashboard.

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 kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants