Skip to content

SRVKP-15003: feat add Queue Information in PLR Details Page - #1448

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift-pipelines:masterfrom
arvindk-softwaredev:feat/SRVKP-15003
Oct 27, 2026
Merged

openshift-merge-bot[bot] merged 1 commit into
openshift-pipelines:masterfrom
arvindk-softwaredev:feat/SRVKP-15003

Conversation

@arvindk-softwaredev

@arvindk-softwaredev arvindk-softwaredev commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Type of Change

  • Bug fix
  • New feature
  • Refactoring
  • Migration
  • CVE Fix

Summary

display Queue Information under Cluster Execution section of PLR details page for Multicluster PLRs
Detailed AI summary here

Screen Recordings / Screenshot

SRVKP-15003.mov

@openshift-ci openshift-ci Bot added the approved Label for Approved PRs label Oct 27, 2026
@qodo-code-review

Copy link
Copy Markdown

PR Reviewer Guide 🔍

Warning

/review is deprecated. Use /agentic_review instead (removal date not yet scheduled).

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 3 🔵🔵🔵⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Missing Gate

MultiClusterExecutionDetails renders for every PipelineRun, although queue information is intended only for multicluster runs. Gate it on the run's multicluster status to avoid irrelevant UI and watches.

<MultiClusterExecutionDetails pipelineRun={pipelineRun} />
<Grid hasGutter>
Missing Name

The ClusterQueue watch starts before a workload has an admitted clusterQueue name, and pending workloads may never have one. Validate how the watch handles an undefined name and defer it until a name exists.

const [clusterQueue, clusterQueueLoaded, clusterQueueLoadError] =
  useK8sWatchResource<ClusterQueueKind>({
    groupVersionKind: getGroupVersionKindForModel(ClusterQueueModel),
    name: workload?.status?.admission?.clusterQueue,
  });
Endless Spinner

When the workload watch finishes with no matching workload, the Cluster Queue and Local Queue fields keep showing spinners because they require both workloadsLoaded and workload. Show an empty-state value once loading completes.

    {workloadsLoaded && workload ? (
      workload?.status?.admission?.clusterQueue
    ) : (
      <Spinner size="md" />
    )}
  </DescriptionListDescription>
</DescriptionListGroup>
<DescriptionListGroup>
  <DescriptionListTerm>
    {t('Local Queue')}
  </DescriptionListTerm>
  <DescriptionListDescription>
    {workloadsLoaded && workload ? (
      workload?.spec?.queueName
    ) : (
      <Spinner size="md" />

@qodo-code-review

Copy link
Copy Markdown

Important

The /generate_labels command by Qodo was deprecated on the 1st of October 2026 and is no longer available. We recommend switching to the latest Qodo review capabilities. Learn more

@arvindk-softwaredev
arvindk-softwaredev requested review from anwesha-palit-redhat and removed request for adityavshinde and pratap0007 October 27, 2026 07:39
@arvindk-softwaredev

Copy link
Copy Markdown
Contributor Author

/agentic_describe

@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

Show Kueue queue information on PipelineRun details

✨ Enhancement 🕐 20-40 Minutes

Grey Divider

AI Description

• Add queue names, wait time, and workload counts to PipelineRun details.
• Match Kueue Workloads to PipelineRuns by UID so the displayed queue information belongs to the
 run.
• Add localized labels and an error message for the new section.
Diagram

graph TD
  Page["PipelineRun details"] --> Panel["Cluster execution"] --> Hook["Workload watch"] --> Workload(["Kueue Workload"]) --> QueueWatch["ClusterQueue watch"] --> Queue(["ClusterQueue"])
Loading
High-Level Assessment

The following are alternative approaches to this PR:

1. Gate the queue panel to multicluster PipelineRuns
  • ➕ Matches the stated scope and avoids showing an empty or loading panel for ordinary PipelineRuns.
  • ➖ Requires a reliable eligibility check before rendering the panel.

Recommendation: Keep the UID-filtered Workload watch and targeted ClusterQueue lookup, but render the panel only when the PipelineRun is eligible for multicluster queue information. The current integration renders it for every PipelineRun, even though the Workload watch runs only on hub clusters. Add coverage for eligible, ineligible, and missing-admission states.

Files changed (5) +187 / -16

Enhancement (5) +187 / -16
plugin__pipelines-console-plugin.jsonAdd English queue information labels +8/-1

Add English queue information labels

• Adds labels for the cluster execution card, queue fields, and queue-loading error.

locales/en/plugin__pipelines-console-plugin.json

useMultiKueueResources.tsFilter watched Workloads by PipelineRun UID +31/-15

Filter watched Workloads by PipelineRun UID

• Extends the hub-gated Workload hook to accept a PipelineRun and apply its UID as a Kueue job-UID label selector. When no UID is present, the hook watches Workloads without that selector.

src/components/hooks/useMultiKueueResources.ts

MultiClusterExecutionDetails.tsxDisplay Workload and ClusterQueue information +145/-0

Display Workload and ClusterQueue information

• Adds a card showing cluster and local queue names, time until admission, and pending and admitted workload counts. It watches the referenced ClusterQueue and displays loading indicators or an error alert.

src/components/pipelineRuns-details/MultiClusterExecutionDetails.tsx

PipelineRunDetails.tsxInsert queue card into PipelineRun details +2/-0

Insert queue card into PipelineRun details

• Renders the new cluster execution card beneath the PipelineRun visualization. The card is currently rendered for all PipelineRuns.

src/components/pipelineRuns-details/PipelineRunDetails.tsx

consts.tsDefine the Kueue job-UID label +1/-0

Define the Kueue job-UID label

• Adds the Workload label key used to associate a Kueue Workload with a PipelineRun UID.

src/consts.ts

@arvindk-softwaredev arvindk-softwaredev changed the title feat: add Queue Information in PLR Details Page SRVKP-15003: feat add Queue Information in PLR Details Page Oct 27, 2026
@openshift-ci-robot

openshift-ci-robot commented Oct 27, 2026 •

Copy link
Copy Markdown
Collaborator

@arvindk-softwaredev: This pull request references SRVKP-15003 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:

Type of Change

  • Bug fix
  • New feature
  • Refactoring
  • Migration
  • CVE Fix

Summary

display Queue Information under Cluster Execution section of PLR details page for Multicluster PLRs
Detailed AI summary here

Screen Recordings / Screenshot

SRVKP-15003.mov

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.

@arvindk-softwaredev

Copy link
Copy Markdown
Contributor Author

/hold

display Queue Information under Cluster Execution section of PLR details page for Multicluster PLRs
@arvindk-softwaredev

Copy link
Copy Markdown
Contributor Author

/unhold

@anwesha-palit-redhat anwesha-palit-redhat 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

@openshift-ci openshift-ci Bot added the lgtm Looks Good to Me Label label Oct 27, 2026
@openshift-ci

openshift-ci Bot commented Oct 27, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: anwesha-palit-redhat, arvindk-softwaredev

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:
  • OWNERS [anwesha-palit-redhat,arvindk-softwaredev]

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

@openshift-merge-bot
openshift-merge-bot Bot merged commit 6abc9d2 into openshift-pipelines:master Oct 27, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Label for Approved PRs jira/valid-reference lgtm Looks Good to Me Label

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants