Skip to content

Allow repo fork even when `shared_runners_enabled` conflicts with its group

Problem

An Ultimate SaaS customer reports that when they attempt to fork the GitLab docker-machine repo to their project, it fails because they do not have shared runners enabled on the project. This is very similar to #276930 (closed).

I duplicated the behavior on a namespace that has shared runners disabled. The network tab on the browser inspector reveals a 409 error when attempting to fork, and the error message is:

{"message":{"shared_runners_enabled":["cannot be enabled because parent group does not allow it"]}}

Proposed solution

I believe the proposed solutions provided on the related issue I linked to above can probably apply here, as well.

  • Keep project value if Allow projects and subgroups to override the group setting is set, as it already does
  • Otherwise inherit group setting of disabled, if a project has enabled set
  • Keep project setting of enabled/disabled, if group setting is enabled.

Zendesk ticket (internal)