Skip to content

Commit 6b19686

Browse files
Merge pull request #960 from openshift-cherrypick-robot/cherry-pick-959-to-release-v1.22.x
[release-v1.22.x] SRVKP-10786: updated hub cluster detection to use multi-cluster-role
2 parents eb9be4b + e282b00 commit 6b19686

2 files changed

Lines changed: 8 additions & 3 deletions

File tree

src/components/hooks/useMultiClusterProxyService.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ export type UseMultiClusterProxyOptions = {
1111

1212
/**
1313
* Hook to detect if the current cluster is a hub cluster and if the resource had executed in a Spoke Cluster
14-
* A hub cluster has TektonConfig.spec.role === 'hub'.
14+
* A hub cluster has TektonConfig.spec.scheduler.['multi-cluster-disabled'] === false and TektonConfig.spec.scheduler.['multi-cluster-role'] === 'hub'. (this config is propagating from operator/pkg/reconciler/shared/tektonconfig/scheduler/scheduler.go)
1515
* A resource executed on Spoke cluster has managedBy === 'kueue.x-k8s.io/multikueue' (for PLRs) or lables with prefix 'kueue.x-k8s.io' (for TRs)
1616
*
1717
* @returns { isResourceManagedByKueue } - isResourceManagedByKueue indicates if the resource had executed on a Spoke Cluster
@@ -21,7 +21,7 @@ export const useMultiClusterProxyService = (options: UseMultiClusterProxyOptions
2121
TektonConfigModel,
2222
'config',
2323
);
24-
const isHub = loaded && tektonConfig?.spec?.role === 'hub';
24+
const isHub = loaded && !tektonConfig?.spec?.scheduler?.['multi-cluster-disabled'] && tektonConfig?.spec?.scheduler?.['multi-cluster-role']?.toLowerCase() === 'hub';
2525

2626
const isResourceManagedByKueue = isHub && (options?.managedBy === PIPELINE_RUN_MANAGED_BY_KUEUE_LABEL || (options?.labels && Object.keys(options?.labels).some(key => key.startsWith(KUEUE_LABEL_PREFIX))));
2727
return { isResourceManagedByKueue }

src/types/coreTekton.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ export interface Spec {
135135
pipeline: Pipeline;
136136
profile: string;
137137
pruner: Pruner;
138-
role?: string;
138+
scheduler?: Scheduler;
139139
targetNamespace: string;
140140
trigger: Trigger;
141141
}
@@ -154,3 +154,8 @@ export type TektonConfig = K8sResourceCommon & {
154154
spec: Spec;
155155
status: Status;
156156
};
157+
158+
export interface Scheduler {
159+
'multi-cluster-disabled': boolean;
160+
'multi-cluster-role': string
161+
}

0 commit comments

Comments
 (0)