Skip to content

Commit 142a502

Browse files
committed
Address Anatolii's comments
- Moving extraArgs to Oras config section - Unify default values - Change UBI base image - Use constant for the PVC name Signed-off-by: Ales Raszka <[email protected]>
1 parent 1e4e3fc commit 142a502

14 files changed

+124
-48
lines changed

apis/controller/v1alpha1/devworkspaceoperatorconfig_types.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,9 @@ type RegistryConfig struct {
8383
// as the DevWorkspaceOperatorCongfig.
8484
// +kubebuilder:validation:Optional
8585
AuthSecret string `json:"authSecret,omitempty"`
86+
}
8687

88+
type OrasConfig struct {
8789
// ExtraArgs are additional arguments passed to the oras CLI
8890
// +kubebuilder:validation:Optional
8991
ExtraArgs string `json:"extraArgs,omitempty"`
@@ -97,9 +99,12 @@ type BackupCronJobConfig struct {
9799
// RegistryConfig defines the registry configuration where backup images are stored.
98100
// +kubebuilder:validation:Required
99101
Registry *RegistryConfig `json:"registry,omitempty"`
102+
// OrasConfig defines additional configuration options for the oras CLI used to
103+
// push and pull backup images.
104+
OrasConfig *OrasConfig `json:"oras,omitempty"`
100105
// Schedule specifies the cron schedule for the backup cron job.
101-
// For example, "0 2 * * *" runs daily at 2 AM.
102-
// +kubebuilder:default:="0 2 * * *"
106+
// For example, "0 1 * * *" runs daily at 1 AM.
107+
// +kubebuilder:default:="0 1 * * *"
103108
// +kubebuilder:validation:Optional
104109
Schedule string `json:"schedule,omitempty"`
105110
}

apis/controller/v1alpha1/zz_generated.deepcopy.go

Lines changed: 20 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

controllers/backupcronjob/backupcronjob_controller.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -333,6 +333,10 @@ func (r *BackupCronJobReconciler) createBackupJob(
333333
log.Error(err, "Failed to get PVC for DevWorkspace", "id", dwID)
334334
return err
335335
}
336+
orasExtraArgs := ""
337+
if backUpConfig.OrasConfig != nil {
338+
orasExtraArgs = backUpConfig.OrasConfig.ExtraArgs
339+
}
336340

337341
job := &batchv1.Job{
338342
ObjectMeta: metav1.ObjectMeta{
@@ -365,7 +369,7 @@ func (r *BackupCronJobReconciler) createBackupJob(
365369
Value: "/workspace/" + workspacePath,
366370
},
367371
{Name: "DEVWORKSPACE_BACKUP_REGISTRY", Value: backUpConfig.Registry.Path},
368-
{Name: "ORAS_EXTRA_ARGS", Value: backUpConfig.Registry.ExtraArgs},
372+
{Name: "ORAS_EXTRA_ARGS", Value: orasExtraArgs},
369373
},
370374
Image: images.GetProjectBackupImage(),
371375
ImagePullPolicy: "Always",
@@ -461,7 +465,7 @@ func (r *BackupCronJobReconciler) getWorkspacePVCName(workspace *dw.DevWorkspace
461465
return pvcName, constants.DefaultProjectsSourcesRoot, nil
462466

463467
} else if _, ok := storageProvisioner.(*storage.CommonStorageProvisioner); ok {
464-
pvcName := "claim-devworkspace"
468+
pvcName := constants.DefaultWorkspacePVCName
465469
if dwOperatorConfig.Config.Workspace.PVCName != "" {
466470
pvcName = dwOperatorConfig.Config.Workspace.PVCName
467471
}

controllers/backupcronjob/backupcronjob_controller_test.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -320,8 +320,10 @@ var _ = Describe("BackupCronJobReconciler", func() {
320320
Enable: &enabled,
321321
Schedule: schedule,
322322
Registry: &controllerv1alpha1.RegistryConfig{
323-
Path: "fake-registry",
324-
ExtraArgs: "--exta-arg1",
323+
Path: "fake-registry",
324+
},
325+
OrasConfig: &controllerv1alpha1.OrasConfig{
326+
ExtraArgs: "--extra-arg1",
325327
},
326328
},
327329
},
@@ -350,7 +352,7 @@ var _ = Describe("BackupCronJobReconciler", func() {
350352
{Name: "WORKSPACE_ID", Value: "id-recent"},
351353
{Name: "BACKUP_SOURCE_PATH", Value: "/workspace/id-recent/projects"},
352354
{Name: "DEVWORKSPACE_BACKUP_REGISTRY", Value: "fake-registry"},
353-
{Name: "ORAS_EXTRA_ARGS", Value: "--exta-arg1"},
355+
{Name: "ORAS_EXTRA_ARGS", Value: "--extra-arg1"},
354356
}
355357
Expect(container.Env).Should(ContainElements(expectedEnvs), "container env vars should include vars neeeded for backup")
356358

deploy/bundle/manifests/controller.devfile.io_devworkspaceoperatorconfigs.yaml

Lines changed: 11 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

deploy/deployment/kubernetes/combined.yaml

Lines changed: 12 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

deploy/deployment/kubernetes/objects/devworkspaceoperatorconfigs.controller.devfile.io.CustomResourceDefinition.yaml

Lines changed: 12 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

deploy/deployment/openshift/combined.yaml

Lines changed: 12 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

deploy/deployment/openshift/objects/devworkspaceoperatorconfigs.controller.devfile.io.CustomResourceDefinition.yaml

Lines changed: 12 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

deploy/templates/crd/bases/controller.devfile.io_devworkspaceoperatorconfigs.yaml

Lines changed: 12 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)