From 8303869dd2f81d14e8a64fd1771b29cdbf2ae12b Mon Sep 17 00:00:00 2001 From: Jean-Marc Andre Date: Sat, 27 Feb 2021 13:14:35 +0100 Subject: [PATCH] No need for the Repository struct, a string is enough --- api/v1alpha1/backupconfiguration_types.go | 10 +-------- api/v1alpha1/zz_generated.deepcopy.go | 16 -------------- controllers/backupconfiguration_controller.go | 2 +- .../backupconfiguration_controller_test.go | 21 +++++++++++++++++++ controllers/backupsession_controller.go | 4 ++-- controllers/restoresession_controller.go | 4 ++-- test/02-backupconf.yaml | 3 +-- 7 files changed, 28 insertions(+), 32 deletions(-) create mode 100644 controllers/backupconfiguration_controller_test.go diff --git a/api/v1alpha1/backupconfiguration_types.go b/api/v1alpha1/backupconfiguration_types.go index 4756f71..858d704 100644 --- a/api/v1alpha1/backupconfiguration_types.go +++ b/api/v1alpha1/backupconfiguration_types.go @@ -21,14 +21,6 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) -// EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN! -// NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized. - -// Resource references a repsoitory where the backups will be stored -type Repository struct { - Name string `json:"name"` -} - type Step struct { Name string `json:"name"` Namespace string `json:"namespace"` @@ -74,7 +66,7 @@ type BackupConfigurationSpec struct { // Important: Run "make" to regenerate code after modifying this file // Foo is an example field of BackupConfiguration. Edit BackupConfiguration_types.go to remove/update - Repository `json:"repository"` + Repository string `json:"repository"` // +optional Suspend *bool `json:"suspend,omitempty"` diff --git a/api/v1alpha1/zz_generated.deepcopy.go b/api/v1alpha1/zz_generated.deepcopy.go index 172cf28..406c13d 100644 --- a/api/v1alpha1/zz_generated.deepcopy.go +++ b/api/v1alpha1/zz_generated.deepcopy.go @@ -104,7 +104,6 @@ func (in *BackupConfigurationList) DeepCopyObject() runtime.Object { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *BackupConfigurationSpec) DeepCopyInto(out *BackupConfigurationSpec) { *out = *in - out.Repository = in.Repository if in.Suspend != nil { in, out := &in.Suspend, &out.Suspend *out = new(bool) @@ -448,21 +447,6 @@ func (in *RepoStatus) DeepCopy() *RepoStatus { return out } -// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. -func (in *Repository) DeepCopyInto(out *Repository) { - *out = *in -} - -// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Repository. -func (in *Repository) DeepCopy() *Repository { - if in == nil { - return nil - } - out := new(Repository) - in.DeepCopyInto(out) - return out -} - // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *RestoreSession) DeepCopyInto(out *RestoreSession) { *out = *in diff --git a/controllers/backupconfiguration_controller.go b/controllers/backupconfiguration_controller.go index 416cfd2..041fe0b 100644 --- a/controllers/backupconfiguration_controller.go +++ b/controllers/backupconfiguration_controller.go @@ -171,7 +171,7 @@ func (r *BackupConfigurationReconciler) addSidecarContainer(backupConf *formolv1 repo := &formolv1alpha1.Repo{} if err := r.Get(context.Background(), client.ObjectKey{ Namespace: backupConf.Namespace, - Name: backupConf.Spec.Repository.Name, + Name: backupConf.Spec.Repository, }, repo); err != nil { log.Error(err, "unable to get Repo from BackupConfiguration") return err diff --git a/controllers/backupconfiguration_controller_test.go b/controllers/backupconfiguration_controller_test.go new file mode 100644 index 0000000..39bc31b --- /dev/null +++ b/controllers/backupconfiguration_controller_test.go @@ -0,0 +1,21 @@ +package controllers + +import ( + "context" + "reflect" + "time" + + . "github.com/onsi/ginkgo" + . "github.com/onsi/gomega" + batchv1 "k8s.io/api/batch/v1" + batchv1beta1 "k8s.io/api/batch/v1beta1" + v1 "k8s.io/api/core/v1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/types" + + formolv1alpha1 "github.com/desmo999r/formol/api/v1alpha1" +) + +var _ = Describe("BackupConfiguration controller", func() { + +}) diff --git a/controllers/backupsession_controller.go b/controllers/backupsession_controller.go index 41b308f..3188cc9 100644 --- a/controllers/backupsession_controller.go +++ b/controllers/backupsession_controller.go @@ -357,7 +357,7 @@ func (r *BackupSessionReconciler) CreateBackupJob(target formolv1alpha1.Target) repo := &formolv1alpha1.Repo{} if err := r.Get(ctx, client.ObjectKey{ Namespace: r.BackupConf.Namespace, - Name: r.BackupConf.Spec.Repository.Name, + Name: r.BackupConf.Spec.Repository, }, repo); err != nil { log.Error(err, "unable to get Repo from BackupConfiguration") return err @@ -415,7 +415,7 @@ func (r *BackupSessionReconciler) deleteExternalResources() error { repo := &formolv1alpha1.Repo{} if err := r.Get(ctx, client.ObjectKey{ Namespace: r.BackupConf.Namespace, - Name: r.BackupConf.Spec.Repository.Name, + Name: r.BackupConf.Spec.Repository, }, repo); err != nil { log.Error(err, "unable to get Repo from BackupConfiguration") return err diff --git a/controllers/restoresession_controller.go b/controllers/restoresession_controller.go index 2c2f0e1..8f5648f 100644 --- a/controllers/restoresession_controller.go +++ b/controllers/restoresession_controller.go @@ -92,7 +92,7 @@ func (r *RestoreSessionReconciler) CreateRestoreJob(target formolv1alpha1.Target repo := &formolv1alpha1.Repo{} if err := r.Get(ctx, client.ObjectKey{ Namespace: r.BackupConf.Namespace, - Name: r.BackupConf.Spec.Repository.Name, + Name: r.BackupConf.Spec.Repository, }, repo); err != nil { log.Error(err, "unable to get Repo from BackupConfiguration") return err @@ -221,7 +221,7 @@ func (r *RestoreSessionReconciler) CreateRestoreInitContainer(target formolv1alp repo := &formolv1alpha1.Repo{} if err := r.Get(ctx, client.ObjectKey{ Namespace: r.BackupConf.Namespace, - Name: r.BackupConf.Spec.Repository.Name, + Name: r.BackupConf.Spec.Repository, }, repo); err != nil { log.Error(err, "unable to get Repo from BackupConfiguration") return err diff --git a/test/02-backupconf.yaml b/test/02-backupconf.yaml index a758593..6b1659d 100644 --- a/test/02-backupconf.yaml +++ b/test/02-backupconf.yaml @@ -5,8 +5,7 @@ metadata: name: backup-demo namespace: demo spec: - repository: - name: repo-minio + repository: repo-minio schedule: "15 * * * *" targets: - kind: Deployment