GitLab

You can use Buildkite to run builds on GitLab commits.

GitLab repositories

If you host your repositories on gitlab.com enter your gitlab.com repository URL when you create your pipeline in Buildkite (for example, git@gitlab.com:your/repo.git) and follow the instructions provided on that page to set up webhooks.

GitLab Community/Enterprise Edition

The earliest supported version of GitLab is 7.4.

  1. Open your Buildkite Organization Settings and choose Repository Providers
  2. Select GitLab.
  3. Select the GitLab Edition Type (Community or Enterprise) you want to connect to your Buildkite Organization.
  4. Enter the URL to your GitLab installation (for example, https://git.example.org).
  5. You can optionally specify a list of IP addresses to restrict where builds can be triggered from. This field accepts a space separated list of networks in CIDR notation.

Screen of Buildkite Organization GitLab Settings
  1. Select Save GitLab Settings before leaving this page.
  2. Create a new pipeline on Buildkite using your GitLab repository's URL (for example, git@git.mycompany.com:your/repo.git) and follow the instructions on the pipeline creation page.

Branch configuration and settings

You can edit the version control provider settings for each pipeline from the pipeline’s settings page. Go to Pipelines > Pipeline Menu > Pipeline Settings > <Provider>.

If you need more control over your pipeline configuration, add a pipeline.yml to your repository. Then you can use conditionals and branch filtering to configure your pipeline.

Using one repository in multiple pipelines and organizations

If you want to use the same repository in multiple pipelines (including pipelines in different Buildkite organizations), you need to configure a separate webhook for each pipeline. Follow the webhook setup instructions in the Buildkite UI. Buildkite shows you these instructions when you create the pipeline, but you can also find them in Pipeline Settings > <Provider> > <Provider> Setup Instructions.

Build skipping

You may not always want to rebuild on every commit, or branch. You can configure Buildkite to ignore individual commits or branches, or to skip builds under certain conditions.