Як мені клонувати роботу в Дженкінсі?


231

Jenkinsмає Gerritплагін так, що коли ми робимо реєстрацію до Gerrit, Jenkinsвиконує збірку, і якщо це успішно, то модифікація в Gerritперевірена. Якщо збірка не вдається, то це не так. Я розумію, що це здійснюється завдяки робочим місцям, створеним у Jenkins. Зараз ми створили нову гілку ( git), і, мабуть, мені потрібно клонувати існуючі завдання, вказуючи на іншу гілку, щоб цей самий робочий процес відбувався, а складання виконувались на кожному комітеті. Хтось може пояснити, як я б клонував ці роботи? Я, здається, не бачу способу зробити це через користувальницький інтерфейс, і навіть не бачу способу перерахувати завдання через інтерфейс користувача.


7
Ви повинні мати можливість "Скопіювати наявну роботу" як один із варіантів на сторінці "Нова робота". Див stackoverflow.com/questions/3133537 / ...
nofinator

Відповіді:


180

Щоб скопіювати існуюче завдання, перейдіть до http://your-jenkins/newJobта скористайтеся опцією "Копіювати існуюче завдання". Введіть назву існуючої роботи - Дженкінс перевірить, чи існує вона.

Вкладка за замовчуванням на головній сторінці Дженкінса повинна містити перелік усіх існуючих завдань, але, можливо, ваш попередник видалив її. Ви можете створити нову вкладку з переліком усіх завдань зhttp://your-jenkins/newView.


майте на увазі, що під час копіювання наявного завдання вам потрібно вказати ім’я (не закодоване як у URL-адресі під час доступу до роботи), тож якщо в назві завдання є пробіли, вони будуть збережені. Незабаром, введіть лише оригінальну назву роботи, нічого іншого.
Яухен

За допомогою встановленого плагіна ez-template "Копіювати існуюче завдання", застосованого до шаблону або до завдання за допомогою шаблону, створюється нове завдання, залежне від шаблону. Якщо ви дійсно хочете отримати незалежну копію, ви можете видалити Use another job as a templateконфігурацію.
користувач598656

146

Ви можете клонувати роботу:

  1. Клацніть посилання "Новий товар"
  2. Дайте нове ім’я для вашої роботи
  3. Виберіть перемикач "Копіювати наявний елемент"
  4. Дайте ім’я завдання, яке ви хочете клонувати
  5. Натисніть "ОК"

Нарешті, у вас є нова робота, яка відображає всі особливості вашого клонованого.


117

Дженкінс 2.9

  1. Дженкінс> Новий предмет

    Новий предмет Дженкінса

  2. Введіть назву елемента - Наприклад, "MY_CLONE"

    Введіть назву елемента

  3. Вкажіть джерело ( Копіювати ) завдання> ОК

    Коли ви почнете вводити ім'я, знайдуться наявні значення. Зауважте, що це враховує регістри.

    Копіювати з ОК

  4. Клацніть на Зберегти, якщо ви хочете зберегти значення за замовчуванням.

  5. Тепер обидва завдання доступні в одному місці:

    Перегляд завдань


3
Картини варті тисячі слів. Не вдалося знайти маленького спаду для життя мене. Mulțumiri
michaelok

34

New Item> Project Name= abc> Замість цього Freestyle jobвиберітьCopy from job name of already existing jobs

Якщо ви перебуваєте всередині папки, яку ви хочете скопіювати з каталогу, тоді скористайтеся ../.


Дякуємо за згадування../
Сатевг

14

якщо ви хочете скопіювати в той же Дженкінс, але в різні підпапки, створіть новий елемент -> використовуйте копію з. нова робота буде клонована в тому ж каталозі. Потім скористайтеся опцією переміщення, щоб перемістити її в потрібний каталог


Це те, що я використав. Просто копіювання в одну папку часто недостатньо. Дякую!
donmartin

11

Усі вищевказані відповіді хороші. Але якщо ви створили "папки" для своїх робочих місць, справи дещо інакше.

Клацніть папку, в якій ви хочете створити нове завдання. Потім натисніть "Новий елемент" у лівому меню. Тепер ваша URL-адреса "нової роботи" буде виглядати приблизно так (припускаючи, що ви створюєте нове завдання в "моїй папці"):

http://my-jenkins:8080/job/my-folder/newJob

У розділі Enter an item nameВведіть потрібне нове ім'я роботи. Потім використовуйте Copy fromтекстове поле внизу. Введіть шлях роботи з вихідної роботи.

Наприклад, якщо ваше вихідне завдання знаходиться в папці, src-folderа назва завдання - src-jobвам доведеться ввести src-folder/src-jobполе "Копіювати з".

Сподіваюся, це допомагає.


Я все ще намагаюся знайти спосіб копіювання завдань між структурами папок: Дженкінс додає буквальне "завдання" для кожного нового елемента, що є папкою, наприклад, у мене є робота у localhost: 8080 / робота / х / робота / у / робота_1 , де x і y - папки. робота_1 - справжня робота. Як я можу скопіювати це завдання в localhost: 8080 / job / x / job / z / job_1 ? Я спробував усі посилання на вихідну роботу не пощастило.
Хайнц

1
Перейти до localhost:8080/job/x/job/y/job_1. На цій сторінці ви повинні побачити Full project name. Спробуйте використовувати це, коли вказуєте джерело.
Bhushan

Якщо у вас є 2 папки folder1і folder2на тому ж рівні, і ви хочете скопіювати folder1\job1їх folder2\job1, ви можете створити новий елемент у папці, folder2а потім скористатися ..для повернення в структуру папки та скопіювати ../folder1/job1.
DRz


10

У моєму випадку мені довелося копіювати роботу з одного екземпляра jenkins в інший.

Тож спершу я заглянув під структуру каталогів старого Дженкінса (назва роботи / каталогу; також зазначив config.xml), а потім під структуру каталогів нових jenkins, де потім створив каталог з тим самим іменем / роботою та скопіював config.xml у цьому новоствореному режимі.

Потім під «Управління Дженкінсом» я натискаю «Перезавантажити конфігурацію з диска». Це воно.


дякую за пораду "Перезавантажити конфігурацію з диска"!
Аліза

1
Так, роблячи це так, коли мені доводиться копіювати декілька елементів, перед "Перезавантаженням з диска" ви також можете виконати необхідну ручну магію в CLI, наприклад пошук / заміну деяких параметрів, фрагментів тексту тощо в config.xml . Зауважте, що ім'я каталогу, де config.xml знаходиться, - це ім'я вашої роботи (таким чином, якщо на відміну від Rohit вам потрібно створити нову роботу, просто дайте їй іншу назву).
RAM237

На мою думку, коли у вас є кілька рівнів папок з багатьма завданнями всередині, це найкращий варіант.
кабрераканал

3

Створіть новий Елемент та перейдіть до останнього, який знайдете варіант копіювання з існуючого, просто напишіть своє поточне ім’я роботи, і Ви будете клонувати проект, з яким будете працювати.


1

Я не зміг скопіювати завдання Дженкінса з підпапки. copy fromваріант не відображав пропозицію, яку я шукав. Без використання пропозиції копіювання назви роботи не працювало.

Тож якщо ви хочете створити завдання із зовнішньої папки, вам потрібно спершу створити завдання в підпапці, а потім перемістити його в іншу папку, куди потрібно розмістити його.



0

Усі відповіді тут дуже корисні, але пропустіть одну дуже дивну помилку про Дженкінса. Після того як ви відредагували нові конфігурації завдань, іноді, якщо рівень масштабування занадто високий, можливо, ви не побачите опцію saveабо applyкнопку. Кнопка присутня на сторінці і прихована рівнем масштабування, вам потрібно зменшити масштаб, поки ви не побачите кнопку внизу зліва.

Дивно, я знаю!

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