Dev Environment Configuration Guide
The guide describes who and on what level can configure particular dev environment settings.
Resources (CPU and memory)
Resources are configured via instance types:
A system administrator creates an instance type where they specify CPU and memory. Learn more
A namespace administrator assigns this instance type to a particular dev environment template. Learn more
A user creates a dev environment based on the template. Learn more
IDE
IDE and IDE version – a namespace administrator specifies the IDE and its version in a dev environment template. The list of available IDEs is defined by an IDE feed. The list of feeds can be adjusted by a system administrator. Learn more
IDE plugins – a namespace administrator can pre-install plugins to an IDE via a dev environment template. Learn more
VM options – a namespace administrator can pre-define VM options in a dev environment template. Learn more
IDE settings – project settings can be shared via the
.idea
directory. Users can share their personal IDE settings via the Settings Sync feature of the IDE. Learn more
OS, tools, and frameworks
A namespace administrator or a related user should create a custom Docker image with the required OS, tools, and frameworks (i.e., specify them in a Dockerfile
). The namespace administrator should then specify this image in a dev environment template. Learn more
Project dependencies
All binary dependencies stored in the project directory or the user directory (root
by default) must be installed by a namespace administrator via the warm-up feature or the On initialization lifecycle script.
Environment variables
A namespace administrator can set environment variables in:
A dev environment template. Learn more
A custom Docker image (Dockerfile). Learn more
A warm-up script. Learn more
A lifecycle script. Learn more
Sensitive data (credentials and tokens)
Sensitive data can be provided to a dev environment in two ways:
Personal parameters
A namespace administrator specifies the required environment variables or files (which are supposed to provide credentials or tokens) in a dev environment template. Dev environment users create the corresponding personal parameters in their account in CodeCanvas. When creating a dev environment, the user links the parameters to the required environment variables. Note: to provide sensitive parameters to a warm-up dev environment, a namespace administrator must use warm-up parameters. Learn more
Cloud policies
If a project requires access to some resource hosted in the cloud, a system administrator can create a cloud policy. Cloud policies let dev environments automatically authenticate in the cloud and access the required resources. Dev environment users don't need to provide any credentials or tokens. Learn more