Allow labels on merge requests to influence what teamcity builds are run

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Problem to solve

As a maintainer of a repository, I would like to be able to control which teamicty builds are triggerd by a merge requests based on the labels attached to that merge request. Simple examples of labels...: short-build-chain full-build-chain, ...

This would allow me to greatly improve the efficiency and use of my builds by tailoring them to the chain most appropriate for the change.

Intended users

Maintainers and release managers.

User experience goal

Teamcity build triggers should be able to be influenced by gitlab merge request labels.

Proposal

This is what I'm not sure of. Currently it looks like teamcity can take advantage of some of the special refs that are created by gitlab, possibly labels on merge requests could be exposed in the same way?

refs/merge-requests/:iid/labels/:label (or something)

Further details

Our use case involves us trying to manage a feature-branch workflow where not all features need to be tested on our full build pipeline. For example, a change to code (a) may warrant us to rebuild our C++ library across all platforms and configurations, whereas code change (b) may warrant a reduced platform/configuration list. Our builds currently take 10+ hours to complete on all pipelines, so running the full pipeline against every feature branch is overloading our TC build agents.

Documentation

Availability & Testing

Available Tier

Links / references

Edited by 🤖 GitLab Bot 🤖