Skip to content

Conversation

@Allda
Copy link
Collaborator

@Allda Allda commented Dec 11, 2025

The DevWorkspaceOperatorConfig was extended to enable the workspace backup process. This commits describes the feature and how to configure it.

What does this PR do?

What issues does this PR fix or reference?

Is it tested? How?

PR Checklist

  • E2E tests pass (when PR is ready, comment /test v8-devworkspace-operator-e2e, v8-che-happy-path to trigger)
    • v8-devworkspace-operator-e2e: DevWorkspace e2e test
    • v8-che-happy-path: Happy path for verification integration with Che

@Allda Allda force-pushed the backup-doc branch 2 times, most recently from 9ba5af5 to 0a800dc Compare December 11, 2025 14:20
The DevWorkspaceOperatorConfig was extended to enable the workspace
backup process. This commits describes the feature and how to configure
it.

Signed-off-by: Ales Raszka <araszka@redhat.com>
@openshift-ci
Copy link

openshift-ci bot commented Dec 11, 2025

@Allda: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/v14-che-happy-path f3e7717 link true /test v14-che-happy-path

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

The value provided for registry.path is only the first segment of the final location. The full registry path is assembled dynamically, incorporating the name of the workspace and the :latest tag, following this pattern:
`<registry.path>/<devworkspace-name>:latest`

- **`registry.authSecret`**: (Optional) The name of the Kubernetes Secret containing credentials to access the OCI registry. If not provided, it is assumed that the registry is public or uses integrated OpenShift registry.
Copy link
Contributor

@ibuziuk ibuziuk Dec 12, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


There are several configuration options to customize the logic:

### Integrated OpenShift container registry
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Integrated OpenShift container registry
### Integrated OpenShift container registry

Actually, disregard my previous comment, since it looks like this is an official naming - https://docs.redhat.com/en/documentation/openshift_container_platform/4.20/html/registry/registry-overview#openshift-registry-common-terms_registry-overview


**Note:** The `path` field must contain the URL to your OpenShift integrated registry given by the cluster.

Once the backup job is finished the backup archives will be available in the DevWorkspace namespace under a repository
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Once the backup job is finished the backup archives will be available in the DevWorkspace namespace under a repository
Once the backup job is finished, the backup archives will be available in the DevWorkspace namespace under a repository

with matching Devworkspace name.

### Regular OCI compatible registry
To use a regular OCI compatible registry for backups, you need to provide registry credentials. Depending on your
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To use a regular OCI compatible registry for backups, you need to provide registry credentials. Depending on your
To use a regular OCI-compatible registry for backups, you need to provide registry credentials. Depending on your

Once the backup job is finished the backup archives will be available in the DevWorkspace namespace under a repository
with matching Devworkspace name.

### Regular OCI compatible registry
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Regular OCI compatible registry
### Regular OCI-compatible registry


### Regular OCI compatible registry
To use a regular OCI compatible registry for backups, you need to provide registry credentials. Depending on your
RBAC policy the token can be provided via a secret in the operator namespace or in each DevWorkspace namespace.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
RBAC policy the token can be provided via a secret in the operator namespace or in each DevWorkspace namespace.
RBAC policy, the token can be provided via a secret in the operator namespace or in each DevWorkspace namespace.

Copy link
Contributor

@ibuziuk ibuziuk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great read, added a few minor suggestions

@openshift-ci
Copy link

openshift-ci bot commented Dec 12, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Allda, ibuziuk, rohanKanojia
Once this PR has been reviewed and has the lgtm label, please assign dkwon17 for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

**Note:** The `path` field must contain the URL to your OpenShift integrated registry given by the cluster.

Once the backup job is finished the backup archives will be available in the DevWorkspace namespace under a repository
with matching Devworkspace name.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
with matching Devworkspace name.
with a matching Devworkspace name.


```yaml
kind: DevWorkspaceOperatorConfig
apiVersion: controller.devfile.io/v1alpha1
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
apiVersion: controller.devfile.io/v1alpha1
apiVersion: controller.devfile.io/v1alpha1
metadata:
name: devworkspace-operator-config
namespace: $OPERATOR_INSTALL_NAMESPACE

schedule: '0 */4 * * *'
imagePullPolicy: Always
```
The `authSecret` must point to real Kubernetes Secret of type `kubernetes.io/dockerconfigjson` containing credentials to access the registry.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The `authSecret` must point to real Kubernetes Secret of type `kubernetes.io/dockerconfigjson` containing credentials to access the registry.
The `authSecret` must point to a real Kubernetes Secret of type `kubernetes.io/dockerconfigjson` containing credentials to access the registry.

Copy link
Collaborator

@dkwon17 dkwon17 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, just a couple of comments on my side


```yaml
apiVersion: controller.devfile.io/v1alpha1
kind: DevWorkspaceOperatorConfig
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
kind: DevWorkspaceOperatorConfig
kind: DevWorkspaceOperatorConfig
metadata:
name: devworkspace-operator-config
namespace: $OPERATOR_INSTALL_NAMESPACE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants