To effectively use GitLab CI, you need a valid .gitlab-ci.yml
file present at the root directory of your project and a runner properly set up. You can read our quick start guide to get you started.
If you are using an external CI server like Jenkins or Drone CI, it is advised to disable GitLab CI in order to not have any conflicts with the commits status API.
GitLab CI is exposed via the /pipelines
and /builds
pages of a project. Disabling GitLab CI in a project does not delete any previous jobs. In fact, the /pipelines
and /builds
pages can still be accessed, although it's hidden from the left sidebar menu.
GitLab CI is enabled by default on new installations and can be disabled either individually under each project's settings, or site-wide by modifying the settings in gitlab.yml
and gitlab.rb
for source and Omnibus installations respectively.
The setting to enable or disable GitLab CI can be found with the name Pipelines under the Sharing & Permissions area of a project's settings along with Merge Requests. Choose one of Disabled, Only team members and Everyone with access and hit Save changes for the settings to take effect.
You can disable GitLab CI site-wide, by modifying the settings in gitlab.yml
and gitlab.rb
for source and Omnibus installations respectively.
Two things to note:
For installations from source, open gitlab.yml
with your editor and set builds
to false
:
## Default project features settings
default_projects_features:
issues: true
merge_requests: true
wiki: true
snippets: false
builds: false
Save the file and restart GitLab: sudo service gitlab restart
.
For Omnibus installations, edit /etc/gitlab/gitlab.rb
and add the line:
gitlab_rails['gitlab_default_projects_features_builds'] = false
Save the file and reconfigure GitLab: sudo gitlab-ctl reconfigure
.