В настоящее время я использую плагин EC2 с Jenkins, поэтому, когда ему нужно больше агентов (подчиненных), он запускает их (или убивает их, когда они не нужны). До сих пор агенты были настроены с двумя слотами заданий, и это нормально. Однако есть одно конкретное задание, для которого требуется весь экземпляр EC2.
Итак, как я могу заблокировать выполнение других заданий на агенте во время выполнения этого конкретного задания? Обычно решением было бы отфильтровать задание по одному набору специальных агентов, но я бы не хотел создавать совершенно новый парк агентов только для этого одного задания.
Вы можете использовать подключаемый модуль Run Condition, https://wiki.jenkins-ci.org/display/JENKINS/Run+Condition+Plugin , чтобы отключить любые другие задания на основе о том, что выполняется конкретная работа. Вы можете узнать, как получить информацию о текущей работе здесь, https://stackoverflow.com/questions/7285891/determine-if-given-job-is-currently-running-using-hudson-jenkins-api .