Мы используем JJB (Jenkins Job Builder) для создания наших рабочих мест, но в последнее время я решил попробовать Jenkins DSL-плагин, поскольку он такой же или близкий, как JJB, согласно информации I нашел. Причиной попробовать другую технологию было то, что я не смог решить одну задачу с JJB. Это заставило меня погрузиться в технологию плагинов DSL, попытаться создать рабочие места и организовать все так, как мы с JJB, чтобы понять, лучше ли или плагин DSL-плагина, следует ли использовать его вместо JJB или, возможно, в качестве дополнительного.JJB и Jenkins DSL-плагин - преимущества и недостатки
Это не очень много информации в Интернете о преимуществах и недостатках между theese двух плагинов, так что я хотел бы попросить вас помочь мне понять:
- каковы преимущества и недостатки между JJB Дженкинс DSL-плагин
- Какие задачи могут быть достигнуты с одним, а не с другим?
От себя могу сказать следующие вещи: DSL плагин преимущества:
- DSL плагин позволяет нам использовать силу языка программирования (заводной), что позволяет создавать более эффективные конфигурации рабочих мест.
- DSL-плагин не зависит от разработки плагинов - при добавлении новых параметров и элементов вы можете легко добавить их с помощью синтаксиса узла.
- Вы можете легко получить переменные из других сценариев DSL, используя, например, импорт классов (вот почему я решил попробовать подключить DSL-плагин).
DSL плагина недостатки:
- Это более трудно создавать шаблоны с ним, вам нужно добавить дополнительный код, чтобы сделать его работу. Команда «using()» не позволяет передавать переменные.
- Синтаксис немного сложнее.
Вы можете использовать код Groovy для создания шаблонов (или сборщиков/фабрик) для DSL-скриптов. Посмотрите пример [Пример DSL Gradle] (https://github.com/sheehan/job-dsl-gradle-example), более конкретно [GradleCiJobBuilder.groovy] (https://github.com/sheehan/job -dsl-Gradle-пример/блоб/ведущий/SRC/Главный/заводной/ком/dslexample/GradleCiJobBuilder.groovy). Еще одно преимущество заключается в том, что вы можете использовать стандартные тестовые платформы Groovy, такие как Spock, для проверки конфигурации, прежде чем вносить какие-либо изменения. См. Https://github.com/sheehan/job-dsl-gradle-example/blob/master/src/test/groovy/com/dslexample. – daspilker
Спасибо, .text() метод действительно полезен, я буду использовать его в будущем, я думал, что я могу добавить только целые элементы, используя команду(). И основа тестирования тоже хорошая вещь. – Alexander