Releases: eclipse-che/che
Eclipse Che 7.94.0
Major Enhancements
Allow configuring users namespaces with OpenShift template
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.
Allow configuring 2 GitLab OAuth providers simultaneously
Starting from this release, you can configure 2 Gitlab OAuth providers on a single Eclipse Che 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.
Notification when autoscaler kicks in during the workspaces startup
Starting from this release, if cluster autoscaler is provisioning a new worker node during CDE startup, you will be notified with a dedicated warning message:
Leverage the Openshift cluster-wide Custom CA Bundle configuration for CDEs
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 Eclipse Che.
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 a 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 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.
Adds JetBrains CLion and RubyMine IDEs to the User Dashboard
JetBrains CLion and RubyMine IDEs are available on the User Dashboard and accessible via JetBrains Gateway with this release.
Launching VS Code with selected default extensions installed
With this release, you can install default VS Code extensions using the combinations of the devfile postStart
event together with automount ConfigMap:
- id: add-default-extensions
exec:
# put your tooling container name here
component: runtime
commandLine: |
# download regular binary
curl https://open-vsx.org/api/atlassian/atlascode/3.0.10/file/atlassian.atlascode-3.0.10.vsix --location -o /tmp/atlassian.atlascode-3.0.10.vsix
curl https://open-vsx.org/api/snowflake/snowflake-vsc/1.9.1/file/snowflake.snowflake-vsc-1.9.1.vsix --location -o /tmp/snowflake.snowflake-vsc-1.9.1.vsix
events:
postStart:
- add-default-extensions
kind: ConfigMap
apiVersion: v1
metadata:
name: default-extensions
labels:
controller.devfile.io/mount-to-devworkspace: 'true'
controller.devfile.io/watch-configmap: 'true'
annotations:
controller.devfile.io/mount-as: env
data:
DEFAULT_EXTENSIONS: '/tmp/atlassian.atlascode-3.0.10.vsix;/tmp/snowflake.snowflake-vsc-1.9.1.vsix'
UI/UX enhancements of the editor tiles on the User Dashboard
The editor tiles displayed on the User Dashboard including the license and version information received a UI/UX enhancement:
Deprecated functionalities
Add the "Deprecated" Tag to the Intelij IDEA Community
With this release, the Intelij IDEA Community editor using JetBrains Projector in the background is deprecated.
Bug Fixes
Workspace details drop-down menu item is missing
The 'Workspace Details' drop-down menu item has been returned back to the navigation bar.
Unexpected warning message while try to start a workspace from a raw devfile
Previously, a sporadic warning message could show up during the CDE startup from the raw devfile.
The defect has been fixed in this release.
Healthz bad gateway when pod/service ip take time to propagate
Before this release, when the IP address of the CDE's service/pod took some time to be accessible, it would result in slow startup due to the inability to access the CDE's healthz
endpoint within a specific timeout. This defect has been fixed in this release.
Filter out "init-ssh-agent" from Visual Studio Code - Open Source ("Code - OSS") devfile task lists
Previously, the internal DWO-specific init-ssh-agent
task required for processing SSH passphrase was visible in Visual Studio Code - Open Source ("Code - OSS"). The defect has been fixed in this release.
Eclipse Che 7.93.0
Major Enhancements
Add option to deploy operands on the specific cluster nodes
With this release, you can deploy operands (dashboard, server, plugin-registry, etc.) on specific cluster nodes using the dedicated nodeSelector
and tolerations
CR properties:
dashboard:
deployment:
nodeSelector:
tolerations:
Ability to create the .gitconfig
file from the User Dashboard regardless of the authentication method setup on the cluster
You can now create or import the .gitconfig
file from the User Dashboard regardless of the authentication method setup on the cluster:
Screen.Recording.2024-09-26.at.13.10.06.mov
Before this release, it was not possible to create or import a .gitconfig
file if you were logged in via LDAP or local authentication. Instead, you had to manually create a dedicated configmap for the a .gitconfig
file in their namespace.
Endpoint-specific service for discoverable endpoints
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 instance, a service named http-python
will be generated in the example endpoint defined below:
# Example endpoint with discoverable attribute
- exposure: public
targetPort: 8080
name: http-python
protocol: http
secure: true
attributes:
discoverable: true
Documentation for a minimal set of permissions for deploying Eclipse Che on OpenShift
The official documentation defines minimal permissions for installing Eclipse Che on an OpenShift cluster using CLI or web console UI starting from this release.
Bug Fixes
JetBrains IDE-based CDE should not depend on Node.js presence in a user's container
Previously, the tools container of the Cloud Development Environment (CDE) required Node.js to serve the JetBrains IDEA server stub web page. This defect has been fixed in this release.
Dashboard does not show the editors tags
Previously, the editors tags were not correctly displayed on the User Dashboard. The defect has been fixed in this release:
Opening links doesn't work in Visual Studio Code - Open Source ("Code - OSS")
In the Visual Studio Code - Open Source ("Code - OSS") editor, clicking on links within welcome pages and project README files had no effect. This defect has been fixed in this release.
Temporary Storage switch does not work properly
Previously, the 'Temporary Storage' switch was not working correctly on the User Dashboard. The defect has been fixed in this release.
Workspace creation is stopped after clicking Continue in the 'Trust the repository authors' pop-up
Previously if the admin configured allowed URLs for Cloud Development Environments, 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.
The 'Untrusted Repository' pop-up re-appears when OAuth authorization is refused
Before this release, there was a known issue with OAuth authorization and the 'Untrusted Repository' pop-up. When you launched a factory with OAuth setup and refused the OAuth authorization prompt, the pop-up would reappear. The defect has been fixed in this release.
Workspace does not run after refusing OAuth authorization
Previously, if you refused the OAuth authorization the CDE would not start. The defect has been fixed in this release.
che-next-refused-oauth-ws-no-run.webm
Unexpected error message 'No IDE URL after 20 sec during workspace startup'
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.
Eclipse Che 7.92.0
Major Enhancements
Restricting the total number of the 'Running' workspaces on a cluster
With this release, you can restrict the total number of the 'Running' workspaces on a cluster using the maxNumberOfRunningWorkspacesPerCluster
CheCluster CR property.
Learn more about this feature in the official documentation and the demo video.
Specifying the list of the allowed sources based on which CDEs can be started
With this release, you can specify the list of URLs based on which Cloud Development Environments (CDEs) can be initialized using the dedicated optional allowedSources
CheCluster CR property:
"devEnvironments": {
"allowedSources": {
"urls": ["url_1", "url_2"]
}
NOTE: When using this property, if a particular URL is not allowed explicitly by the admin, users will not be able to initialize and create CDEs based on this source:
Learn more about this feature in the official documentation.
IntelliJ 'WebStorm' and 'PyCharm' editors for remote development using JetBrains Gateway
IntelliJ 'WebStorm' and 'PyCharm' editors for remote development using JetBrains Gateway are available on the User Dashboard:
Passphrase configuration for SSH keys
With this release, you can specify a passphrase while adding a new SSH key using the "SSH Keys" tab in the User Preferences:
Adding an option to deploy operands on specific cluster nodes
With this release, you can deploy operands managed by the operator (dashboard, gateway, plugin-registry etc.) on the specific cluster nodes using the dedicated nodeSelector
and tolerations
properties CR properties:
dashboard:
deployment:
nodeSelector:
tolerations:
Possibility to hide some of the default editors on the User Dashboard
With this release, you can conceal editor definitions. This is useful when an admin wants to hide particular editor(s) from the Dashboard UI, e.g. remove the IntelliJ and have only Visual Studio Code - Open Source visible.
Learn more about the procedure in the official documentation.
Allow starting existing workspaces even if GitHub is down
Before this release, if GitHub OAuth was configured and GitHub was down, you could not start existing CDEs from this source. The defect has been fixed in this release and existing CDE will be started even if the OAuth provider is down with a dedicated warning message shown during start:
Support devfile endpoint annotations
With this release, you can provide endpoint annotations in the devfile. For example, the following devfile snippet will create an ingress or route with the annotation foo: bar
on CDE startup:
components:
- container:
endpoints:
- name: my-endpoint
annotation:
foo: bar
...
Provide a way to set the runtime class for all CDE pods using CheCluster CR
The spec.devEnvironments.runtimeClassName
property has been added to the CheCluster CR. This property sets the spec.runtimeClassName
for all CDE pods. The controller.devfile.io/runtime-class
attribute for the CDE has precedence over the CheCluster spec.devEnvironments.runtimeClassName
property.
Ignore the 'FailedScheduling' event by default when starting a CDE
With the release, the FailedScheduling
event is the default value for the spec.devEnvironments.ignoredUnrecoverableEvents
property. This is beneficial when the cluster has an autoscaler configured. If a CDE pod cannot be scheduled on any node causing a FailedScheduling
event, the CDE startup will be retried when the new node is provisioned.
Bug Fixes
Dashboard is not available when using the CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
property
Previously there was a known issue affecting workspaces using Azure DevOps, Bitbucket or GitHub providers in connection with the CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
property. Every time you started a workspace, a new personal access token (PAT) was added and the previous one was not removed. When there were more than five existing PATs, you were not able to run the workspace, and the Dashboard was not available. The defect has been fixed in this release.
Previous CDEs error displayed during restart
Before this release, the error message from the previous start would sometimes be shown after the CDE restart which was confusing for the user:
The defect has been fixed in this release.
Eclipse Che 7.91.0
Bug Fixes
SSH key invalid when added from the dashboard by pasting the key strings
Previously, pasting SSH keys from the User Preferences page in the Che Dashboard caused an invalid format error when cloning a git repository. This issue has been fixed in this release.
Missing Podman when a volume is mounted to /home/user/.local
When a persistent volume mount had a mount path of /home/user/.local
, podman
was missing in the CDE's Universal Developer Image (UDI) container. This bug has been fixed in the latest UDI version.
Untrusted repository warnings
In certain scenarios, the "Do you trust the authors of this repository" warning modal was reappearing for CDE starts and clicking "Continue" on the warning modal did not immediately start the CDE. These issues have been fixed in this release.
Closed issues
Upgrade version of devfile/api to 2.3.0 #23041
Untrusted source warning should not be shown when start existed workspace #23106
The Untrusted Repository modal reappears when the workspace starts #23097
Workspace should be started when click Continue button on Untrusted source warning window #23107
fix: operator tests for DS che-operator#1886
fix: upgrade axios che-dashboard#1176
Upgrade axios version che-code#405
Update dependencies che-code#398
fix: Updating procedure for namespace provisioning in advance che-docs#2779
fix: safe-to-evict annotation value che-docs#2780
Use consistent capitalization in error messages devworkspace-operator#1092
Eclipse Che 7.90.0
Major Enhancements
Warning users that creating a CDE from an unknown source could be dangerous
With this release, when you start a CDE from a URL, you are asked if you trust the authors of the repository since creating a workspace from unknown or untrusted sources could be dangerous.
Advanced configuration options for the 'Import from Git' flow
Starting from this release, it is possible to configure the container image, temporary storage, memory and CPU limits when starting a CDE using the "Import from Git" flow:
Move stow / kubedoc and other internal features to the Universal Base Image
Kubedock, podman, fuse-overlayfs, buildah, and skopeo have been moved from the universal developer image to the universal base image. This makes the universal base image a minimal image containing prerequisites for Kubedock and container image building within Eclipse Che CDEs.
Add pod placement capabilities for devworkspace-webhook-server and make it more robust
With this release, the devworkspace-webhook-server deployment configuration options are available in the global DevWorkspaceOperatorConfig (DWOC) including: replicas, pod tolerations and nodeSelector.
These configuration options exist in the global DWOC's config.webhook
field:
apiVersion: controller.devfile.io/v1alpha1
kind: DevWorkspaceOperatorConfig
metadata:
name: devworkspace-operator-config
namespace: $OPERATOR_INSTALL_NAMESPACE
config:
routing:
clusterHostSuffix: 192.168.49.2.nip.io
defaultRoutingClass: basic
webhook:
nodeSelector: <string, string>
tolerations: <[]tolerations>
replicas: <int32>
Note: In order for the devworkspace-webhook-server configuration options to take effect:
- You must place them in the global DWOC, which has the name
devworkspace-operator-config
and exists in the namespace where the DevWorkspaceOperator is installed. If it does not already exist on the cluster, you must create it. - You must terminate the devworkspace-controller-manager pod and restart it so that the devworkspace-webhook-server deployment can be adjusted accordingly.
Additionally, the default replica count for the devworkspace-webhook-server deployment has been increased to 2 to increase availability.
Add DisableInitContainer field in the Custom Resource
The DisableInitContainer
field has been added to the CheCluster
CR. This field sets the config.workspaces.persistUserHome.disableInitContainer
field in the operator-owned DWOC
. This field whether the init container that initializes the persistent home directory should be disabled.
When the /home/user
directory is persisted, the init container is used to initialize the directory before the workspace starts. If set to true, the init container will not be created, delegating the home persistence setup to the CDE's first container component's entrypoint. This field is not used if the devEnvironments.persistUserHome.enabled
field is set to false.
The init container is enabled by default.
Deprecation and archivation of the 'che-devfile-registry' repository
The devfile registry hosted at registry.devfile.io is used by default for the Getting Started samples starting from the Eclipse Che 7.82.0. In this release, the Eclipse Che-specific che-devfile-registry repository has been archived and officially deprecated. For configuring the custom Getting-Started samples, the admin should leverage the dedicated k8s ConfigMap
.
Find more details in the official documentation.
Bug Fixes
Inconsistency in the behaviour of the $PATH environment variable within Devfile
Previously, when commands were executed using the command definition in the devfile, they had a different $PATH
compared to commands launched in containers defined within the components section. The defect has been fixed in this release.
User-provided environment variables can't reference $PROJECT_ROOT or $PROJECT_SOURCE
Previously, users were not able to reference the $PROJECT_ROOT
or $PROJECT_SOURCE
environment variables in their devfile environment variables. This issue has now been fixed in this release.
Workspace status flickering during startup
Previously, during a workspace startup, the status could have been unexpectedly changed to 'Stopped' even though the workspace started successfully. The defect has been fixed in this release, and the status changes are ignored during workspace startup.
Starting a new workspace with a clone of the specified branch doesn't work correctly if the repo doesn't have devfile.yaml
Previously, starting a new workspace with a clone of a specified branch didn't work correctly if the repository didn't have devfile.yaml
. Instead, the default branch was always cloned after the CDE startup. The defect has been fixed in this release.
Branch detection for Azure does not work on the User Dashboard
Before this release, branch detection for Azure repositories was not working on the User Dashboard. The defect has been fixed in this release:
AzureDevops Git repos with white spaces in the URL
Previously, creating a CDE based on an AzureDevops Git repository which contained a blank space or special character in the URL resulted in the following Error: Unsupported factory location: "<Azure DevOps Repo Link>"
. The defect has been fixed in this release.
Failed to create the workspace by factory from Github Enterprise server public repo if PAT or OAuth not configured
Before this release, creating a workspace from GitHub Enterprise public repositories that have no personal access token (PAT) or OAuth configured resulted in the following error: "Failed to create the workspace. Cannot build factory with any of the provided parameters. Please check parameters correctness, and resend query." The defect has been fixed in this release.
Workspace start page goes to cyclic reload if refresh token mode is applied
Previously, using the experimental CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
feature could result in the cyclic reload sequence during CDE startup. The defect has been fixed in this release.
Learn more about the CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
feature in the official documentation.
Invalidate previous tokens if refresh token mode is enabled
Previously, using the experimental CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
feature a new token was generated on each workspace start / restart, but the previous tokens were not removed. The defect has been fixed in this release.
Learn more about the CHE_FORCE_REFRESH_PERSONAL_ACCESS_TOKEN
feature in the official documentation.
Eclipse Che 7.89.0
Major Enhancements
Git Configuration from the User Dashboard
With this release, you can not only set the name
and email
for the Git Configuration but also to upload and edit the entire .gitconfig
file from the User Dashboard:
Support devWorkspace.ignoredUnrecoverableEvents in the CheCluster CustomResource
Starting from this release, you can set ignoredUnrecoverableEvents
explicitly on the CheCluster CustomResource level:
apiVersion: org.eclipse.che/v2
kind: CheCluster
spec:
devEnvironments:
ignoredUnrecoverableEvents:
- FailedScheduling
- FailedMount
More details about configuring ignoredUnrecoverableEvents
can be found in the official documentation.
Improved documentation for adding and removing extensions in the embedded Open VSX registry instance
Official documentation for adding and removing extensions in the embedded Open VSX registry instance has been sufficiently improved in this release which makes the procedure much more straight forward.
Bug Fixes
Allow Ports in Git Provider Endpoint for Personal Access Tokens
With this release, you can provide ports in the URL for Git Provider Endpoint
when adding Personal Access Tokens on the User Dashboard. Previously, it was not possible due to strict validation:
If persistHome is enabled, the token in .kube/config isn't renewed
Prior to this release, when the spec.devEnvironments.persistUserHome
option was enabled, the token in .kube/config
was not renewed automatically during a workspace restart.
You can find more details about automatic Kubernetes token injection in the official documentation
Keep projects when restarting a workspace from local devfile
Previously, PROJECTS_ROOT
and PROJECT_SOURCE
environment variables were not correctly set after using the Restart Workspace from Local Devfile
functionality. The defect has been fixed in this release.
Eclipse Che 7.88.0
Major Enhancements
Allow defining annotations for all pods in the Cloud Development Environment
With this release, you can define annotations for all Cloud Development Environment (CDE) pods using a dedicated CustomResource field:
apiVersion: org.eclipse.che/v2
kind: CheCluster
spec:
devEnvironments:
workspacesPodAnnotations:
cluster-autoscaler.kubernetes.io/safe-to-evict: false
Configuring custom editor definitions using a configmap
Previously, you could only configure custom editor definitions by modifying and rebuilding the Plugin Registry. Starting from this release, you can configure them by creating a dedicated ConfigMap
.
Learn more about this feature in the official documentation.
Enabling fuse-overlayfs
for all workspaces
Starting from this release, you can enable fuse-overlayfs
for all CDEs.
Learn more about this feature in the official documentation and the community blog post.
Meaningful dashboard warnings for namespace provisioning failures when auto-provisioning is disabled and the Advanced Authorization is enabled
With this release, the user experience during failures related to pre-configured Advanced Authorization is improved. When your access is denied, you will see a clear error message when accessing the User Dashboard:
Learn more about Advanced Authorization in the official documentation and community blog post.
Documentation for running containers with kubedoc
Official documentation for running containers from CDEs using kubedoc
is available in this release.
Always refresh OAuth tokens during workspace startup
A new experimental feature that forces a refresh of the OAuth access token during workspace startup has been added in this release.
Learn more about this feature in the official documentation.
Devfile 2.3.0 support
With this release, the new 2.3.0 schemaVersion
of the devfile is supported for the CDE definition:
schemaVersion: 2.3.0
metadata:
generateName: quarkus-api-example
attributes:
controller.devfile.io/storage-type: ephemeral
components:
- name: tools
container:
image: quay.io/devfile/universal-developer-image:ubi8-latest
env:
- name: QUARKUS_HTTP_HOST
value: 0.0.0.0
...
More details about version 2.3.0
are available in the official documentation.
Major Bug fixes
Support different user for SSH URLs
Previously, strict validation prevented workspace creation from URLs such as [email protected]:/home/user1/repositories/myrepo.git
:
The defect has been fixed in this release.
Dashboard Git Services tab duplicates status icon if two GitHub providers are configured
Prior to this release, if GitHub OAuth configuration secrets were set up for both SaaS and Enterprise, and if the authorization agreement was accepted for only one of the providers, the authorization status was duplicated for both providers on the Git Services
tab:
The defect has been fixed in this release.
Zombie processes remain in workspace container after a task is terminated
Before this release, you could encounter a lot of processes labeled <defunct>
in the workspace container while working in Visual Studio Code - Open Source ("Code - OSS"):
Environment variables are ignored and tasks fail
Prior to this release,GOPATH
and GOCACHE
environment variables were not correctly set when running dedicated commands defined in a devfile. This resulted in failed tasks, for tasks such as the go build
task. The defect has been fixed in this release.
Mounting files that conflict with stow
directory files causes failures during $HOME
directory persistence
Previously, mounting files using a ConfigMap, Secret, or PVC that conflict with stow
directory files resulted in the stow
command failure during the execution of the $HOME
directory persistence. The defect has been fixed in this release.
Fix 'Open in Preview' action for the Endpoints panel
Visual Studio Code - Open Source ("Code - OSS") actions related to endpoints were not working as expected:
The defect has been fixed in this release.
demo.mp4
Eclipse Che 7.87.0
Major Enhancements
Dashboard should switch to the tab with already running workspace
When you open a workspace from the User Dashboard, and a browser tab corresponding to the same workspace already exists, the switch to the browser tab happens automatically starting from this release. Previously a new browser tab was created whenever you tried opening a workspace from the User Dashboard:
Screen.Recording.2024-04-18.at.14.46.12.mov
Restart Workspace from Local Devfile command should be more informative when devfile is not valid
Starting from this release, if the 'Restart Workspace from Local Devfile' command is failing due to an invalid devfile, the error notification message is more informative and contains the exact reason for the failure:
Update dotnet from 6.0 to 8.0 in the Universal Developer Image
dotnet-sdk-8.0
is now available by default in the Universal Developer Image (UDI).
Documentation of the local desktop development experience with JetBrains Gateway
Official documentation of the local desktop development experience with JetBrains Gateway has been added in this release.
Deploy Eclipse Che on a virtual Kubernetes cluster
Official documentation for installing Eclipse Che on a virtual Kubernetes cluster has been added in this release.
Removal of the outdated editors
The following editors have been deprecated and removed in this release:
- che-incubator/che-pycharm/latest/devfile.yaml
- dirigiblelabs/dirigible/latest/devfile.yaml
- ws-skeleton/eclipseide/latest/devfile.yaml
- ws-skeleton/jupyter/latest/devfile.yaml
- cdr/code-server/latest/devfile.yaml
You can find more details can in the dedicated community mailing thread.
Major Bug fixes
Multiple "401 Unauthorized" errors when opening VS Code editor
From time to time, you could encounter multiple "401 Unauthorized" errors when opening a workspace with the Visual Studio Code - Open Source ("Code - OSS") editor. The defect has been fixed in this release.
Automatic 'podman login' with configured container registry not working
Previously, after configuring container registries (quay.io, docker.io, etc.) from the User Dashboard and starting a workspace, you were not automatically logged into the configured registries. The defect has been fixed in this release.
Provide edits on '.code-workspace' file
In this release, the parsing error of the .code-workspace
file that contains extra commas has been fixed:
{
"folders": [
{
"name": "che-code",
"path": "/projects/che-code",
},
]
}
An empty project is displayed in the editor's project tree
An empty project used to be displayed in the project tree of the Visual Studio Code - Open Source ("Code - OSS") editor, if several starter projects were defined in the devfile. The defect has been fixed in this release.
Eclipse Che 7.86.0
Major Enhancements
Exposed URL parameters on the 'Git Repo Options' panel on the User Dashboard
Git branch, remotes, and path to devfile URL parameters are now exposed on the 'Git Repo Options' panel of the User Dashboard:
Support raw devfile URLs without yaml
extension
Starting from this release, you can create workspaces from any URL that serves a valid devfile, such as in the following cases:
- https://registry.devfile.io/devfiles/ollama/1.0.0
- https://registry.devfile.io/devfiles/dotnet60/1.0.3
Add initContainer for initializing persistentHome when $HOME persistence is enabled
With this release, if you have $HOME persistence enabled, there is an initContainer
that runs the entrypoint
script and initializes persistentHome. This prevents a race condition from occurring.
Previously, the persistent user home setup occurred in the entrypoint of the tooling container. Notably, the entrypoint
was used to run stow
to make symbolic links for the home directory to be saved on the PVC. If a postStart event depends on files or edits files located in the home directory, there is a risk of a race condition caused by the post-start event running before the stow
execution is finished. To prevent this, the entrypoint
script must be completed before the postStart events run.
You can find more details about this enhancement in the demo video.
Major Bug fixes
Extension secrets are lost on workspace restart
Extension secrets for Visual Studio Code - Open Source ("Code - OSS") are no longer lost after workspace restart, but encrypted and persisted in the browser's local storage. This allows extensions like Ansible that use Visual Studio Code Secrets Storage API to persist the data between workspace restarts in the same browser.
Projects are not cloned after restarting the workspace using the 'Restart Workspace from Local Devfile' command
Before this release, extra projects added to the devfile from a workspace were not cloned if you restarted the workspace with the 'Restart Workspace from Local Devfile' command. With this release, the issue is fixed.
The dashboard pod frequently restarts with exitCode: 137
Previously, the dashboard pod might have been frequently restarting with exitCode: 137
due to a memory leak which has been fixed in this release.
Unable to resolve parent devfile when using self-signed certs in disconnected clusters
Previously, when you used self-signed certificates on an air-gapped cluster, starting a workspace that referenced a parent devfile by URI would fail with x509: certificate signed by unknown authority
error. The defect has been fixed in this release and you can now reference a parent devfile in disconnected clusters.
OAuthSecret stored in plain text
Before this release, when deployed on Kubernetes, oAuthClientSecret
was stored in plain text in the CheCluster resource. That was not convenient for the GitOps approach where the cluster state is stored in Git and managed by ArgoCD. Starting from this release, you can configure the values for oAuthClientSecret
by using ExternalSecrets to keep all sensitive data out of the code base.
The workspace status changed unexpectedly to 'Starting'
Previously during a workspace startup, the status could have unexpectedly changed to 'Starting':
The defect has been fixed in this release, and status changes (except 'Failed' and 'Terminating') are ignored during workspace startup.
Start workspace page showed warning message 'Status changed unexpectedly to 'Stopped' even though workspace started successfully
Previously, during a workspace startup, the status could have been unexpectedly changed to 'Stopped' even though the workspace started successfully:
The defect has been fixed in this release, and the status changes (except 'Failed' and 'Terminating') are ignored during workspace startup.
Workspace action menu remains open
Before this release, the action menu items such as 'Open' and 'Stop Workspace' remained open on the User Dashboard after you clicked them. With this release, the issue is fixed.
Error when starting a workspace with df
and override.devfileFilename
URL parameters from the dashboard
The defect related to the errors during a workspace startup with df
, override.devfileFilename
parameters has been fixed in this release:
PROJECTS_ROOT environment variable being set incorrectly at workspace startup
Previously, PROJECTS_ROOT environment variable was set incorrectly to /projects/projects
after workspace startup. The defect has been fixed in this release and the environment variable correctly points to the /projects
directory.
Screen.Recording.2024-04-25.at.16.30.11.mov
Tooling container $PATH is overridden
Before this release, process.env.PATH
was overridden by userShellEnv.PATH
environment variable.
With this release, the values of the process.env.PATH
and userShellEnv.PATH
environment variables are merged.
Right click not working after first try
Previously after right-clicking on something in the Visual Studio Code - Open Source ("Code - OSS") workspace, and choosing something from the context menu, right-click no longer popped up in the menu without refreshing the browser window. The defect has been fixed in this release and the context menu will now appear on every right click.
Eclipse Che 7.85.0
Major Enhancements
Automatic 'podman login' into external container registries
Starting from this release, podman login
is performed automatically during workspace startup for all container registries configured in the User Preferences
:
Note
For Red Hat OpenShift internal container registry image-registry.openshift-image-registry.svc:5000
, podman login
is performed automatically. No manual configuration is required.
Devfile v1 deprecation
With this release, devfile v1 is deprecated and is not supported anymore. Check Devfile.io documentation website for supported devfile versions.
Configuring single and multi-root workspaces in Visual Studio Code - Open Source ("Code - OSS")
The official documentation for configuring single and multi-root workspaces in Visual Studio Code - Open Source ("Code - OSS") has been added in this release.
Major Bug fixes
Dashboard URL is unavailable for a few seconds when pod is deleted and restarted
Previously, when a pod was restarted, the Dashboard URL could become unavailable for a short period of time during the operator update. The problem has been fixed in this release by adding the appropriate LivenessProbe
and ReadinessProbe
to the Gateway.
After revoking the OAuth application the 'Authorization' indicator is still active in the 'User Preferences' Dashboard
The defect related to the misleading status of the 'Authorization' indicator after OAuth revocation from the Dashboard has been fixed in this release.
Dashboard page is blank if DevWorkspace is missing controller.devfile.io/creator
label
Previously, if a DevWorkspace object was missing the controller.devfile.io/creator
label the User Dashboard displayed a blank page. The defect has been fixed in this release.