mirror of
https://github.com/vmware-tanzu/velero.git
synced 2026-01-03 03:35:22 +00:00
Make configmapref check case insensitive (#6804)
* Make configmapref check case insensitive Signed-off-by: Anshul Ahuja <anshul.ahu@gmail.com> * update resourcemodfier test case to validate case Signed-off-by: Anshul Ahuja <anshulahuja@microsoft.com> --------- Signed-off-by: Anshul Ahuja <anshul.ahu@gmail.com> Signed-off-by: Anshul Ahuja <anshulahuja@microsoft.com> Co-authored-by: Anshul Ahuja <anshulahuja@microsoft.com>
This commit is contained in:
@@ -21,6 +21,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
snapshotv1api "github.com/kubernetes-csi/external-snapshotter/client/v4/apis/volumesnapshot/v1"
|
snapshotv1api "github.com/kubernetes-csi/external-snapshotter/client/v4/apis/volumesnapshot/v1"
|
||||||
@@ -476,7 +477,7 @@ func (b *backupReconciler) prepareBackupRequest(backup *velerov1api.Backup, logg
|
|||||||
request.Status.ValidationErrors = append(request.Status.ValidationErrors, "encountered labelSelector as well as orLabelSelectors in backup spec, only one can be specified")
|
request.Status.ValidationErrors = append(request.Status.ValidationErrors, "encountered labelSelector as well as orLabelSelectors in backup spec, only one can be specified")
|
||||||
}
|
}
|
||||||
|
|
||||||
if request.Spec.ResourcePolicy != nil && request.Spec.ResourcePolicy.Kind == resourcepolicies.ConfigmapRefType {
|
if request.Spec.ResourcePolicy != nil && strings.EqualFold(request.Spec.ResourcePolicy.Kind, resourcepolicies.ConfigmapRefType) {
|
||||||
policiesConfigmap := &corev1api.ConfigMap{}
|
policiesConfigmap := &corev1api.ConfigMap{}
|
||||||
err := b.kbClient.Get(context.Background(), kbclient.ObjectKey{Namespace: request.Namespace, Name: request.Spec.ResourcePolicy.Name}, policiesConfigmap)
|
err := b.kbClient.Get(context.Background(), kbclient.ObjectKey{Namespace: request.Namespace, Name: request.Spec.ResourcePolicy.Name}, policiesConfigmap)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ import (
|
|||||||
"io"
|
"io"
|
||||||
"os"
|
"os"
|
||||||
"sort"
|
"sort"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
@@ -376,7 +377,7 @@ func (r *restoreReconciler) validateAndComplete(restore *api.Restore) (backupInf
|
|||||||
}
|
}
|
||||||
|
|
||||||
var resourceModifiers *resourcemodifiers.ResourceModifiers = nil
|
var resourceModifiers *resourcemodifiers.ResourceModifiers = nil
|
||||||
if restore.Spec.ResourceModifier != nil && restore.Spec.ResourceModifier.Kind == resourcemodifiers.ConfigmapRefType {
|
if restore.Spec.ResourceModifier != nil && strings.EqualFold(restore.Spec.ResourceModifier.Kind, resourcemodifiers.ConfigmapRefType) {
|
||||||
ResourceModifierConfigMap := &corev1api.ConfigMap{}
|
ResourceModifierConfigMap := &corev1api.ConfigMap{}
|
||||||
err := r.kbClient.Get(context.Background(), client.ObjectKey{Namespace: restore.Namespace, Name: restore.Spec.ResourceModifier.Name}, ResourceModifierConfigMap)
|
err := r.kbClient.Get(context.Background(), client.ObjectKey{Namespace: restore.Namespace, Name: restore.Spec.ResourceModifier.Name}, ResourceModifierConfigMap)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
@@ -781,7 +781,8 @@ func TestValidateAndCompleteWithResourceModifierSpecified(t *testing.T) {
|
|||||||
Spec: velerov1api.RestoreSpec{
|
Spec: velerov1api.RestoreSpec{
|
||||||
BackupName: "backup-1",
|
BackupName: "backup-1",
|
||||||
ResourceModifier: &corev1.TypedLocalObjectReference{
|
ResourceModifier: &corev1.TypedLocalObjectReference{
|
||||||
Kind: resourcemodifiers.ConfigmapRefType,
|
// intentional to ensure case insensitivity works as expected
|
||||||
|
Kind: "confIGMaP",
|
||||||
Name: "test-configmap-invalid",
|
Name: "test-configmap-invalid",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user