Установка зависимостей или приоритетов в параллельных этапах в конвейере Jenkins - PullRequest
0 голосов
/ 04 июня 2018

Я делаю параллельные шаги как -

stages {    
    stage ('Parallel build LEVEL 1 - A,B,C ...') {
         steps{              
            parallel ( "Build A":   
            {                
            node('Build_Server_Stack'){
                buildAndArchive(A) // my code
            }
        },        
        "Build B" : {           
            node('Build_Server_Stack'){
                buildAndArchive(B)
            }
        },
        "Build C" : {           
            node('Build_Server_Stack'){
                buildAndArchive(C)
            }
        }
)
}
}
}

Теперь мне нужно начать выполнение B, после того как C завершен.Я могу вытащить задание B из параллельного блока и добавить его после параллельного блока, чтобы добиться этого.Но в этом случае B не будет запущен, пока A и C не завершат работу.Для длинной работы A это влияет на производительность, когда у вас есть свободные серверы сборки.Можем ли мы решить / улучшить план выполнения, чтобы все выполнялось параллельно, но с «Зависимостями» или «Приоритетами» для параллельных шагов.Подобный механизм существует в плагине Promotions, но его необходимо реализовать в конвейере.

...