Дженкінс - як побудувати конкретну гілку


95

Це не так просто, як просто зробити параметризовану збірку. У мене вже є конкретний процес збірки, який буде збиратись і розгортатися, коли будь-яка з цих гілок буде перенесена на GitHub:

введіть тут опис зображення

Отже, якщо я щойно натиснув, developі він успішно побудував, як мені запустити ручну збірку і змусити її витягнути feature/my-new-feature(не роблячи a git push)? Я намагався дозволяє параметризрвані будувати, додавши новий рядок з ім'ям branch, а потім додати нову гілку специфікатор */$branch. Потім я побіг збірки і набір branchдля feature/my-new-featureі він все ще витягнув з develop.

Буду вдячний за будь-яку допомогу!


Ви говорите про веб-хук github. це може вирішити вашу проблему. ви хочете запустити це з github?
Abhijeet Kamble

1
Ні, інтеграція GitHub вже працює. Мені потрібно знати, як вручну побудувати певну гілку.
ffxsam

3
У мене така сама проблема. Завдання налаштовано на побудову різних гілок і ініціюється git-гаком. Але коли я хочу побудувати певну гілку вручну (без нових змін у GIT), я натискаю "Створити зараз", але вона завжди створює останню перевірену гілку. Також спробував різні властивості збірки.
cornz

Якщо ваш параметр називається гілкою, вам просто потрібно вказати $branchу полі специфікатора гілки.
Олексій

1
@Alexey, але тоді під час автоматичного запуску збірки це $branchприведе до порожнього рядка, я гадаю.
Накілон

Відповіді:


109

Найкращим рішенням може бути:

Додайте параметр рядка до існуючого завдання введіть тут опис зображення

Потім у Source Code Managementрозділі оновлення Branches to buildвикористовувати параметр рядка, який ви визначиливведіть тут опис зображення

Якщо ви бачите прапорець із позначкою Lightweight checkout, переконайтеся, що його не встановлено.

Конфігурація, вказана на зображеннях, вказує роботу jenkins використовувати masterяк гілку за замовчуванням, а для ручних збірок вона попросить вас ввести деталі гілки (FYI: за замовчуванням встановлено на master)введіть тут опис зображення


4
Майстер побудови за замовчуванням не вирізає його для загальної збірки розробки, яка повинна будувати всі гілки розробки.
static_rtti

9
Боже мій, це таке дерьмо. Чому Дженкінс не веде Branches to buildрозділу з проклятим репозитарієм Git, до якого це стосується? Дурний ПІТА - робити це, щоб вказати гілку для побудови.
Alex Zavatone

9
Донг, це не працює (для мене). Я закінчую тим, що Дженкінс намагається перевірити гілку, git.exe fetch --tags --progress origin +refs/heads/${BRANCH}:refs/remotes/origin/${BRANCH} --pruneяка, очевидно, недійсна.
Ліам

1
це реєструється як помилка Дженкінса, тому важко зрозуміти, як це колись працювало?
Ліам

19
@Liam Як було запропоновано в квитку помилок, вам потрібно зняти прапорець "Легка оплата", щоб зробити це ефективно.
asmaier

10

Я не думаю, що ви можете обидва в рамках однієї роботи jenkins. Вам потрібно налаштувати нову роботу jenkins, яка матиме доступ до вашого github для отримання гілок, а потім ви зможете вибрати, яку з них будувати вручну.

Просто позначте його як параметризовану збірку, вкажіть ім'я та параметр, налаштований як git parameter

введіть тут опис зображення

і тепер ви можете налаштувати параметри git:

введіть тут опис зображення


7
Цей параметр git - плагін jenkins ?? Я не бачу можливості додати такий тип праметра. Якщо це плагін, чи можете ви вказати на нього у відповіді?
Леандро Давид

@LeandroDavid yes Параметр Git - це плагін, який потрібно встановити після того, як ви побачите цю опцію в розділі Додати параметр.
gotosachin

9

Щоб перевірити гілку за допомогою скриптів Jenkins, використовуйте:

stage('Checkout SCM') {
    git branch: 'branchName', credentialsId: 'your_credentials', url: "giturlrepo"
}

1
Я знаю, що це не зовсім те, що стосується питання, але я шукав цю інформацію, і Google продовжував пропонувати цей сайт як відповідь.
Ігор Л.

те саме тут брате. Чи змогли ви знайти відповідь на точну відповідь
thinkmonster

0

Це продовження відповіді, наданої Ранджитом

Я б запропонував вам вибрати збірку параметрів вибору та вказати гілки, які ви хочете побудувати. Параметр активного вибору

А після цього ви можете вказати гілки для побудови. Відділення для побудови

Тепер, коли ви будете будувати свій проект, вам буде надано "Побудувати з параметрами, де ви можете вибрати гілку для побудови"

Ви також можете написати скрипт groovy, щоб отримати всі ваші гілки в параметрі активного вибору.


Будь ласка, уточніть. TeamCity робить це за замовчуванням, і все ж Дженкінс навіть не може зав’язати собі взуття !!!
C Johnson,

0

введіть тут опис зображення

У налаштуваннях буде присутня опція в розділі Створення тригерів

Перевірте гілки GitHub

Буде створено гачок, і тоді ви зможете створити будь-яку гілку, яка вам подобається, від Дженкінса, коли ви вибираєте гілки github введіть тут опис зображення

Сподіваюся, це допоможе :)


Я намагаюся використовувати цей плагін із цим налаштуванням, але не можу знайти спосіб розпочати роботу. Чи існує інший спосіб перевірити, чи правильно події надходять від gh?
Віто Де Тулліо

Чи отримуєте ви Run Branch Triggerопцію, вона сканує git repo для всіх доступних гілок ... Також просто загляньте в журнали jenkins -> під Manage Jenkins ..., щоб перевірити, чи не сталося помилок
rohit thomas

1
Будь ласка, уточніть, ваш опис занадто малий і короткий.
C Johnson,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.