Skip to content

Conversation

@empovit
Copy link
Member

@empovit empovit commented Dec 26, 2025

No description provided.

- Update OpenShift Console SDK from 0.0.11 to 1.4.0
- Upgrade PatternFly components from v4 to v6
- Align with OpenShift 4.20 console plugin template
- Update Node.js base image from 16 to 20
- Modernize webpack and TypeScript configuration
- Add code quality tools (prettier, stylelint)
- Enhance i18n support with custom lexers
- Improve deployment security contexts and resource defaults
- Move nginx config to Helm configmap template
- Clean up obsolete files (default.conf, duplicate configs)
- Update compatibility table
- Complete PatternFly v6 code migration
- Add SCSS support for PatternFly v6 styles
- Add all DCGM metrics provided by default
Major version upgrade (1.0.0) with breaking changes for template alignment
and improved user experience.

Features:
- Add automatic plugin enablement via post-install Helm hook
- Add ServiceAccount support for plugin pods and patcher job
- Restructure values.yaml to match official template structure
- Increase default replicas from 1 to 2 for high availability
- Fix ConsolePlugin resource (remove namespace field)
- Remove unused ConsolePlugin CRD file
- Add comprehensive UPGRADE.md guide for migration

Breaking Changes:
- All plugin configuration now under 'plugin:' key (not root level)
- Minimum OpenShift version: 4.19+ (was 4.12+)
- PatternFly upgraded to v6 (from v4)
- Default replicas changed: 1 → 2

Value Structure Changes:
- replicaCount → plugin.replicas
- image.repository → plugin.image
- image.pullPolicy → plugin.imagePullPolicy
- resources → plugin.resources
- nodeSelector → plugin.nodeSelector
- tolerations → plugin.tolerations
- affinity → plugin.affinity
- podAnnotations → plugin.podAnnotations

See deployment/console-plugin-nvidia-gpu/UPGRADE.md for detailed migration guide.

This significantly improves user experience by eliminating manual 'oc patch'
commands and provides a consistent configuration structure aligned with the
official OpenShift console plugin template.
@openshift-ci
Copy link

openshift-ci bot commented Dec 26, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: empovit

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

Copy link
Collaborator

@yakovbeder yakovbeder left a comment

Choose a reason for hiding this comment

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

Review Findings

Blocking

deployment/console-plugin-nvidia-gpu/Chart.yaml: Version stays 0.2.5 despite breaking changes (min OCP 4.19+, values restructure, auto-enable job) and UPGRADE.md referencing 1.0.0 → bump chart version to 1.0.0 and align appVersion.

src/components/PodStatus/PodStatus.tsx (CrashLoopBackOff popover):

  • pod.metadata.nam typo breaks log/debug links → fix to pod.metadata.name
  • "View events" links to /logs (same as "View logs") → update to correct events route
  • Empty <ResourceLink> with no props → remove or supply required props (kind, name, namespace)

package.json / .eslintrc.yml: eslint-plugin-react-hooks removed → re-add or justify (catches real hooks violations)

i18n-scripts/lexers.js: Remove stray console.log(1) debug statement

Non-blocking

⚠️ src/components/ClusterOverview/GPUStatus.tsx: Hardcoded #3E8635 bypasses PatternFly theming (broken in dark mode) → use var(--pf-v6-global--success-color--100)

⚠️ package.json: i18next as peerDependency but not in devDependencies → add to devDependencies to avoid install warnings

⚠️ i18n-scripts/build-i18n.sh: [-oc] looks like a docs placeholder → remove or replace with actual flags

⚠️ Dockerfile: yarn install missing --frozen-lockfile → restore for reproducible builds

⚠️ tsconfig.json: strict disabled → justify or enable stricter type checking

⚠️ .gitignore: Adds .vscode but .vscode/settings.json is tracked → narrow ignore rule to avoid confusion

⚠️ deployment/.../templates/patch-consoles-job.yaml:

  • Relies on jq in patcher image → confirm it's present
  • Consider cleanup hook for success/failure (currently only before-hook-creation)
  • Note: Requires cluster-admin (ClusterRole/Binding + patches consoles.operator.openshift.io)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants