Skip to content

Commit 273e23a

Browse files
Ramen label follow-up changes
Signed-off-by: Abhijeet Shakya <[email protected]> Co-Authored-by: Raghavendra Talur <[email protected]>
1 parent d43a990 commit 273e23a

17 files changed

+47
-79
lines changed

internal/controller/cephfscg/cghandler.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import (
1111
"github.com/go-logr/logr"
1212
snapv1 "github.com/kubernetes-csi/external-snapshotter/client/v8/apis/volumesnapshot/v1"
1313
ramendrv1alpha1 "github.com/ramendr/ramen/api/v1alpha1"
14-
"github.com/ramendr/ramen/internal/controller/core"
1514
"github.com/ramendr/ramen/internal/controller/util"
1615
"github.com/ramendr/ramen/internal/controller/volsync"
1716
corev1 "k8s.io/api/core/v1"
@@ -119,7 +118,7 @@ func (c *cgHandler) CreateOrUpdateReplicationGroupDestination(
119118
},
120119
}
121120

122-
core.ObjectCreatedByRamenSetLabel(rgd)
121+
util.AddLabel(rgd, util.CreatedByRamenLabel, "true")
123122

124123
_, err := ctrlutil.CreateOrUpdate(c.ctx, c.Client, rgd, func() error {
125124
if err := ctrl.SetControllerReference(c.instance, rgd, c.Client.Scheme()); err != nil {
@@ -207,7 +206,7 @@ func (c *cgHandler) CreateOrUpdateReplicationGroupSource(
207206
},
208207
}
209208

210-
core.ObjectCreatedByRamenSetLabel(rgs)
209+
util.AddLabel(rgs, util.CreatedByRamenLabel, "true")
211210

212211
_, err = ctrlutil.CreateOrUpdate(c.ctx, c.Client, rgs, func() error {
213212
if err := ctrl.SetControllerReference(c.instance, rgs, c.Client.Scheme()); err != nil {

internal/controller/cephfscg/replicationgroupdestination.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import (
1313
"github.com/backube/volsync/controllers/statemachine"
1414
"github.com/go-logr/logr"
1515
ramendrv1alpha1 "github.com/ramendr/ramen/api/v1alpha1"
16-
"github.com/ramendr/ramen/internal/controller/core"
1716
"github.com/ramendr/ramen/internal/controller/util"
1817
"github.com/ramendr/ramen/internal/controller/volsync"
1918
corev1 "k8s.io/api/core/v1"
@@ -264,7 +263,7 @@ func (m *rgdMachine) CreateReplicationDestinations(
264263
}
265264

266265
util.AddLabel(rd, util.RGDOwnerLabel, m.ReplicationGroupDestination.Name)
267-
core.ObjectCreatedByRamenSetLabel(rd)
266+
util.AddLabel(rd, util.CreatedByRamenLabel, "true")
268267
util.AddAnnotation(rd, volsync.OwnerNameAnnotation, m.ReplicationGroupDestination.Name)
269268
util.AddAnnotation(rd, volsync.OwnerNamespaceAnnotation, m.ReplicationGroupDestination.Namespace)
270269

internal/controller/cephfscg/volumegroupsourcehandler.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import (
1313
vgsv1beta1 "github.com/kubernetes-csi/external-snapshotter/client/v8/apis/volumegroupsnapshot/v1beta1"
1414
vsv1 "github.com/kubernetes-csi/external-snapshotter/client/v8/apis/volumesnapshot/v1"
1515
ramendrv1alpha1 "github.com/ramendr/ramen/api/v1alpha1"
16-
"github.com/ramendr/ramen/internal/controller/core"
1716
"github.com/ramendr/ramen/internal/controller/util"
1817
"github.com/ramendr/ramen/internal/controller/volsync"
1918

@@ -127,7 +126,7 @@ func (h *volumeGroupSourceHandler) CreateOrUpdateVolumeGroupSnapshot(
127126
return err
128127
}
129128

130-
core.ObjectCreatedByRamenSetLabel(volumeGroupSnapshot)
129+
util.AddLabel(volumeGroupSnapshot, util.CreatedByRamenLabel, "true")
131130
util.AddLabel(volumeGroupSnapshot, util.RGSOwnerLabel, owner.GetName())
132131
util.AddAnnotation(volumeGroupSnapshot, volsync.OwnerNameAnnotation, owner.GetName())
133132
util.AddAnnotation(volumeGroupSnapshot, volsync.OwnerNamespaceAnnotation, owner.GetNamespace())
@@ -356,7 +355,7 @@ func (h *volumeGroupSourceHandler) RestoreVolumesFromSnapshot(
356355
return err
357356
}
358357

359-
core.ObjectCreatedByRamenSetLabel(restoredPVC)
358+
util.AddLabel(restoredPVC, util.CreatedByRamenLabel, "true")
360359
util.AddLabel(restoredPVC, util.RGSOwnerLabel, owner.GetName())
361360
util.AddAnnotation(restoredPVC, volsync.OwnerNameAnnotation, owner.GetName())
362361
util.AddAnnotation(restoredPVC, volsync.OwnerNamespaceAnnotation, owner.GetNamespace())
@@ -451,7 +450,7 @@ func (h *volumeGroupSourceHandler) CreateOrUpdateReplicationSourceForRestoredPVC
451450
return err
452451
}
453452

454-
core.ObjectCreatedByRamenSetLabel(replicationSource)
453+
util.AddLabel(replicationSource, util.CreatedByRamenLabel, "true")
455454
util.AddLabel(replicationSource, util.RGSOwnerLabel, owner.GetName())
456455
util.AddAnnotation(replicationSource, volsync.OwnerNameAnnotation, owner.GetName())
457456
util.AddAnnotation(replicationSource, volsync.OwnerNamespaceAnnotation, owner.GetNamespace())

internal/controller/core/labels.go

Lines changed: 0 additions & 22 deletions
This file was deleted.

internal/controller/drcluster_controller.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ import (
3131
csiaddonsv1alpha1 "github.com/csi-addons/kubernetes-csi-addons/api/csiaddons/v1alpha1"
3232
"github.com/go-logr/logr"
3333
ramen "github.com/ramendr/ramen/api/v1alpha1"
34-
"github.com/ramendr/ramen/internal/controller/core"
3534
"github.com/ramendr/ramen/internal/controller/util"
3635
)
3736

@@ -677,7 +676,7 @@ func (u *drclusterInstance) generateDRClusterConfig() (*ramen.DRClusterConfig, e
677676
},
678677
}
679678

680-
core.ObjectCreatedByRamenSetLabel(&drcConfig)
679+
util.AddLabel(&drcConfig, util.CreatedByRamenLabel, "true")
681680

682681
drpolicies, err := util.GetAllDRPolicies(u.ctx, u.reconciler.APIReader)
683682
if err != nil {
@@ -1464,7 +1463,7 @@ func generateNF(targetCluster *ramen.DRCluster) (csiaddonsv1alpha1.NetworkFence,
14641463
Cidrs: targetCluster.Spec.CIDRs,
14651464
},
14661465
}
1467-
core.ObjectCreatedByRamenSetLabel(&nf)
1466+
util.AddLabel(&nf, util.CreatedByRamenLabel, "true")
14681467

14691468
if err := fillStorageDetails(targetCluster, &nf); err != nil {
14701469
return nf, fmt.Errorf("failed to create network fence resource with storage detai: %w", err)

internal/controller/drplacementcontrol.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import (
2121
clrapiv1beta1 "open-cluster-management.io/api/cluster/v1beta1"
2222

2323
rmn "github.com/ramendr/ramen/api/v1alpha1"
24-
"github.com/ramendr/ramen/internal/controller/core"
2524
rmnutil "github.com/ramendr/ramen/internal/controller/util"
2625

2726
"sigs.k8s.io/controller-runtime/pkg/client"
@@ -1881,7 +1880,7 @@ func (d *DRPCInstance) newVRG(
18811880
},
18821881
}
18831882

1884-
core.ObjectCreatedByRamenSetLabel(&vrg)
1883+
rmnutil.AddLabel(&vrg, rmnutil.CreatedByRamenLabel, "true")
18851884

18861885
d.updateVRGOptionalFields(&vrg, vrgFromView, dstCluster)
18871886

internal/controller/drplacementcontrol_controller.go

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@ import (
1313
"golang.org/x/exp/slices"
1414

1515
"github.com/go-logr/logr"
16-
recipecore "github.com/ramendr/ramen/internal/controller/core"
16+
"github.com/google/uuid"
17+
core "github.com/ramendr/ramen/internal/controller/core"
1718
plrv1 "github.com/stolostron/multicloud-operators-placementrule/pkg/apis/apps/v1"
1819
k8serrors "k8s.io/apimachinery/pkg/api/errors"
1920
"k8s.io/apimachinery/pkg/api/meta"
@@ -1096,7 +1097,7 @@ func (r *DRPlacementControlReconciler) clonePlacementRule(ctx context.Context,
10961097

10971098
clonedPlRule := &plrv1.PlacementRule{}
10981099

1099-
recipecore.ObjectCreatedByRamenSetLabel(clonedPlRule)
1100+
rmnutil.AddLabel(clonedPlRule, rmnutil.CreatedByRamenLabel, "true")
11001101

11011102
userPlRule.DeepCopyInto(clonedPlRule)
11021103

@@ -1708,7 +1709,7 @@ func (r *DRPlacementControlReconciler) createPlacementDecision(ctx context.Conte
17081709
rmnutil.ExcludeFromVeleroBackup: "true",
17091710
}
17101711

1711-
recipecore.ObjectCreatedByRamenSetLabel(plDecision)
1712+
rmnutil.AddLabel(plDecision, rmnutil.CreatedByRamenLabel, "true")
17121713

17131714
owner := metav1.NewControllerRef(placement, clrapiv1beta1.GroupVersion.WithKind("Placement"))
17141715
plDecision.ObjectMeta.OwnerReferences = []metav1.OwnerReference{*owner}
@@ -2533,7 +2534,7 @@ func (r *DRPlacementControlReconciler) drpcProtectVMInNS(drpc *rmn.DRPlacementCo
25332534

25342535
// Both the DRPCs are associated with vm-recipe, and protecting VM resources.
25352536
// Support for protecting independent VMs
2536-
if drpcRecipeName == recipecore.VMRecipeName && otherDrpcRecipeName == recipecore.VMRecipeName {
2537+
if drpcRecipeName == core.VMRecipeName && otherDrpcRecipeName == core.VMRecipeName {
25372538
ramenOpsNS := RamenOperandsNamespace(*ramenConfig)
25382539

25392540
if drpc.Spec.KubeObjectProtection.RecipeRef.Namespace == ramenOpsNS &&
@@ -2549,25 +2550,25 @@ func (r *DRPlacementControlReconciler) twoVMDRPCsConflict(drpc *rmn.DRPlacementC
25492550
otherdrpc *rmn.DRPlacementControl,
25502551
) bool {
25512552
// "PROTECTED_VMS"
2552-
drpcVMList := sets.NewString(drpc.Spec.KubeObjectProtection.RecipeParameters[recipecore.VMList]...)
2553-
otherdrpcVMList := sets.NewString(otherdrpc.Spec.KubeObjectProtection.RecipeParameters[recipecore.VMList]...)
2553+
drpcVMList := sets.NewString(drpc.Spec.KubeObjectProtection.RecipeParameters[core.VMList]...)
2554+
otherdrpcVMList := sets.NewString(otherdrpc.Spec.KubeObjectProtection.RecipeParameters[core.VMList]...)
25542555

25552556
vmListConflict := drpcVMList.Intersection(otherdrpcVMList)
25562557

25572558
// Mark the latest drpc as unavailable if conflicting resources found
25582559

25592560
// "K8S_RESOURCE_LIST"
25602561
drpcK8SLabelSelector := sets.NewString(
2561-
drpc.Spec.KubeObjectProtection.RecipeParameters[recipecore.K8SLabelSelector]...)
2562+
drpc.Spec.KubeObjectProtection.RecipeParameters[core.K8SLabelSelector]...)
25622563
otherdrpcK8SLabelSelector := sets.NewString(
2563-
otherdrpc.Spec.KubeObjectProtection.RecipeParameters[recipecore.K8SLabelSelector]...)
2564+
otherdrpc.Spec.KubeObjectProtection.RecipeParameters[core.K8SLabelSelector]...)
25642565

25652566
k8sLabelSelectorConflict := drpcK8SLabelSelector.Intersection(otherdrpcK8SLabelSelector)
25662567
// "PVC_RESOURCE_LIST"
25672568
drpcPVCLabelSelector := sets.NewString(
2568-
drpc.Spec.KubeObjectProtection.RecipeParameters[recipecore.PVCLabelSelector]...)
2569+
drpc.Spec.KubeObjectProtection.RecipeParameters[core.PVCLabelSelector]...)
25692570
otherdrpcPVCLabelSelector := sets.NewString(
2570-
otherdrpc.Spec.KubeObjectProtection.RecipeParameters[recipecore.PVCLabelSelector]...)
2571+
otherdrpc.Spec.KubeObjectProtection.RecipeParameters[core.PVCLabelSelector]...)
25712572

25722573
pvcLabelSelectorConflict := drpcPVCLabelSelector.Intersection(otherdrpcPVCLabelSelector)
25732574

internal/controller/kubeobjects/velero/requests.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ import (
1616
"fmt"
1717

1818
"github.com/go-logr/logr"
19-
"github.com/ramendr/ramen/internal/controller/core"
2019
"github.com/ramendr/ramen/internal/controller/kubeobjects"
20+
"github.com/ramendr/ramen/internal/controller/util"
2121
velero "github.com/vmware-tanzu/velero/pkg/apis/velero/v1"
2222
corev1 "k8s.io/api/core/v1"
2323
k8serrors "k8s.io/apimachinery/pkg/api/errors"
@@ -469,7 +469,7 @@ func backupRequestCreate(
469469
labels,
470470
)
471471

472-
core.ObjectCreatedByRamenSetLabel(backupLocation)
472+
util.AddLabel(backupLocation, util.CreatedByRamenLabel, "true")
473473

474474
if err := w.objectCreate(backupLocation); err != nil {
475475
return backupLocation, nil, err

internal/controller/util/mcv_util.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import (
2121

2222
csiaddonsv1alpha1 "github.com/csi-addons/kubernetes-csi-addons/api/csiaddons/v1alpha1"
2323
rmn "github.com/ramendr/ramen/api/v1alpha1"
24-
"github.com/ramendr/ramen/internal/controller/core"
2524
viewv1beta1 "open-cluster-management.io/multicloud-operators-subscription/pkg/apis/view/v1beta1"
2625
ctrl "sigs.k8s.io/controller-runtime"
2726
)
@@ -423,7 +422,7 @@ func (m ManagedClusterViewGetterImpl) getOrCreateManagedClusterView(
423422
},
424423
}
425424

426-
core.ObjectCreatedByRamenSetLabel(mcv)
425+
AddLabel(mcv, CreatedByRamenLabel, "true")
427426

428427
err := m.Get(context.TODO(), key, mcv)
429428
if err != nil {

internal/controller/util/misc.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import (
1111

1212
"github.com/google/uuid"
1313
rmn "github.com/ramendr/ramen/api/v1alpha1"
14-
"github.com/ramendr/ramen/internal/controller/core"
1514
corev1 "k8s.io/api/core/v1"
1615
k8serrors "k8s.io/apimachinery/pkg/api/errors"
1716
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -33,6 +32,8 @@ const (
3332

3433
JobNameMaxLength = validation.DNS1123LabelMaxLength
3534
ServiceNameMaxLength = validation.DNS1123LabelMaxLength
35+
36+
CreatedByRamenLabel = "ramendr.openshift.io/created-by-ramen"
3637
)
3738

3839
type ResourceUpdater struct {
@@ -233,7 +234,7 @@ func CreateNamespaceIfNotExists(ctx context.Context, k8sClient client.Client, na
233234
if err != nil {
234235
if k8serrors.IsNotFound(err) {
235236
ns.Name = namespace
236-
core.ObjectCreatedByRamenSetLabel(ns)
237+
AddLabel(ns, CreatedByRamenLabel, "true")
237238

238239
err = k8sClient.Create(ctx, ns)
239240
if err != nil {

internal/controller/util/mw_util.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ import (
2525

2626
csiaddonsv1alpha1 "github.com/csi-addons/kubernetes-csi-addons/api/csiaddons/v1alpha1"
2727
rmn "github.com/ramendr/ramen/api/v1alpha1"
28-
"github.com/ramendr/ramen/internal/controller/core"
2928
ctrlutil "sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
3029
)
3130

@@ -595,7 +594,7 @@ func (mwu *MWUtil) newManifestWork(name string, mcNamespace string,
595594
},
596595
}
597596

598-
core.ObjectCreatedByRamenSetLabel(mw)
597+
AddLabel(mw, CreatedByRamenLabel, "true")
599598

600599
if annotations != nil {
601600
mw.ObjectMeta.Annotations = annotations

internal/controller/util/secrets_util.go

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import (
1313
"fmt"
1414

1515
"github.com/go-logr/logr"
16-
"github.com/ramendr/ramen/internal/controller/core"
1716
plrv1 "github.com/stolostron/multicloud-operators-placementrule/pkg/apis/apps/v1"
1817
corev1 "k8s.io/api/core/v1"
1918
k8serrors "k8s.io/apimachinery/pkg/api/errors"
@@ -296,7 +295,7 @@ func newS3ConfigurationSecret(s3SecretRef corev1.SecretReference, targetns strin
296295
},
297296
}
298297

299-
core.ObjectCreatedByRamenSetLabel(localsecret)
298+
AddLabel(localsecret, CreatedByRamenLabel, "true")
300299

301300
return localsecret
302301
}
@@ -330,7 +329,7 @@ func newVeleroSecret(s3SecretRef corev1.SecretReference, fromNS, veleroNS, keyNa
330329
},
331330
}
332331

333-
core.ObjectCreatedByRamenSetLabel(localsecret)
332+
AddLabel(localsecret, CreatedByRamenLabel, "true")
334333

335334
return localsecret
336335
}
@@ -411,7 +410,7 @@ func (sutil *SecretsUtil) createPolicyResources(
411410
}
412411

413412
plRuleBindingObject := newPlacementRuleBinding(plBindingName, namespace, plRuleName, subjects)
414-
core.ObjectCreatedByRamenSetLabel(plRuleBindingObject)
413+
AddLabel(plRuleBindingObject, CreatedByRamenLabel, "true")
415414

416415
if err := sutil.Client.Create(sutil.Ctx, plRuleBindingObject); err != nil && !k8serrors.IsAlreadyExists(err) {
417416
sutil.Log.Error(err, "unable to create placement binding", "secret", secret.Name, "cluster", cluster)
@@ -422,13 +421,13 @@ func (sutil *SecretsUtil) createPolicyResources(
422421
// Create a Policy object for the secret
423422
configObject := newConfigurationPolicy(configPolicyName,
424423
sutil.policyObject(secret.Name, namespace, targetNS, format, veleroNS))
425-
core.ObjectCreatedByRamenSetLabel(configObject)
424+
AddLabel(configObject, CreatedByRamenLabel, "true")
426425

427426
sutil.Log.Info("Initializing secret policy trigger", "secret", secret.Name, "trigger", secret.ResourceVersion)
428427

429428
policyObject := newPolicy(policyName, namespace,
430429
secret.ResourceVersion, runtime.RawExtension{Object: configObject})
431-
core.ObjectCreatedByRamenSetLabel(policyObject)
430+
AddLabel(policyObject, CreatedByRamenLabel, "true")
432431

433432
if err := sutil.Client.Create(sutil.Ctx, policyObject); err != nil && !k8serrors.IsAlreadyExists(err) {
434433
sutil.Log.Error(err, "unable to create policy", "secret", secret.Name, "cluster", cluster)
@@ -438,7 +437,7 @@ func (sutil *SecretsUtil) createPolicyResources(
438437

439438
// Create a PlacementRule, including cluster
440439
plRuleObject := newPlacementRule(plRuleName, namespace, []string{cluster})
441-
core.ObjectCreatedByRamenSetLabel(plRuleObject)
440+
AddLabel(plRuleObject, CreatedByRamenLabel, "true")
442441

443442
if err := sutil.Client.Create(sutil.Ctx, plRuleObject); err != nil && !k8serrors.IsAlreadyExists(err) {
444443
sutil.Log.Error(err, "unable to create placement rule", "secret", secret.Name, "cluster", cluster)

internal/controller/volsync/deploy_volsync.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import (
88
"fmt"
99

1010
"github.com/go-logr/logr"
11-
"github.com/ramendr/ramen/internal/controller/core"
11+
"github.com/ramendr/ramen/internal/controller/util"
1212
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
1313
"k8s.io/apimachinery/pkg/runtime/schema"
1414
"sigs.k8s.io/controller-runtime/pkg/client"
@@ -58,7 +58,7 @@ func reconcileVolSyncManagedClusterAddOn(ctx context.Context, k8sClient client.C
5858
Version: ManagedClusterAddOnVersion,
5959
Kind: ManagedClusterAddOnKind,
6060
})
61-
core.ObjectCreatedByRamenSetLabel(vsMCAO)
61+
util.AddLabel(vsMCAO, util.CreatedByRamenLabel, "true")
6262

6363
op, err := ctrlutil.CreateOrUpdate(ctx, k8sClient, vsMCAO, func() error {
6464
// Do not update the ManagedClusterAddOn if it already exists - let users update settings if required

0 commit comments

Comments
 (0)