Skip to content

OCPNETUI-88: Display MAC Security status on UDN details page - #684

Draft
pcbailey wants to merge 1 commit into
openshift:mainfrom
pcbailey:display-udn-mac-security-status
Draft

pcbailey wants to merge 1 commit into
openshift:mainfrom
pcbailey:display-udn-mac-security-status

Conversation

@pcbailey

@pcbailey pcbailey commented Nov 12, 2026 •

Copy link
Copy Markdown
Contributor

Adds MAC security status field to the UDN details page.

Jira: https://redhat.atlassian.net/browse/OCPNETUI-88

Screenshots

Enabled

Screenshot From 2026-11-12 17-03-44

Disabled

Screenshot From 2026-11-12 16-27-26

- Add MACSecurityMode enum (Disabled, Enabled) to UDN types
- Add macSecurity field to UserDefinedNetworkLayer2 and UserDefinedNetworkLocalnet types
- Add getMACSecurityMode selector to return mode for active topology
  - Returns undefined for Layer3 topology
  - Checks both layer2 and localnet topologies
- Add MAC Security field to UDNLayer2Details component
  - Displays "Enabled", "Disabled", or "Enabled (default)" when unset
  - Uses useNetworkingTranslation() for all strings
- Update i18n locale files with new translation keys:
  - "MAC security"
  - "Enabled (default)"

Note: Localnet details view does not currently exist, so MAC security
was not added there. Field is ready in types and selector for when
Localnet details view is implemented.

Implements: OCPNETUI-88

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Pipeline controller notification

This PR uses the pipeline controller for second-stage tests. Selection and triggering follow the repository configuration.

Use /test ? to list jobs and /pipeline help for commands.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Nov 12, 2026
@openshift-ci-robot

openshift-ci-robot commented Nov 12, 2026 •

Copy link
Copy Markdown

@pcbailey: This pull request references OCPNETUI-88 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 story to target the "5.1.0" version, but no target version was set.

Details

In response to this:

Adds MAC security status field to the UDN details page.

Jira: https://redhat.atlassian.net/browse/OCPNETUI-88

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.

@coderabbitai

coderabbitai Bot commented Nov 12, 2026 •

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Central YAML; Path: .coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 783702d3-14ca-4359-8d7a-b4d56a5eb5c7
Pre-merge checks: Passed 10

Check name Status Explanation
Stable And Deterministic Test Names Passed The check applies to Ginkgo test titles. This PR does not add any test titles, so no failure condition is triggered. Evidence: - The repository is a TypeScript/React console plugin. It has no Go files…
Test Structure And Quality Passed The "Test Structure and Quality" check applies only to Ginkgo test code. This repository (openshift/networking-console-plugin, PR #684 by pcbailey) contains no Go source and no Ginkgo or Gomega refere…
Microshift Test Compatibility Passed The check applies only to newly added Ginkgo e2e tests (It, Describe, Context, When). This repository is a TypeScript/React OpenShift console plugin. It has no Go sources and no Ginkgo or openshift-te…
Single Node Openshift (Sno) Test Compatibility Passed The check applies only when the pull request adds Ginkgo e2e tests (It, Describe, Context, When). No such tests exist in this change. Evidence: - The PR is openshift/networking-console-plugin #684, "O…
Topology-Aware Scheduling Compatibility Passed The check is not applicable to this pull request. It covers deployment manifests, operator code, and controllers that add or change scheduling constraints. The PR (openshift/networking-console-plugin …
Ote Binary Stdout Contract Passed The check is inapplicable to this pull request. It targets process-level stdout writes in OpenShift Tests Extension (OTE) Go binaries, such as main(), init(), TestMain(), and suite setup. PR #684 (ope…
Ipv6 And Disconnected Network Test Compatibility Passed The check applies only to new Ginkgo e2e tests (It, Describe, Context, When). This PR adds none. - The PR diff against origin/main touches 11 files. They are locale JSON files, UDN type, constant an…
No-Weak-Crypto Passed The check flags weak cryptographic algorithms (MD5, SHA1, DES, RC4, 3DES, Blowfish, ECB), custom crypto implementations, and non-constant-time comparison of secrets or tokens. The PR (openshift/networ…
Container-Privileges Passed The container-privileges check flags privileged: true, hostPID, hostNetwork, hostIPC, SYS_ADMIN, root-running containers without justification, and allowPrivilegeEscalation: true in container or Kuber…
No-Sensitive-Data-In-Logs Passed The check flags logging that may expose passwords, tokens, API keys, PII, session IDs, internal hostnames, or customer data. The PR (#684, author pcbailey, verified)…
Full details: Stable And Deterministic Test Names

Explanation

The check applies to Ginkgo test titles. This PR does not add any test titles, so no failure condition is triggered. Evidence: - The repository is a TypeScript/React console plugin. It has no Go files, no github.com/onsi/ginkgo imports, and no go.mod. The only test frameworks are Cypress and Jest. - The PR commit (cee425a, "OCPNETUI-88: Display MAC Security status on UDN detail page") describes four changes: the MACSecurityMode enum and macSecurity fields in UDN types, a getMACSecurityMode selector, a MAC security field in UDNLayer2Details, and i18n keys. - The files that reference the feature are src/utils/resources/udns/selectors/index.ts, src/utils/resources/udns/types/types.ts, and src/views/udns/details/tabs/details/UDNLayer2Details.tsx. A search of test and spec files for MACSecurity or "MAC security" returned no matches. - The it(/describe( hits in the commit belong to pre-existing Cypress and Jest suites. They come from the repository-wide single-commit history, not from this feature. Caveat: the repository history is a single squashed commit, so the PR patch could not be isolated from the base. The feature-specific file list and the commit message are the basis for this conclusion.

Full details: Test Structure And Quality

Explanation

The "Test Structure and Quality" check applies only to Ginkgo test code. This repository (openshift/networking-console-plugin, PR #684 by pcbailey) contains no Go source and no Ginkgo or Gomega references. A search for *.go files returned nothing, and a search for "ginkgo" or "gomega" across the repository returned nothing. The PR's functional change is a TypeScript/React addition: a "MAC security" field on the UDN details page, using getMACSecurityMode and MAC_SECURITY_MODE_ENABLED from the @utils/resources/udns modules. The test files in the commit are Cypress specs under ui-tests-cy/. The check does not cover Cypress specs, and I did not assess them against these criteria. No Ginkgo It blocks were added, so there is no Ginkgo test code to evaluate. The check is inapplicable, so it passes. Note: the local git history shows the PR as one large commit (685 files). I did not use that to judge test structure. The verdict rests on the absence of Ginkgo code.

Full details: Microshift Test Compatibility

Explanation

The check applies only to newly added Ginkgo e2e tests (It, Describe, Context, When). This repository is a TypeScript/React OpenShift console plugin. It has no Go sources and no Ginkgo or openshift-tests dependency. The PR head commit (cee425a, "OCPNETUI-88: Display MAC Security status on UDN detail page") contains no Go test files and no added It(), Describe(), Context(), When(), ginkgo, apigroup, or MicroShift-related markers in its diff. The only test-style additions are Cypress specs under ui-tests-cy/tests/networking/*.cy.ts (for example adminOnlyDescribe('Test UDN', ...)). Those are Cypress tests, not Ginkgo e2e tests, so this check does not apply to them. The PR description and title describe a UI change that adds a MAC security status field to the UDN details page. The repository history appears to be squashed into one commit, so the exact base diff could not be isolated. This does not change the result, because no Ginkgo test additions were found in the commit. The check is not applicable, so it passes.

Full details: Single Node Openshift (Sno) Test Compatibility

Explanation

The check applies only when the pull request adds Ginkgo e2e tests (It, Describe, Context, When). No such tests exist in this change. Evidence: - The PR is openshift/networking-console-plugin #684, "OCPNETUI-88: Display MAC Security status on UDN details page". The description describes a UI field on the UDN details page. - The repository is a TypeScript/React console plugin. The tracked tree has 0 .go files. - A search of tracked files for ginkgo, g.It(, Describe(, and It( returned no matches. - The test-like files tracked are Jest-style *.test.ts unit tests under src/views/topology/, plus CI workflow and shell files. None are Ginkgo tests. - HEAD (cee425a) has no parent, so git cannot isolate the PR patch against a base. This limits the diff review. It does not change the result. The head state contains no Go or Ginkgo code, so the PR cannot have added a Ginkgo e2e test. Because no Ginkgo test is added, the SNO topology assumptions in the check do not apply.

Full details: Topology-Aware Scheduling Compatibility

Explanation

The check is not applicable to this pull request. It covers deployment manifests, operator code, and controllers that add or change scheduling constraints. The PR (openshift/networking-console-plugin #684, author pcbailey) changes only frontend display code and locale files. Comparing HEAD against origin/main shows five changed source files: constants.ts, the UDN selectors, the UDN types, and UDNLayer2Details.tsx, plus the locale JSON files. The diff adds a MACSecurityMode enum, a getMACSecurityMode selector, and a "MAC security" DetailsItem. It adds no pod specs, anti-affinity rules, tolerations, nodeSelectors, topology spread constraints, PDBs, replica counts, or controller logic. The commit does touch manifest-like paths, but those files are pre-existing and unchanged in this diff, so they are not introduced by the PR.

Full details: Ote Binary Stdout Contract

Explanation

The check is inapplicable to this pull request. It targets process-level stdout writes in OpenShift Tests Extension (OTE) Go binaries, such as main(), init(), TestMain(), and suite setup. PR #684 (openshift/networking-console-plugin, author pcbailey) adds a MAC security status field to the UDN details page, which is a TypeScript/React console plugin change. The repository contains no Go source files (rg --files -g '*.go' returned nothing). Searches for openshift-tests, "OpenShift Tests Extension", and klog.SetOutput found no matches. The head commit (cee425a, "OCPNETUI-88: Display MAC Security status on UDN detail page") touches only repository configuration, CI, and frontend files. No process-level Go code or OTE binary changed, so no stdout contract condition applies.

Full details: Ipv6 And Disconnected Network Test Compatibility

Explanation

The check applies only to new Ginkgo e2e tests (It, Describe, Context, When). This PR adds none. - The PR diff against origin/main touches 11 files. They are locale JSON files, UDN type, constant and selector modules under src/utils/resources/udns/, and src/views/udns/details/tabs/details/UDNLayer2Details.tsx. The change adds a MAC security status field to the UDN Layer2 details view. - The repository has no Go files (git ls-files '*.go' returns 0). No onsi/ginkgo imports exist anywhere in the tree. - No test files appear in the PR's changed-file list. The repo's test suites are Cypress (ui-tests-cy, integration-tests) and Jest unit tests. Neither is a Ginkgo e2e suite, so the IPv4 and disconnected-network criteria do not apply. The check is inapplicable to this PR, so it passes.

Full details: No-Weak-Crypto

Explanation

The check flags weak cryptographic algorithms (MD5, SHA1, DES, RC4, 3DES, Blowfish, ECB), custom crypto implementations, and non-constant-time comparison of secrets or tokens. The PR (#684, author pcbailey) adds a read-only MAC Security display field to the UDN Layer2 details page. Evidence gathered: - The commit cee425a ("OCPNETUI-88: Display MAC Security status on UDN detail page") describes only these changes: a MACSecurityMode enum, macSecurity type fields, a getMACSecurityMode selector, a "MAC security" row in UDNLayer2Details.tsx, and i18n keys. - src/views/udns/details/tabs/details/UDNLayer2Details.tsx (lines 30–39) renders the mode as a label. It performs only a string equality check against MAC_SECURITY_MODE_ENABLED and selects between two translated strings. It uses no hashing, ciphers, or secret comparison. - src/utils/resources/udns/selectors/index.ts (lines 83–91) returns the mode string from the object. It has no crypto logic. - Repository-wide searches for md5, sha1, des, rc4, 3des, blowfish, ecb, crypto, createHash, createCipher, and hmac found no matches in the PR's source. The only hits were an unrelated ESLint builtin-module list, lockfile integrity hashes, and an existing md5 transitive dependency in package-lock.json. That dependency is not changed by this PR's source. Limitation: the repository has a single commit, and origin/main shares no merge base with it. A strict base-to-head diff was therefore unavailable. The PR-specific changes were instead identified from the commit message and the named files. Those files contain no weak-crypto or custom-crypto code. Conclusion: the PR introduces no weak cryptographic algorithm, custom crypto, or non-constant-time secret comparison.

Full details: Container-Privileges

Explanation

The container-privileges check flags privileged: true, hostPID, hostNetwork, hostIPC, SYS_ADMIN, root-running containers without justification, and allowPrivilegeEscalation: true in container or Kubernetes manifests. Evidence gathered: - PR #684 (author pcbailey) is titled "OCPNETUI-88: Display MAC Security status on UDN details page". The description says it adds a MAC security status field to the UDN details page. - The local HEAD (cee425a) is a root commit with no parent, so no merge-base exists with origin/main. The complete PR patch cannot be reconstructed from commit history. - A tree diff of origin/main against HEAD lists 11 modified files. Seven are locale JSON files (en, es, fr, ja, ko, zh, and the plugin locale). The rest are TypeScript sources under src/utils/resources/udns/ and src/views/udns/details/tabs/details/UDNLayer2Details.tsx. - The new MAC security code (MAC_SECURITY_MODE_ENABLED, getMACSecurityMode, and the UDNLayer2Details render path) is UI and data-model code. It contains no manifests. - A keyword scan of the tree diff for privileged, hostPID, hostNetwork, hostIPC, SYS_ADMIN, allowPrivilegeEscalation, runAsUser, and runAsNonRoot returned no matches. Limitation: the diff was compared against origin/main as a tree diff, not as a true commit-range diff, because the history is unrelated. This is a reasonable proxy for the changed files. No changed file is a container or Kubernetes manifest, so the check does not apply to this change.

Full details: No-Sensitive-Data-In-Logs

Explanation

The check flags logging that may expose passwords, tokens, API keys, PII, session IDs, internal hostnames, or customer data. The PR (#684, author pcbailey, verified) adds a MAC security status field to the UDN Layer 2 details view. The commit cee425a changes these areas: the MACSecurityMode enum and macSecurity types in src/utils/resources/udns/types/types.ts, the getMACSecurityMode selector in src/utils/resources/udns/selectors/index.ts, the MAC security DetailsItem in src/views/udns/details/tabs/details/UDNLayer2Details.tsx, and locale JSON keys. None of these changed lines call console., networkConsole., or any other logging function. The logging calls found in the repository (for example networkConsole.error in src/views/nads/form/utils/utils.ts and networkConsole.warn in the UDN virtual machine modals) are pre-existing and not touched by the summarized changes. The PR therefore introduces no new logging of sensitive data.

@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 Nov 12, 2026
@openshift-ci

openshift-ci Bot commented Nov 12, 2026

Copy link
Copy Markdown
Contributor

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

openshift-ci Bot commented Nov 12, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: pcbailey

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

The pull request process is described 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

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Nov 12, 2026
@pcbailey
pcbailey marked this pull request as ready for review November 13, 2026 15:59
@openshift-ci openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 13, 2026
@pcbailey
pcbailey marked this pull request as draft November 13, 2026 15:59
@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 Nov 13, 2026
@openshift-ci

openshift-ci Bot commented Nov 13, 2026

Copy link
Copy Markdown
Contributor

@pcbailey: all tests passed!

Full PR test history. Your PR dashboard.

Details

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. 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