3.18.0 Release notes and known issues
3.18.0 Release notes and known issues for Red Hat OpenShift Dev Spaces 3.18
Abstract
Making open source more inclusive Copy linkLink copied to clipboard!
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 Copy linkLink copied to clipboard!
Red Hat OpenShift Dev Spaces provides web-based development environments on Red Hat OpenShift with an enterprise-level setup:
- Cloud Development Environments (CDE) server
- IDEs such as Microsoft Visual Studio Code - Open Source and JetBrains IntelliJ IDEA Community (Technology Preview)
- Containerized environments with popular programming languages, frameworks, and Red Hat technologies
Red Hat OpenShift Dev Spaces is well-suited for container-based development.
Red Hat OpenShift Dev Spaces 3.18 is based on Eclipse Che 7.95.
1.1. Supported platforms Copy linkLink copied to clipboard!
OpenShift Dev Spaces runs on OpenShift 4.14–4.17 on the following CPU architectures:
-
AMD64 and Intel 64 (
x86_64) -
IBM Z (
s390x) -
IBM Power (
ppc64le)
Additional resources
1.2. Support policy Copy linkLink copied to clipboard!
For Red Hat OpenShift Dev Spaces 3.18, Red Hat will provide support for deployment, configuration, and use of the product.
Additional resources
1.3. Differences between Red Hat OpenShift Dev Spaces and Eclipse Che Copy linkLink copied to clipboard!
There are some differences between Red Hat OpenShift Dev Spaces and the upstream project on which it is based, Eclipse Che:
- OpenShift Dev Spaces is supported only on Red Hat OpenShift.
- OpenShift Dev Spaces is based on Red Hat Enterprise Linux and is regularly updated to include the latest security fixes.
- OpenShift Dev Spaces provides getting-started samples supported in the air-gap mode with languages and technologies such as Quarkus, Lombok, NodeJS, Python, DotNet, Golang, and C/C++. Community samples are available at the Devfile registry page.
- OpenShift Dev Spaces uses OpenShift OAuth for user login and management.
Red Hat provides licensing and packaging to ensure enterprise-level support for OpenShift Dev Spaces.
Chapter 2. New features and enhancements Copy linkLink copied to clipboard!
2.1. Leverage the Openshift cluster-wide Custom CA Bundle configuration for CDEs Copy linkLink copied to clipboard!
Communications with external services are encrypted with TLS and require the certificates to be signed by trusted Certificate Authorities (CA). Therefore, all untrusted CA chains used by external services should be imported to Dev Spaces.
Starting from this release, labeled ConfigMaps from the installation namespace are used as sources for TLS certificates. The ConfigMaps can have an arbitrary amount of keys with an arbitrary amount of certificates each. The operator merges all ConfigMaps into a single one titled ca-certs-merged, and mounts it as a volume in the operands and Cloud Development Environment (CDE) pods.
By default, the operator mounts the ca-certs-merged ConfigMap in a user’s CDE at two locations: /public-certs and /etc/pki/ca-trust/extracted/pem. The /etc/pki/ca-trust/extracted/pem directory is where the system stores extracted CA certificates for trusted certificate authorities on Red Hat (e.g. CentOS, Fedora). CLI tools automatically use certificates from the system-trusted locations when the user’s CDE is up and running.
Learn more about the procedure in the official documentation.
Additional resources
2.2. Allow configuring two GitLab OAuth providers simultaneously Copy linkLink copied to clipboard!
Starting from this release, you can configure two Gitlab OAuth providers on a single Dev Spaces instance. This can be particularly useful when developers are working with codebases hosted on both GitLab SaaS and on-premises.
Learn more about the procedure in the official documentation.
Additional resources
2.3. Ability to create the .gitconfig file from the User Dashboard regardless of the authentication method setup on the cluster Copy linkLink copied to clipboard!
With this release, you can create or import the .gitconfig file from the User Dashboard regardless of the authentication method setup on the cluster.
Before this release, it was not possible to create or import the .gitconfig file if you were logged in via LDAP or local authentication. Instead, you had to manually create a dedicated config map for the .gitconfig file in their namespace.
Additional resources
2.4. Documentation for a minimal set of permissions for deploying Dev Spaces on OpenShift Copy linkLink copied to clipboard!
This official documentation defines minimal permissions for installing Dev Spaces on an OpenShift cluster using CLI or web console UI starting from this release.
Additional resources
2.5. Endpoint-specific service for discoverable endpoints Copy linkLink copied to clipboard!
When setting the discoverable: true attribute on a devfile container component endpoint, a dedicated service will be created and used for the endpoint. For all other endpoints that do not set the discoverable: true attribute, the common workspace service will be used.
The dedicated service created for the endpoint will have a static name, corresponding to the endpoint’s name. For example, a service named http-python will be generated in the example endpoint defined below:
Additional resources
2.6. Allow configuring users namespaces with OpenShift template Copy linkLink copied to clipboard!
With this release, you can leverage the OpenShift Template object and replicate the resources defined in it across the namespaces of all users, such as:
*LimitRange *ResourceQuota *NetworkPolicy *Role *RoleBinding
Learn more about the procedure in the official documentation.
Additional resources
2.7. Notification when autoscaler kicks in during workspace startup Copy linkLink copied to clipboard!
Starting from this release, if cluster autoscaler is provisioning a new worker node during Cloud Developer Environment (CDE) startup, you will be notified with a dedicated warning message.
Additional resources
2.8. Launching Visual Studio Code - Open Source ("Code - OSS") with selected default extensions installed Copy linkLink copied to clipboard!
With this release, you can install default Visual Studio Code - Open Source ("Code - OSS") extensions using the combinations of the devfile postStart event together with automount ConfigMap:
Additional resources
2.9. Security best practices for Dev Spaces Copy linkLink copied to clipboard!
With this release, the security best practices for Dev Spaces are available in the official documentation.
Additional resources
2.10. Warning message when tracker can not ping machine-exec Copy linkLink copied to clipboard!
When the activity tracker extension could not ping the idler service, there was no user-facing error message displayed. This could cause a situation where your Cloud Development Environment (CDE) is terminated due to the idler, even when you are actively using your CDE. With this release, an error notification warns you when the idler service cannot be reached.
Additional resources
2.11. Enabling fuse-overlayfs for all workspaces Copy linkLink copied to clipboard!
With this release, the Enabling fuse-overlayfs for all workspaces document is updated to include support for Podman 5.x.
Additional resources
2.12. Use UDI 9 as the default development image Copy linkLink copied to clipboard!
With this release, registry.redhat.io/devspaces/udi-rhel9 is used as the default development image. To override it, use the spec.devEnvironments.defaultComponents Custom Resource property:
Additional resources
Chapter 3. Bug fixes Copy linkLink copied to clipboard!
3.1. Temporary Storage switch does not work properly Copy linkLink copied to clipboard!
Previously, the 'Temporary Storage' switch was not working correctly on the User Dashboard. The defect has been fixed in this release.
Additional resources
3.2. Workspace creation is stopped after clicking Continue in the 'Trust the repository authors' pop-up Copy linkLink copied to clipboard!
Previously if the admin configured allowed URLs for Cloud Development Environments (CDEs), workspace creation was stopped after a user clicked on the 'Continue' button in the 'Trust the repository authors' pop-up. The defect has been fixed in this release.
Additional resources
3.3. Workspace does not run after refusing OAuth authorization Copy linkLink copied to clipboard!
Previously, if you refused the OAuth authorization the Cloud Development Environment (CDE) would not start. The defect has been fixed in this release.
Additional resources
3.4. Unexpected error message 'No IDE URL after 20 sec during workspace startup' Copy linkLink copied to clipboard!
Before this release, the error message could appear during a Cloud Development Environment (CDE) startup: 'No IDE URL after 20 sec during workspace startup'. The defect has been fixed in this release.
Additional resources
3.5. "Workspace Details" drop-down menu item is missing Copy linkLink copied to clipboard!
The "Workspace Details" drop-down menu item has been returned back to the navigation bar.
Additional resources
3.6. Launching a workspace using .devfile.yaml file from Gitlab repository hosted internally fails Copy linkLink copied to clipboard!
Before this release, it was not possible to create Cloud Development Environments (CDEs) from a .devfile.yaml within an internally hosted Gitlab repository. With this release, the issue is fixed.
Additional resources
Chapter 4. Technology Preview Copy linkLink copied to clipboard!
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 Copy linkLink copied to clipboard!
None.
Chapter 6. Removed functionalities Copy linkLink copied to clipboard!
None.
Chapter 7. Known issues Copy linkLink copied to clipboard!
7.1. Workspaces using ubi9-based image with no libbrotli library as a tools container can not start Copy linkLink copied to clipboard!
There is a known issue affecting workspaces that use a ubi-9-based image without libbrotli library as a tools container. If you start the workspace, the following error message appears: "Failed to open the workspace: The workspace status remains "Starting" in the last 300 seconds."
The time listed in the error message can vary.
Workaround
-
Use another ubi9-based image with
libbrotlilibrary, e.g. quay.io/devfile/universal-developer-image:ubi9-latest. -
Rebuild your custom ubi9-based image to include
libbrotlilibrary.
Additional resources
7.2. Git user.name and user.email not set up automatically Copy linkLink copied to clipboard!
There is a known issue affecting the automatic setup of Git user.name and user.email in the `gitconfig file after you configured your access token (PAT) or OAuth. If you open User Dashboard > Gitconfig page after PAT or OAuth configuration, you receive the following error message: "Author identity unknown." A workaround exists.
Workaround
-
Add git
user.nameanduser.email.manually in User Preferences > Gitconfig page.
Additional resources
7.3. Outdated Visual Studio Code - Open Source ("CODE - OSS") appears in workspaces created in previous Dev Spaces version Copy linkLink copied to clipboard!
There is a known issue affecting Visual Studio Code - Open Source ("CODE - OSS") after you upgrade Dev Spaces from version 3.17.0 to 3.18.0. If you open a workspace previously created from a sample in Dev Spaces 3.17.0, an old version (1.93.0) of Visual Studio Code appears in it instead of the new version (1.96.0).
There is currently no workaround available.
Additional resources
7.4. Refresh token mode causes cyclic reload of the workspace start page Copy linkLink copied to clipboard!
There is a known issue when experimental refresh token mode is applied using the CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN property for the GitHub and Microsoft Azure DevOps OAuth providers. This causes the workspace starts to reload the dashboard cyclically, creating a new personal access token on each page restart. The refresh token mode works correctly for 'GitLab' and 'BitBucket' OAuth providers.
Additional resources
7.5. FIPS compliance update Copy linkLink copied to clipboard!
There’s a known issue with FIPS compliance that results in certain cryptographic modules not being FIPS-validated. Below is a list of requirements and limitations for using FIPS with OpenShift Dev Spaces:
Required cluster and operator updates
Update your Red Hat OpenShift Container Platform installation to the latest z-stream update for 4.14, 4.15, 4.16, or 4.17 as appropriate. If you do not already have FIPS enabled, you will need to uninstall and reinstall.
Once the cluster is up and running, install OpenShift Dev Spaces 3.18 (3.18-36) and verify that the latest DevWorkspace operator bundle 0.32 (0.32-2) or newer is also installed and updated. See https://catalog.redhat.com/software/containers/devworkspace/devworkspace-operator-bundle/60ec9f48744684587e2186a3
Golang compiler in UDI image
The Universal Developer Image (UDI) container includes a golang compiler, which was built without the CGO_ENABLED=1 flag. The check-payload scanner ( https://github.com/openshift/check-payload ) will throw an error, but this can be safely ignored provided that anything you build with this compiler sets the correct flag CGO_ENABLED=1 and does NOT use extldflags -static or -tags no_openssl.
The resulting binaries can be scanned and should pass without error.
Statically linked binaries
You can find statically linked binaries not related to cryptography in these two containers:
- code-rhel8
- idea-rhel8.
As they are not related to cryptography, they do not affect FIPS compliance.
Helm support for FIPS
The UDI and Code containers includes the helm binary, which was not compiled with FIPS support. If you are in a FIPS environment do not use helm.
Kubedock support for FIPS
The UDI container includes the kubedock binary, which was not compiled with FIPS support. If you are in a FIPS environment do not use kubedock.
Additional resources
7.6. Debugger does not work in the .NET sample Copy linkLink copied to clipboard!
Currently, the debugger in Microsoft Visual Studio Code - Open Source does not work in the .NET sample.
Workaround
Use a different image from the following sources:
Additional resources
Chapter 8. Frequently asked questions Copy linkLink copied to clipboard!
- Is it possible to deploy applications from OpenShift Dev Spaces to an OpenShift cluster?
- OpenShift user token is automatically injected into workspace containers which makes it possible to run oc CLI commands against OpenShift cluster.
- 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?
- Only one OpenShift Dev Spaces instance can be deployed per cluster.
- Is it possible to install OpenShift Dev Spaces offline (that is, disconnected from the internet)?
- See Installing Red Hat OpenShift Dev Spaces in restricted environments on OpenShift.
- Is it possible to use non-default certificates with OpenShift Dev Spaces?
- You can use self-signed or public certificates. See Importing untrusted TLS certificates.
- Is it possible to run multiple workspaces simultaneously?
- See Enabling users to run multiple workspaces simultaneously.