From ea106b385ba99cfb84a39aaf45e6e15ae99f1675 Mon Sep 17 00:00:00 2001 From: Aleix Casanovas Date: Wed, 21 Oct 2026 13:36:11 +0200 Subject: [PATCH] fix(GPTEINFRA-18216): Exclude tenants from workshop clusters --- catalog/ui/src/app/Services/renderWorkshopRow.tsx | 5 ++++- catalog/ui/src/app/Workshops/WorkshopsItemDetails.tsx | 9 ++++++++- catalog/ui/src/app/Workshops/workshops-utils.tsx | 10 ++++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/catalog/ui/src/app/Services/renderWorkshopRow.tsx b/catalog/ui/src/app/Services/renderWorkshopRow.tsx index e010c72cc..912e7970a 100644 --- a/catalog/ui/src/app/Services/renderWorkshopRow.tsx +++ b/catalog/ui/src/app/Services/renderWorkshopRow.tsx @@ -12,6 +12,7 @@ import { checkWorkshopCanStart, checkWorkshopCanStop, getWorkshopAutoStopTime, + getWorkshopClusterResourceClaims, getWorkshopLifespan, isWorkshopLocked, } from '@app/Workshops/workshops-utils'; @@ -51,7 +52,9 @@ const renderWorkshopRow = ({ : []; const clusters = [ ...new Set( - resources + getWorkshopClusterResourceClaims(workshop.resourceClaims) + .flatMap((r) => r.status?.resources || []) + .map((r) => r.state) .map((r) => (r?.kind === 'AnarchySubject' ? r.spec?.vars?.job_vars?.sandbox_openshift_cluster : undefined)) .filter((cluster): cluster is string => Boolean(cluster)), ), diff --git a/catalog/ui/src/app/Workshops/WorkshopsItemDetails.tsx b/catalog/ui/src/app/Workshops/WorkshopsItemDetails.tsx index cb4f7969d..9f90613f6 100644 --- a/catalog/ui/src/app/Workshops/WorkshopsItemDetails.tsx +++ b/catalog/ui/src/app/Workshops/WorkshopsItemDetails.tsx @@ -33,6 +33,7 @@ import AutoStopDestroy from '@app/components/AutoStopDestroy'; import { checkWorkshopCanStop, getWorkshopAutoStopTime, + getWorkshopClusterResourceClaims, getWorkshopLifespan, isWorkshopLocked, isWorkshopStarted, @@ -354,7 +355,13 @@ const WorkshopsItemDetails: React.FC<{ {isAdmin ? : null} - + Workshop URL diff --git a/catalog/ui/src/app/Workshops/workshops-utils.tsx b/catalog/ui/src/app/Workshops/workshops-utils.tsx index 51c5067e6..5369197ce 100644 --- a/catalog/ui/src/app/Workshops/workshops-utils.tsx +++ b/catalog/ui/src/app/Workshops/workshops-utils.tsx @@ -111,3 +111,13 @@ export function isTenantClusterResourceClaim(resourceClaim: ResourceClaim): bool export function hasTenantClusterPools(workshopProvision: WorkshopProvision): boolean { return Array.isArray(workshopProvision.status?.tenantClusterPools); } + +export function getWorkshopClusterResourceClaims( + resourceClaims: ResourceClaim[] = [], + workshopProvisions: WorkshopProvision[] = [], +): ResourceClaim[] { + const clusterResourceClaims = resourceClaims.filter(isTenantClusterResourceClaim); + return clusterResourceClaims.length > 0 || workshopProvisions.some(hasTenantClusterPools) + ? clusterResourceClaims + : resourceClaims; +}