Skip to content

Commit 1765b4c

Browse files
committed
feat: Use PVC name from config if provided
A backup job use a PVC name from a default value or from the config if user configured custom name. Signed-off-by: Ales Raszka <[email protected]>
1 parent 860219f commit 1765b4c

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

controllers/backupcronjob/backupcronjob_controller.go

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,6 @@ func (r *BackupCronJobReconciler) stopCron(logger logr.Logger) {
235235
func (r *BackupCronJobReconciler) executeBackupSync(ctx context.Context, dwOperatorConfig *controllerv1alpha1.DevWorkspaceOperatorConfig, logger logr.Logger) error {
236236
log := logger.WithName("executeBackupSync")
237237
log.Info("Executing backup sync for all DevWorkspaces")
238-
backUpConfig := dwOperatorConfig.Config.Workspace.BackupCronJob
239238
devWorkspaces := &dw.DevWorkspaceList{}
240239
err := r.List(ctx, devWorkspaces)
241240
if err != nil {
@@ -254,7 +253,7 @@ func (r *BackupCronJobReconciler) executeBackupSync(ctx context.Context, dwOpera
254253
dwID := dw.Status.DevWorkspaceId
255254
log.Info("Found DevWorkspace", "namespace", dw.Namespace, "devworkspace", dw.Name, "id", dwID)
256255

257-
if err := r.createBackupJob(&dw, ctx, backUpConfig, logger); err != nil {
256+
if err := r.createBackupJob(&dw, ctx, dwOperatorConfig, logger); err != nil {
258257
log.Error(err, "Failed to create backup Job for DevWorkspace", "id", dwID)
259258
continue
260259
}
@@ -309,13 +308,18 @@ func ptrInt32(i int32) *int32 { return &i }
309308
func ptrBool(b bool) *bool { return &b }
310309

311310
// createBackupJob creates a Kubernetes Job to back up the workspace's PVC data.
312-
func (r *BackupCronJobReconciler) createBackupJob(workspace *dw.DevWorkspace, ctx context.Context, backUpConfig *controllerv1alpha1.BackupCronJobConfig, logger logr.Logger) error {
311+
func (r *BackupCronJobReconciler) createBackupJob(workspace *dw.DevWorkspace, ctx context.Context, dwOperatorConfig *controllerv1alpha1.DevWorkspaceOperatorConfig, logger logr.Logger) error {
313312
log := logger.WithName("createBackupJob")
314313
dwID := workspace.Status.DevWorkspaceId
314+
backUpConfig := dwOperatorConfig.Config.Workspace.BackupCronJob
315315

316-
// Find a PVC with the name "claim-devworkspace"
316+
// Find a PVC with the name "claim-devworkspace" or based on the name from the operator config
317+
pvcName := "claim-devworkspace"
318+
if dwOperatorConfig.Config.Workspace.PVCName != "" {
319+
pvcName = dwOperatorConfig.Config.Workspace.PVCName
320+
}
317321
pvc := &corev1.PersistentVolumeClaim{}
318-
err := r.Get(ctx, client.ObjectKey{Name: "claim-devworkspace", Namespace: workspace.Namespace}, pvc)
322+
err := r.Get(ctx, client.ObjectKey{Name: pvcName, Namespace: workspace.Namespace}, pvc)
319323
if err != nil {
320324
log.Error(err, "Failed to get PVC for DevWorkspace", "id", dwID)
321325
return err

0 commit comments

Comments
 (0)