Skip to content

Ci Resource Group models and parser

Shinya Maeda requested to merge ci-resource-group-model into master

What does this MR do?

There is a downstream MR !20903 (closed).

This MR adds the base model architecture for Resource Group, which is used for Limit pipeline job concurrency using named semaphores. Resource Group is basically a resource limitation per projects, resource can be mobile devices or such physical machines, which maintained by users (not GitLab). In other word, Ci::ResourceGroup is a concept of user-defined machine group and Ci::Resource is a individual machine of a group.

Sample gitlab-ci.yml

job:
  script: echo 'a'
  resource_group: iOS

Feature Flag

This feature is implemented behind ci_resource_group feature flag and disabled by default. Once we've confirmed the feature is deemed stable, we remove the feature flag in order to publish the feature as GA.

TODO

  • Add feature flag (default off)
  • Write tests

Screenshots

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Security

If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:

  • [-] Label as security and @ mention @gitlab-com/gl-security/appsec
  • [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
  • [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by Alper Akgun

Merge request reports