Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions apis/controller/v1alpha1/devworkspaceoperatorconfig_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,18 @@ type CleanupCronJobConfig struct {
Schedule string `json:"schedule,omitempty"`
}

type BackupCronJobConfig struct {
// Enable determines whether backup CronJobs should be created for workspace PVCs.
// Defaults to false if not specified.
// +kubebuilder:validation:Optional
Enable *bool `json:"enable,omitempty"`
// Schedule specifies the cron schedule for the backup cron job.
// For example, "0 2 * * *" runs daily at 2 AM.
// +kubebuilder:default:="0 2 * * *"
// +kubebuilder:validation:Optional
Schedule string `json:"schedule,omitempty"`
}

type RoutingConfig struct {
// DefaultRoutingClass specifies the routingClass to be used when a DevWorkspace
// specifies an empty `.spec.routingClass`. Supported routingClasses can be defined
Expand Down Expand Up @@ -189,6 +201,8 @@ type WorkspaceConfig struct {
RuntimeClassName *string `json:"runtimeClassName,omitempty"`
// CleanupCronJobConfig defines configuration options for a cron job that automatically cleans up stale DevWorkspaces.
CleanupCronJob *CleanupCronJobConfig `json:"cleanupCronJob,omitempty"`
// BackupCronJobConfig defines configuration options for a cron job that automatically backs up workspace PVCs.
BackupCronJob *BackupCronJobConfig `json:"backupCronJob,omitempty"`
// PostStartTimeout defines the maximum duration the PostStart hook can run
// before it is automatically failed. This timeout is used for the postStart lifecycle hook
// that is used to run commands in the workspace container. The timeout is specified in seconds.
Expand Down
25 changes: 25 additions & 0 deletions apis/controller/v1alpha1/zz_generated.deepcopy.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading