Version Control Setup
Note to the security conscious #
DevZero's management plane never touches your source code. When you link your version control system to DevZero (w/ OAuth, etc), we store a token (encrypted at rest) within AWS Secrets Manager. This token is then handed to an agent running in the development environment (see What do you get?) when it needs to pull in your source code. After a developer acquires an environment, this token is removed from that environment and replaced with the developer's credentials.
This works differently for K8s, which utilizes the user's identity to clone source code.
We are happy to share our SOC2 Type II report upon request.
What is supported #
Connect DevZero to your company's version control system. We support:
- github.com or,
- self-hosted GitHub Enterprise Server
- gitlab.com or,
- self-hosted GitLab instance
How it works #
For GitHub connections, DevZero uses a GitHub application to clone source code onto your remote environments before a user has been associated with a machine. This enables engineers to launch a machine and have access to the source code without needing to separately clone the repos.
For GitLab connections, DevZero uses deploy tokens to clone source code onto your remote environments. These deploy tokens are configured per repository.
For GitHub and Gitlab connections
GitHub Connection #
If your source code is hosted on github.com you can enable DevZero for your GitHub organization by connecting on this page: https://console.devzero.io/settings/git-providers
Note this will need to be either initiated or approved by a GitHub organization owner.
GitHub Enterprise Server #
If you are using GitHub Enterprise Server you can enable the same functionality but will need to create a GitHub app for your instance and share the configuration, this is also available here: https://console.devzero.io/settings/git-providers
In order to clone source code you will need to add deploy tokens per repository.
GitLab Self-Hosted #
In order to configure GitLab to work with your self-hosted instance you will need to create an OAuth application and share the configuration. This is so your users can immediately commit code from the remote environments.