Ограничитель матрицы конфигурации Jenkins — подмножество метки

Ограничитель матрицы конфигурации Jenkins — подмножество метки

У меня есть проект матричной конфигурации в Jenkins, который я хотел бы построить по двум осям:

метка -> rhel6,rhel7

определяемый пользователем -> default, devtoolset, clang,icc

Некоторые узлы помечены как , rhel6а некоторые — как rhel7. На всех узлах установлены компиляторы default, devtoolsetи . clangОднако только на некоторых узлах iccустановлен компилятор. iccК ним применена метка . Все указанные узлы также имеют метку rhel7: нет rhel6узлов с icc. Что мне следует указать в фильтре комбинирования, чтобы iccстрока была построена только на узлах с iccметкой ? Например, я хочу увидеть следующее:

Configuration Matrix      rhel6  rhel7
                 default      O      O
              devtoolset      O      O
                   clang      O      O
                     icc      X      O

но iccстрока не может быть построена на любом rhel7узле, а только на подмножестве rhel7узлов с iccметкой.

Мне удалось сделать его технически функциональным, добавив дополнительный столбец меток и следующее выражение:

(label=="icc").implies(compiler=="icc") && (compiler=="icc").implies(label=="icc")

но это приводит к следующему:

Configuration Matrix        icc  rhel6  rhel7
                 default      X      O      O
              devtoolset      X      O      O
                   clang      X      O      O
                     icc      O      X      X

что определенно не так чисто, как должно быть. Есть идеи?

Связанный контент