Представление конвейера доставки для трубопроводов Jenkins в задании dsl
Как я могу создать представление конвейера доставки для конвейера jenkins, используя jobdsl.
Все, что я мог найти, это deliveryPipelineView, который не совпадает с представлением, любая информация по этому вопросу была бы полезна
2 ответа
Представления конвейера доставки для конвейеров Jenkins в данный момент не поддерживаются JobDSL (1.64).
Класс Job DSL Delivery PipelineView поддерживает только традиционные задания с зависимостями вверх / вниз. Причиной этого является то, что плагин Delivery Pipeline использует различные представления и модели данных под капотом для визуализации представлений конвейера для заданий восходящего / нисходящего потоков и конвейеров Jenkins, во многом из-за различной природы базовых моделей данных, используемых в Jenkins.
Традиционное представление, поддерживаемое JobDSL, сгенерирует конфигурацию se.diabol.jenkins.pipeline.Delivery PipelineView, а представления, поддерживающие конвейеры Jenkins, моделируются с использованием класса se.diabol.jenkins.workflow.WorkflowPipelineView в подключаемом модуле конвейера доставки.
Текущий шаблон Delivery PipelineView в JobDSL: https://github.com/jenkinsci/job-dsl-plugin/blob/master/job-dsl-core/src/main/resources/javaposse/jobdsl/dsl/views/Delivery PipelineView-template.xml#L2
Если вы добавите /config.xml к URL-адресу вашего представления, основанного на конвейерах Jenkins, вы заметите, что XML имеет тип se.diabol.jenkins.workflow.WorkflowPipelineView.
Решение на данный момент заключается в том, чтобы вручную создать необходимый файл config.xml и передать его Дженкинсу самостоятельно.
Для меня метод deliveryPipeLineView создает именно представление конвейера доставки.
Вот пример:
deliveryPipelineView('name-pipeline') {
description('description-pipeline')
pipelineInstances(1)
showAggregatedPipeline()
columns(1)
sorting(Sorting.TITLE)
updateInterval(2)
enableStartBuild()
enableManualTriggers()
showAvatars()
showChangeLog()
pipelines {
component('name', 'init-job')
}
}
Смотрите документ на gitHub для более подробной информации: https://github.com/jenkinsci/job-dsl-plugin/wiki/Job-DSL-Commands