Skip to content

Commit 5502ed0

Browse files
authored
feat: cluster- and access-request names (#134)
1 parent 729a9cf commit 5502ed0

File tree

2 files changed

+15
-5
lines changed

2 files changed

+15
-5
lines changed

lib/clusteraccess/clusteraccess.go

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -362,12 +362,16 @@ func (m *managerImpl) WithLogger(log *logging.Logger) Manager {
362362
return m
363363
}
364364

365-
func (m *managerImpl) CreateAndWaitForCluster(ctx context.Context, clusterName, purpose string,
365+
// CreateAndWaitForCluster creates a new ClusterRequest and AccessRequest, waits for it to be ready, and returns the created Cluster.
366+
// The name of the ClusterRequest and AccessRequest is derived from the controller name and the given localName.
367+
// For example, if a provider needs access to the onboarding cluster, it could use the localName "onboarding" (or "onboarding-init").
368+
// The resulting ClusterRequest and AccessRequest would then be named "<controllerName>--onboarding" (or "<controllerName>--onboarding-init").
369+
func (m *managerImpl) CreateAndWaitForCluster(ctx context.Context, localName, purpose string,
366370
scheme *runtime.Scheme, permissions []clustersv1alpha1.PermissionsRequest) (*clusters.Cluster, error) {
367371

368372
cr := &clustersv1alpha1.ClusterRequest{
369373
ObjectMeta: metav1.ObjectMeta{
370-
Name: clusterName,
374+
Name: StableRequestNameFromLocalName(m.controllerName, localName),
371375
Namespace: m.controllerNamespace,
372376
},
373377
}
@@ -742,6 +746,10 @@ func (m *accessRequestMutator) Mutate(accessRequest *clustersv1alpha1.AccessRequ
742746
// StableRequestName generates a stable name for a Cluster- or AccessRequest related to an MCP.
743747
// This basically results in '<lowercase_controller_name>--<request_name>'.
744748
func StableRequestName(controllerName string, request reconcile.Request) string {
749+
return StableRequestNameFromLocalName(controllerName, request.Name)
750+
}
751+
752+
func StableRequestNameFromLocalName(controllerName, localName string) string {
745753
controllerName = strings.ToLower(controllerName)
746-
return fmt.Sprintf("%s--%s", controllerName, request.Name)
754+
return fmt.Sprintf("%s--%s", controllerName, localName)
747755
}

lib/clusteraccess/clusteraccess_test.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,16 +293,18 @@ var _ = Describe("ClusterAccessManager", func() {
293293
interval = 20 * time.Millisecond
294294
)
295295

296+
requestName := clusteraccess.StableRequestNameFromLocalName(controllerName, clusterName)
297+
296298
clusterRequest := &clustersv1alpha1.ClusterRequest{
297299
ObjectMeta: metav1.ObjectMeta{
298-
Name: clusterName,
300+
Name: requestName,
299301
Namespace: controllerNamespace,
300302
},
301303
}
302304

303305
accessRequest := &clustersv1alpha1.AccessRequest{
304306
ObjectMeta: metav1.ObjectMeta{
305-
Name: clusterName,
307+
Name: requestName,
306308
Namespace: controllerNamespace,
307309
},
308310
}

0 commit comments

Comments
 (0)