JetBrains Space Help


A devfile lets you specify the IDE to use in a dev environment, JVM options (in case of IntelliJ-based IDEs), and the project root directory.

Specify a default IDE

You can use the following IDEs from JetBrains in a dev environment: Fleet, IntelliJ IDEA, WebStorm, PyCharm, RubyMine, CLion, GoLand, PhpStorm, and Rider *. To get information about available IDEs, Space uses the JetBrains Toolbox App update feed. You can view the available IDEs, IDE versions, and version release states (e.g., Release, EAP, and so on) on the dev environments administration page.

Using the space.editor parameters, you can specify a default IDE, IDE version, and version release state. Users can change any of these settings when creating a dev environment. When warming up a dev environment, Space will build IDE indexes for the IDE and IDE version specified in the devfile.

schemaVersion: 2.2.0 attributes: space: editor: # (Required) IDE type: Idea, WebStorm, PyCharm, # RubyMine, CLion, Fleet, GoLand, PhpStorm, Rider type: WebStorm version: '2022.1' # release state, e.g. Release or EAP updateChannel: Release

Default IDE version

If not specified in a devfile, the default IDE version is always the latest available release version. This is the organization-wide default. To change it, a user must have the Edit dev environments settings global permission (for example, this can be an administrator with the System Admin role).

To specify the default IDE version for organization dev environments

  1. Open Administration, then Dev Environments.

  2. Under Default IDE versions, find the required IDE and choose a new default version.

    Default IDE

Use JetBrains Rider in a dev environment

If you want to use a dev environment with JetBrains Rider, you must additionaly specify a path to the solution file. To specify the path, use the projectRoot parameter. For example:

schemaVersion: 2.2.0 attributes: space: editor: type: Rider version: '2022.1' # projectRoot is specified # relative to repository root projectRoot: projects/my-project/MySolution.sln

Configure JVM options for IntelliJ-based IDEs

In some cases, you might need to change the configuration of Java Virtual Machine (JVM) your IntelliJ-based IDE runs on. For example, increase the maximum memory heap size allocated for the IDE.

To specify the required JVM options, use the vmoptions list. For example, to set the initial and max memory heap size allocated for the IDE:

schemaVersion: 2.2.0 attributes: space: editor: type: WebStorm # the config appends to the default .vmoptions file vmoptions: - '-Xms2048m' - '-Xmx4096m'

After you push the updated devfile to the project repository, the specified JVM options will be applied only to newly created dev environments.

Specify the project root directory

After you start a dev environment, an IDE opens a project root directory. By default, the project root is the repository root. You can specify an alternative project root location (relative to the repository root) using the projectRoot parameter. This might be helpful for mono-repositories which include multiple projects.

Also note that all path parameters in a devfile (e.g., components[*].image.dockerfile.uri and components[*].image.dockerfile.buildContext) are specified relative to the project root.

# resulting project root: <path-to-repo>/server schemaVersion: 2.2.0 attributes: space: editor: type: Idea projectRoot: server
# projectRoot is not specified # resulting project root: <path-to-repo> schemaVersion: 2.2.0 attributes: space: editor: type: Idea
Last modified: 20 April 2023