Ce contenu n'est pas disponible dans la langue sélectionnée.
Chapter 5. Selecting a workspace IDE
The default in-browser IDE in a new workspace is Che Theia.
You can select another supported in-browser IDE by either method:
-
When you start a new workspace by visiting a URL, you can choose an IDE for that workspace by adding the
che-editorparameter to the URL. See Section 5.1, “Selecting an in-browser IDE for a new workspace by using a URL parameter”. -
You can specify an IDE in the
.che/che-editor.yamlfile of the Git repository for all new workspaces that will feature a clone of that repository. See Section 5.2, “Specifying an in-browser IDE for a Git repository by usingche-editor.yaml”.
| IDE | id | Note |
|---|---|---|
|
|
Default editor when the URL parameter or | |
|
| ||
|
|
5.1. Selecting an in-browser IDE for a new workspace by using a URL parameter Copier lienLien copié sur presse-papiers!
You can select your preferred in-browser IDE when starting a new workspace. This is the easiest way and it doesn’t affect your other workspaces or other users.
Procedure
- Include the URL parameter for the workspace IDE in the URL for starting a new workspace. See Section 2.2.2, “URL parameter for the workspace IDE”.
- Visit the URL in the browser. See Section 2.1, “Starting a new workspace with a clone of a Git repository”.
5.2. Specifying an in-browser IDE for a Git repository by using che-editor.yaml Copier lienLien copié sur presse-papiers!
5.2.1. Using the OpenShift Dev Spaces editor file to select an IDE Copier lienLien copié sur presse-papiers!
Use the che-editor.yaml file to define a default IDE for the project users. For a list of supported IDs, see Optional parameters for the URLs for starting a new workspace.
Procedure
-
Place the
che-editor.yamlfile in the.chefolder in the root directory of your project. In the
che-editor.yamlfile, specify the ID of the IDE you are selecting. For example:id: che-incubator/che-idea/latest
Additional resources
- Check the sample file sample here.
- Load experimental new IDEs from the default plug-in registry by using the IDs shown in che-editors.yaml.
5.2.2. Customizing IDE selection with the che-editor.yaml file Copier lienLien copié sur presse-papiers!
You can further customize your IDE selection to suit the specific needs of the project by adding various directives to the che-editor.yaml file. These customization options include following directives:
- Custom plug-in registry
- Web reference
- Embedded editor definition
5.2.3. Using a custom plug-in registry for your IDE Copier lienLien copié sur presse-papiers!
To include different IDEs than the default list in the OpenShift Dev Spaces plug-in registry, use an optional registryUrl directive.
Procedure
Set an optional
registryUrldirective in yourche-editor.yamlfile. For example:id: eclipse/che-theia/next # mandatory registryUrl: https://my-registry.com # optional override: # optional containers: - name: theia-ide memoryLimit: 1280Mi
5.2.4. Using a web reference for your IDE Copier lienLien copié sur presse-papiers!
Use a web reference for your IDE by pointing at a YAML file with the reference directive.
Procedure
Set a
referencedirective in yourche-editor.yamlfile. For example:reference: https://gist.github.com/.../che-editor.yaml # mandatory override: # optional containers: - name: theia-ide memoryLimit: 1280Mi
5.2.5. Using an embedded editor definition for your IDE Copier lienLien copié sur presse-papiers!
If you have specific requirements for your project that aren’t addressed by standard IDE behaviour, you can customize the project IDE by using the inline directive to put a complete IDE definition in the che-editor.yaml file.
Procedure
Set an
inlinedirective in yourche-editor.yamlfile. For example:inline: endpoints: - name: "theia" public: true targetPort: 3100 attributes: protocol: http type: ide secure: true cookiesAuthEnabled: true discoverable: false (...) containers: - name: theia-ide image: "quay.io/eclipse/che-theia:next" env: - name: THEIA_PLUGINS value: local-dir:///plugins volumeMounts: - name: plugins path: "/plugins" - name: theia-local path: "/home/theia/.theia" mountSources: true ports: - exposedPort: 3100 memoryLimit: "512M" cpuLimit: 1000m cpuRequest: 100m initContainers: - name: remote-runtime-injector image: "quay.io/eclipse/che-theia-endpoint-runtime-binary:next" volumeMounts: - name: remote-endpoint path: "/remote-endpoint" ephemeral: true env: - name: PLUGIN_REMOTE_ENDPOINT_EXECUTABLE value: /remote-endpoint/plugin-remote-endpoint - name: REMOTE_ENDPOINT_VOLUME_NAME value: remote-endpoint