Release notes and known issues

Red Hat OpenShift Dev Spaces 3.3

Release notes and known issues for Red Hat OpenShift Dev Spaces 3.3

Robert Kratky

Fabrice Flore-Thébault

Red Hat Developer Group Documentation Team

Abstract

Information about new and noteworthy features as well as known issues in Red Hat OpenShift Dev Spaces 3.3.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. We are beginning with these four terms: master, slave, blacklist, and whitelist. Because of the enormity of this endeavor, these changes will be implemented gradually over several upcoming releases. For more details, see our CTO Chris Wright’s message.

Chapter 1. About Red Hat OpenShift Dev Spaces

Red Hat OpenShift Dev Spaces is a web-based integrated development environment (IDE). OpenShift Dev Spaces runs in OpenShift and is well-suited for container-based development.

OpenShift Dev Spaces provides:

  • an enterprise-level cloud developer workspace server
  • a browser-based IDE
  • ready-to-use developer stacks for popular programming languages, frameworks, and Red Hat technologies

Red Hat OpenShift Dev Spaces 3.3 is based on Eclipse Che 7.56.

1.1. Supported platforms

OpenShift Dev Spaces runs on OpenShift 4.10 and 4.11 on the following CPU architectures:

  • AMD64 and Intel 64 (x86_64)
  • IBM Power (ppc64le) and IBM Z (s390x)

1.2. Support policy

For Red Hat OpenShift Dev Spaces 3.3, Red Hat will provide support for deployment, configuration, and use of the product.

OpenShift Dev Spaces 3.3 has been tested on Chrome version 101.0.4951.54 (Official Build) (64-bit).

1.3. Differences between Eclipse Che and Red Hat OpenShift Dev Spaces

The main differences between OpenShift Dev Spaces and Eclipse Che are:

  • OpenShift Dev Spaces is built on RHEL8 to ensure the latest security fixes are included, compared to Alpine distributions that take a longer time to update.
  • OpenShift Dev Spaces uses OpenShift OAuth for user login and management.
  • OpenShift Dev Spaces provides a smaller supported subset of plug-ins compared to Che.
  • OpenShift Dev Spaces provides devfiles for working with other Red Hat technologies such as EAP and Fuse.
  • OpenShift Dev Spaces is supported on OpenShift Container Platform, OpenShift Dedicated, and Red Hat OpenShift Service on AWS (ROSA); Eclipse Che can also run on other Kubernetes clusters.

Red Hat provides licensing, packaging, and support. Therefore, OpenShift Dev Spaces is considered a more stable product than the upstream Eclipse Che project.

Chapter 2. New features and enhancements

2.1. New field in the CheCluster CR for configuring user namespace provision

This enhancement adds an autoProvision field to the CheCluster custom resource where OpenShift Dev Spaces administrators can disable automatic provisioning of user namespaces:

spec:
   components
   containerRegistry
   devEnvironments:
     defaultNamespace:
       autoProvision: true 1
1
true is the default.
Warning

If you set autoProvision to false, and a user does not already have a OpenShift Dev Spaces namespace, workspace creation will fail.

Additional resources

2.2. OpenShift Toolkit update

With this update, the OpenShift Toolkit extension for Microsoft Visual Studio Code - Open Source is updated to version 1.0.0, which provides support for odo 3.3.0.

Additional resources

2.3. Improved UX of Git-provider OAuth configuration

With this update, administrators can select OAuth application Secrets of their Git providers in the CheCluster Custom Resource and the OpenShift web console.

Additional resources

2.4. Microsoft Visual Studio Code - Open Source in restricted environments

With this update, you can use Microsoft Visual Studio Code - Open Source in workspaces in a restricted environment. To manage extensions, OpenShift Dev Spaces now includes a locally cached Open VSX Registry instance in the plugin registry pod.

Additional resources

2.5. Microsoft Visual Studio Code - Open Source is the default editor

In OpenShift Dev Spaces 3.3, the default editor in workspaces is Microsoft Visual Studio Code - Open Source IDE.

Tip

In Visual Studio Code - Open Source, commands defined in devfiles appear as workspace tasks. To execute these tasks, go to TerminalRun Task. Alternatively, F1 to open the Command Palette and type task to see a drop-down list of available tasks.

Additional resources

2.6. Updated options for the dsc server:delete CLI command

This enhancement updates the options for the dsc server:delete CLI command:

  • The --delete-all option removes the Dev Workspace Operator and the related resources.
  • The --delete-namespace option removes the OpenShift Dev Spaces namespace.

Additional resources

2.7. OpenShift Dev Spaces fetches latest devfile.yaml and che-editor.yaml in remote Git repositories

With this update, OpenShift Dev Spaces fetches the latest versions of the devfile.yaml and che-editor.yaml files in the remote Git repository when you use the URL for that repository to start a new workspace.

Additional resources

2.8. Updated Universal Developer Image

In OpenShift Dev Spaces 3.3, the Universal Developer Image (UDI) is updated as follows:

  • Improved Python 3.9 tooling support:

    • jq (JSON parsing) and yq (YAML parsing) have been included.
    • pytest has been added to the path (along with pylint and pip) for easier use.
  • The kamel binary has been removed.
Tip

To include other tools or runtimes, an administrator can extend, fork, or replace the UDI image with one that includes the tools appropriate for your organization and your users' needs. That replacement image can then be referenced in the CheCluster custom resource, so that users can use the custom image in their devfiles. This will ensure that the tools and runtimes they need are persistent and do not need to be installed on each workspace startup.

Users can also develop their own UDI image(s) and refer to them from their devfiles. This requires publishing the image to a registry that is accessible from their organization’s cluster. However, this approach is less centralized and standardized, and may not scale or perform as well.

Additional resources

2.9. Updates to the sample projects

In OpenShift Dev Spaces 3.3, the sample projects provided in the dashboard have changed as follows:

  • The .NET sample has been updated to run with .NET 7.
  • The Camel K sample has been removed.
  • The PHP DI sample has been removed.
  • The EAP 7.4 and EAP XP3 samples have been removed.

Additional resources

2.10. Updated documentation about the OpenShift Dev Spaces resource requirements

With this update, Calculating OpenShift Dev Spaces resource requirements has been improved to include CPU details and Microsoft Visual Studio Code - Open Source, which is the new default editor.

Additional resources

2.11. Overriding workspace Pod and container fields in a devfile

With this update, users can specify arbitrary fields and override any fields for the workspace Pod and containers in a devfile. This includes runtimeClassName, schedulerName, and such Kubernetes extended resources as nvidia.com/gpu. To do that, users can use the new pod-overrides and container-overrides attributes.

Additional resources

2.12. Start a workspace with no sample project from the dashboard

With this update, an Empty Workspace tile is available in the dashboard from which you can create an empty workspace. Such a workspace starts with your IDE of choice and the UDI image containing various tools and CLI applications for software development in Java, Python, Node.js, C/C++, PHP, .Net and other languages. Once opened, you can use the IDE in the workspace to clone a remote Git repository.

Additional resources

2.13. Improved workspace storage configuration options in the CheCluster CR

With this update, administrators can configure such options as storage class and size of workspaces in the CheCluster custom resource.

Additional resources

2.14. Self-signed certificate importing is now easier

This enhancement makes it easier for administrators to add a Git provider’s self-signed certificate in OpenShift Dev Spaces. See the steps to do so in Git with self-signed certificates.

Additional resources

2.15. Enabling container builds in the CheCluster CR

With this update, administrators can enable container builds by setting devEnvironments.disableContainerBuildCapabilities: true in the CheCluster custom resource. This enables users to run podman build on any workspace. Adding the attribute controller.devfile.io/scc: container-build in a devfile is no longer required.

Additional resources

2.16. Improved UX with invalid devfiles during workspace creation

With this update, OpenShift Dev Spaces displays a warning for users in the Creating a workspace page that the devfile in the remote Git repository is invalid. The warning offers users two options: Continue with the default devfile or Reload. This feature is particularly useful when a user is editing and testing a devfile.

Additional resources

2.17. Supported subdomain isolation for GitHub Enterprise Server

With this update, OpenShift Dev Spaces supports subdomain isolation for GitHub Enterprise Server customers. Administrators can enable subdomain isolation in the CheCluster custom resource:

spec:
  gitServices:
    github:
      - endpoint: 'https://github.com'
        secretName: github-oauth-config
        disableSubdomainIsolation: true

Additional resources

Chapter 3. Bug fixes

3.1. Support for .NET 7

As of OpenShift Dev Spaces 3.3, the .NET sample project has been reintroduced. It has been updated to run with .NET version 7.

Additional resources

3.2. Pulling container images from private container registries into workspaces

Before this update, workspaces failed to start when using a devfile that points to a private container registry. This failure occurred even though the user had added the registry in the Add Container Registry dialog in the dashboard’s User Preferences. With this update, you can start workspaces from a devfile that points to a container image in a private container registry. Before starting a workspace with such a devfile, you must add the registry in the Add Container Registry dialog in the dashboard’s User Preferences.

Additional resources

3.3. Fixed regression regarding /.vscode/ and /.che/ in cloned Git repositories

Before this update, a regression issue caused files in the /.vscode/ and /.che/ subfolders of the cloned remote Git repository to be ignored during workspace creation. This issue was only relevant to Git repositories that are hosted on GitHub, GitLab, or Bitbucket. With this update, files in these subfolders are fetched and processed during workspace creation.

Additional resources

3.4. Kubernetes Image Puller Operator failed because of the namespace

Before this update, having the CheCluster custom resource with spec.components.imagePuller.enable: true in the prod-namespace namespace resulted in Kubernetes Image Puller Operator failing due to an invalid OperatorGroup. That was causing the following error message: Operator failed OwnNamespace InstallModeType not supported, cannot configure to watch own namespace. With this update, this issue is resolved with Kubernetes Image Puller Operator creating a correct OperatorGroup with empty targetNamespaces.

Additional resources

3.5. dsc server:delete --delete-namespace might remove other Operators

Before this update, dsc server:delete --delete-namespace deleted any namespace in which the OpenShift Dev Spaces instance had been installed, even the openshift-operators namespace if inadvertently chosen during installation. Removal of the openshift-operators namespace might result in unintended removal of other installed Operators. With this update, the dsc server:delete command with the --delete-namespace option does not remove the openshift-operators namespace.

Note

The default namespace for OpenShift Dev Spaces is openshift-devspaces. The dsc CLI tool installs OpenShift Dev Spaces in the correct namespace by default. To correctly install OpenShift Dev Spaces in the OpenShift web console, see the administration guide.

Additional resources

3.6. Missing error message when workspaces failed to start due to quotas

Before this update, no error message was shown a when workspace failed to start due to a Kubernetes quota. With this update, the error is successfully displayed during workspace startup when OpenShift Dev Spaces is unable to create a workspace Pod because of an insufficient quota in the user namespace.

Additional resources

3.7. Error in the gitconfig file when using a Git provider’s self-signed TLS certificate

Before this update, workspace creation failed on OpenShift Dev Spaces if an administrator had configured to trust a Git provider’s self-signed TLS certificate with a che-git-self-signed-cert ConfigMap that lacked a githost section. The resulting /etc/gitconfig file contained a malformed http directive that didn’t match any URL. With this update, this issue is resolved, and the /etc/gitconfig file contains an [http] line as expected.

Additional resources

3.8. Improved UX of starting new workspaces with name conflicts

Before this update, starting a workspace with a name that was in use for another workspace resulted in the Creating a workspace page showing a Failed to create a workspace error message. With this update, the Creating a workspace page warns users of an Existing workspace found and prompts users to Open the existing workspace or Create a new workspace.

Additional resources

Chapter 4. Technology preview

Technology Preview features provide early access to upcoming product innovations, enabling you to test functionality and provide feedback during the development process. However, these features are not fully supported under Red Hat Subscription Level Agreements, may not be functionally complete, and are not intended for production use. As Red Hat considers making future iterations of Technology Preview features generally available, we will attempt to resolve any issues that customers experience when using these features. See: Technology preview support scope.

None.

Chapter 5. Deprecated functionalities

5.1. Planned deprecation of the Eclipse Theia editor in OpenShift Dev Spaces

In the next release, OpenShift Dev Spaces 3.4, the Eclipse Theia editor will be deprecated and its extensions will no longer be maintained. Eclipse Theia will be removed in a later release of OpenShift Dev Spaces. Red Hat will no longer provide bug fixes and support for Eclipse Theia in OpenShift Dev Spaces but will provide security fixes until its removal from OpenShift Dev Spaces. Although your users can continue to optionally use Eclipse Theia until its removal, you must prepare to migrate your users to Visual Studio Code - Open Source, which is introduced as the new default editor with air gap support in OpenShift Dev Spaces 3.3.

Additional resources

Chapter 6. Removed functionalities

6.1. Removed devfile samples

In OpenShift Dev Spaces 3.3, the following devfile samples have been removed:

  • Java 11 with JBoss EAP 7.4
  • Java 11 with JBoss EAP XP 3.0
  • Apache Camel K
  • PHP DI

Bug fixes and support are provided only through the end of the OpenShift Dev Spaces 3.2 lifecycle.

Additional resources

Chapter 7. Known issues

7.1. Cloning private Git repositories is failing for specified Git revisions

There is currently a known issue when starting workspaces that clone private Git repositories. After successfully cloning and reading the remote Git repository, the project-clone container fails to checkout a specified Git revision, for example a feature branch or PR branch. As a result of this error, the remote Git repository is cloned into a temporary directory named project-clone-<random_characters>.

Note

In OpenShift Dev Spaces, users have two ways to specify a Git revision for a new workspace:

  • By adding a checkoutFrom section in the devfile.
  • By visiting or entering the URL of a feature branch or pull request in the browser or in the OpenShift Dev Spaces dashboard.

Workaround

  • If you are using a checkoutFrom section in the devfile, then do as follows:

    1. Before starting a new workspace, remove or comment out the checkoutFrom section from the devfile.
    2. After the repository is cloned, switch to the desired revision.
  • If you are using the URL of a feature branch or pull request to start a new workspace, then do as follows:

    1. When starting a new workspace, enter the URL of the repository without any branch syntax.
    2. After the repository is cloned, switch to the desired revision.

Additional resources

7.2. Java Gradle sample fails in restricted environments

Currently, there is a known issue with the Java Gradle sample in restricted environments. Running the 1-build command to build an application might result in the FAILURE: Build failed with an exception error and failure to load a native library or not resolving a plug-in artifact in plug-in repositories. There is currently no workaround for this issue.

Additional resources

Chapter 8. Frequently asked questions

Is it possible to deploy applications to an OpenShift cluster from OpenShift Dev Spaces?
Yes. The user must log in to the OpenShift cluster from their running workspace using oc login.
For best performance, what is the recommended storage to use for Persistent Volumes used with OpenShift Dev Spaces?
Use block storage.
Is it possible to deploy more than one OpenShift Dev Spaces instance on the same cluster?
It is not recommended. This feature is subject to removal in a future release.
Is it possible to install OpenShift Dev Spaces offline (that is, disconnected from the internet)?
Yes. See Installing Red Hat OpenShift Dev Spaces in restricted environments on OpenShift.
Is it possible to use non-default certificates with OpenShift Dev Spaces?
Yes, you can use self-signed or public certificates. See Importing untrusted TLS certificates.
Is it possible to run multiple workspaces simultaneously?
Yes. See Enabling users to run multiple workspaces simultaneously.
What specific changes have been implemented for IBM Power Systems?

The memory limit for some plug-ins has been increased, to give Pods sufficient RAM to run.

Table 8.1. Example memory limits differences between IBM Power System and other architectures

Plug-inIBM Power SystemOther architectures

Che-Theia editor

2G

512M

OpenShift connector

2.5G

1.5G

Legal Notice

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.