Параметризований тригер Дженкінса + копія артефакту


9

Я працюю над створенням Дженкінса для обробки наших версій версій. Збірка випуску складається з інсталятора Windows, який включає деякі двійкові файли, які необхідно вбудувати в Linux.

Ось що я маю досі:

  • Частина Windows та частина Linux створені як окремі проекти Дженкінса.
  • Проект Windows параметризується, використовуючи тег Subversion для складання та випуску.
  • У рамках своєї збірки проект Windows запускає збірку того самого тега Subversion для проекту Linux (за допомогою додатка Parameterized Trigger ), а потім копіює артефакти з проекту Linux (використовуючи плагін Copy Artifact ) у робочу область Windows, щоб вони можуть бути включені в інсталятор Windows.

Де я застряг: прямо зараз створено Copy Artefact для копіювання останньої успішної збірки. Здається більш надійним налаштувати Копіювати артефакт для копіювання з точної збірки, яку спрацьовував Параметризований тригер, але у мене виникають проблеми з розгадами, як зробити це. Є варіант для параметра "селектор побудови", який, на мою думку, призначений допомогти в цьому, але я не можу зрозуміти, як це потрібно налаштувати (а сліпо експериментувати з різними можливостями дещо болісно, ​​коли збірка займає годину або два, щоб знайти успіх чи невдачу).

Як мені це встановити? Як працює селектор збирання?

Відповіді:


11

Після завершення скомпонованої збірки у вас буде встановлена ​​нова змінна env на номер збірки цієї тривожної збірки під назвою TRIGGERED_BUILD_NUMBER_ <ім'я завдання>. Ви можете використовувати це, щоб спеціально скопіювати артефакти:

  1. Збірка Windows (називається " WindowsBuild "), викликає збірку Linux (називається " LinuxBuild ") за допомогою додатка Параметризований тригер.

    Ви отримали цю частину, просто переконайтесь, що перевірте Block, поки запущені проекти не закінчать свої збори та не зможуть зібрати звичайно, якщо збірка Linux не вдасться.

  2. Далі в Копіюйте артефакти з іншого кроку проекту :

    Назва проекту: LinuxBuild

    Яка збірка: конкретна збірка

    Номер складання : $ TRIGGERED_BUILD_NUMBER_LinuxBuild (Усі назви проекту містять символи, не a-zA-Z або 0-9, замінені на _; кілька символів зведені в один _).


чи слід змінну середовища "$ TRIGGERED_BUILD_NUMBER_ <downstreamjob>" встановлювати вручну? Я не можу його знайти ні в одній із змінних верхніх чи нижчих течій.
збиратись

1
З вікі плагінів виявлено, що $ TRIGGERED_BUILD_NUMBER_ <downstreamjob> встановлюється автоматично, якщо встановлено прапорець "Блокувати, поки запущені проекти не закінчать свої збірки".
збиратись
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.