Defining a common IDE
While the URL parameter for the IDE enables you to start a workspace with your personal choice of the supported IDE, you might find it more convenient to define the same IDE for all workspaces for the same source code Git repository. To do so, use the che-editor.yaml
file. This file supports even a detailed IDE configuration.
If you intend to start most or all of your organization’s workspaces with the same IDE other than Microsoft Visual Studio Code - Open Source, an alternative is for the administrator of your organization’s Che instance to specify another supported IDE as the default IDE at the Che instance level. This can be done with .spec.devEnvironments.defaultEditor in the CheCluster Custom Resource.
|
Setting up che-editor.yaml
By using the che-editor.yaml
file, you can set a common default IDE for your team and provide new contributors with the most suitable IDE for your project source code. You can also use the che-editor.yaml
file when you need to set a different IDE default for a particular source code Git repository rather than the default IDE of your organization’s Che instance.
-
In the remote Git repository of your project source code, create a
/.che/che-editor.yaml
file with lines that specify the relevant parameter.
-
Verify that the specified IDE loads in the browser tab of the started workspace.
Parameters for che-editor.yaml
The simplest way to select an IDE in the che-editor.yaml
is to specify the id
of an IDE from the table of supported IDEs:
IDE |
|
Note |
|
|
|
|
|
|
JetBrains IntelliJ IDEA Ultimate Edition (over JetBrains Gateway) |
|
|
id
selects an IDE from the plugin registryid: che-incubator/che-idea/latest
As alternatives to providing the id
parameter, the che-editor.yaml
file supports a reference
to the URL of another che-editor.yaml
file or an inline
definition for an IDE outside of a plugin registry:
reference
points to a remote che-editor.yaml
filereference: https://<hostname_and_path_to_a_remote_file>/che-editor.yaml
inline
specifies a complete definition for a customized IDE without a plugin registryinline:
schemaVersion: 2.1.0
metadata:
name: JetBrains IntelliJ IDEA Community IDE
components:
- name: intellij
container:
image: 'quay.io/che-incubator/che-idea:next'
volumeMounts:
- name: projector-user
path: /home/projector-user
mountSources: true
memoryLimit: 2048M
memoryRequest: 32Mi
cpuLimit: 1500m
cpuRequest: 100m
endpoints:
- name: intellij
attributes:
type: main
cookiesAuthEnabled: true
urlRewriteSupported: true
discoverable: false
path: /?backgroundColor=434343&wss
targetPort: 8887
exposure: public
secure: false
protocol: https
attributes: {}
- name: projector-user
volume: {}
For more complex scenarios, the che-editor.yaml
file supports the registryUrl
and override
parameters:
registryUrl
points to a custom plugin registry rather than to the default Che plugin registryid: <editor_id> (1)
registryUrl: <url_of_custom_plugin_registry>
1 | The id of the IDE in the custom plugin registry. |
override
of the default value of one or more defined properties of the IDE... (1)
override:
containers:
- name: che-idea
memoryLimit: 1280Mi
cpuLimit: 1510m
cpuRequest: 102m
...
1 | id: , registryUrl: , or reference: . |