Launch Gitpod workspace from GitLab

Native GitLab Integration

By Cornelius Ludmann, Sven Efftinge Tuesday, October 6, 2020

At Gitpod we want to make developers’ lives easier. Starting automated dev environments for your daily coding tasks is already very easy: Just prefix your repository URL with gitpod.io/# and you are ready to go. To make this even better, you can install a browser extension which adds a convenient button to any GitLab, GitHub, or Bitbucket repository that lets you launch a Gitpod workspace with one click.

Recently we asked ourselves how we could streamline the integration with your daily routine even more. Today, we are super excited to share that we’ve partnered with GitLab and built a native Gitpod integration in GitLab’s UI.

The last missing piece in your GitLab DevOps pipeline

GitLab is one of the most popular DevOps tools/platforms out there, used by more than 100,000 organizations across the globe. Through its Web IDE, simple edits can already be made today from within the application. However, for more advanced programming tasks, developers require a full development environment.

Such dev environments not only include a professional IDE/editor with all the convenient plugins for the project at hand, but also things like compilers, build tools, code generators, databases, and application servers.

Until now GitLab users would set up and maintain a single dev environment on their local machines. It’s time to free engineers from wasting their time with such tedious tasks and apply the lessons learned from CI/CD and infrastructure as code to dev environments.

Why not automate the provisioning of dev environments? Teams should be able to spin up fresh environments for each new task without waiting or any manual steps involved.

GitLab and Gitpod started a partnership to bring Gitpod’s ready-to-code dev environments to GitLab. As a first result of this collaboration you can now launch cloud-based dev environments with one click directly from gitlab.com (even without the Gitpod browser extension).

Gitpod button on GitLab project page

“Everyone can contribute”

GitLab’s credo “Everyone can contribute” is a perfect fit for Gitpod because contributing becomes much simpler when you allow anyone to spin up a ready-to-code development environment in a few seconds.

GitLab’s engineers have worked on lowering the barrier to contributions on GitLab itself through a comprehensive contribution guide and even a GitLab Development Kit (GDK) that sets up your dev environment on your machine. But still, running the GDK installer takes at least 30 minutes to download and install dependencies, clone the GitLab repository, and start all services you need like the database, a webserver, etc.

We are currently helping the GitLab team to build a fully-automated Gitpod configuration for the GitLab source code. This makes contributing to the GitLab source code itself as easy as clicking a button. Instead of waiting half an hour for a bunch of libs and tools to get installed, with Gitpod you are productive within just a few minutes. Once this configuration is merged, you will be able to just click on the Gitpod button of the GitLab repository, and everything will be set up for your first GitLab contribution.

GitLab integration quote

Hook up your GitLab Self-Managed with Gitpod.io

The Gitpod integration is already live on gitlab.com today and is going to be part of GitLab 13.5 which is released on October 22nd. At that point, you’ll be able to connect your GitLab self-managed installation to gitpod.io, through a new feature that lets you register additional Git providers.

Furthermore, you can self-host Gitpod (which is open source) on your own Kubernetes cluster and configure it with your GitLab instance. We have convenient installation scripts for GCP and AWS.

What’s next?

We are continuously working on improving the GitLab integration and implementing new features for GitLab users (e.g. managing merge requests within Gitpod, adding a Gitpod button on Merge Requests, etc.). You can also install the GitLab VS Code Extension in Gitpod to interact with GitLab. Just go to the Extensions view (in the left vertical menu), search for “GitLab” and choose “Install”.

Gitpod button on GitLab project page

Try the Gitpod integration now!

The GitLab integration is available at GitLab.com and in your self-managed GitLab soon. Don’t have a project at hand? Try the demo project Spring PetClinic which has a proper Gitpod configuration committed.

You are a passionate GitLab user? Please share your experiences with the Gitpod integration with us! Visit our community forum at community.gitpod.io, report bugs in the Gitpod repository, or send us an e-mail at support@gitpod.io!