|
1 | 1 | # DevWorkspace Operator Changelog |
| 2 | +# v0.39.0 |
| 3 | +## Features |
| 4 | +### Implement backup feature for DevWorkspaces [#1524](https://github.com/devfile/devworkspace-operator/issues/1524) |
| 5 | +An automated backup mechanism is now available for non-ephemeral DevWorkspaces. The backup feature can be configured through the DevWorkspaceOperatorConfig to periodically backup workspace `/project` content. |
| 6 | + |
| 7 | +The backup process: |
| 8 | +- Identifies stopped DevWorkspaces from a configurable time period |
| 9 | +- Creates a Job in the user's namespace to generate a container image containing `/projects` from the DevWorkspace's PVC |
| 10 | +- Pushes the backup image to an external image registry |
| 11 | + |
| 12 | +See [docs/additional-configuration.adoc](docs/additional-configuration.adoc) for configuration details. |
| 13 | + |
| 14 | +### Add the ability to configure custom init containers [#1559](https://github.com/devfile/devworkspace-operator/issues/1559) |
| 15 | +Cluster administrators can now configure custom init containers for DevWorkspaces in the DevWorkspaceOperatorConfig. |
| 16 | + |
| 17 | +Example use cases are: |
| 18 | +- Injecting custom configuration and tools into all workspaces |
| 19 | +- Setting up custom home directory logic and files |
| 20 | +- Ensuring CLI tools match cluster versions |
| 21 | +- Overriding the built-in `init-persistent-home` logic by providing a custom container with the same name |
| 22 | + |
| 23 | +Example configuration: |
| 24 | +```yaml |
| 25 | +apiVersion: controller.devfile.io/v1alpha1 |
| 26 | +kind: DevWorkspaceOperatorConfig |
| 27 | +metadata: |
| 28 | + name: devworkspace-operator-config |
| 29 | +config: |
| 30 | + workspace: |
| 31 | + initContainers: |
| 32 | + - name: install-tools |
| 33 | + image: custom-image:latest |
| 34 | + command: ["/bin/sh", "-c"] |
| 35 | + args: |
| 36 | + - | |
| 37 | + echo "Setting up custom tools" |
| 38 | + mkdir -p /home/user/custom-tools |
| 39 | +``` |
| 40 | +
|
| 41 | +### Add container resource caps enforcement [#1561](https://github.com/devfile/devworkspace-operator/issues/1561) |
| 42 | +Administrators can now set maximum resource limits and requests for workspace containers through the DevWorkspaceOperatorConfig. This prevents users from creating DevWorkspaces with excessive CPU or memory requirements. |
| 43 | +
|
| 44 | +Example configuration: |
| 45 | +```yaml |
| 46 | +apiVersion: controller.devfile.io/v1alpha1 |
| 47 | +kind: DevWorkspaceOperatorConfig |
| 48 | +metadata: |
| 49 | + name: devworkspace-operator-config |
| 50 | +config: |
| 51 | + workspace: |
| 52 | + containerResourceCaps: |
| 53 | + limits: |
| 54 | + cpu: "1" |
| 55 | + memory: 2Gi |
| 56 | + requests: |
| 57 | + cpu: "0.1" |
| 58 | + memory: 100Mi |
| 59 | +``` |
| 60 | +
|
| 61 | +When a container specifies resource requirements exceeding the caps, they will be limited to the configured maximum values. |
| 62 | +
|
| 63 | +## Bug Fixes & Improvements |
| 64 | +- Fix project clone image missing UID 1234 in /etc/passwd [#1560](https://github.com/devfile/devworkspace-operator/issues/1560) |
| 65 | +
|
2 | 66 | # v0.38.0 |
3 | 67 | ## Features |
4 | 68 | ### Improved debugging for failing postStart commands [#1538](https://github.com/devfile/devworkspace-operator/issues/1538) |
|
0 commit comments