Я намагаюся виконати сценарій оболонки, якщо або збірка проходить, або не вдається після після збірки в Jenkins. Я не бачу цієї опції у пост-побудові для виконання якогось сценарію оболонки, за винятком запуску цілі.
Відповіді:
Це дуже легко зробити за допомогою плагіна завдання збірки завдань .
Ви також можете запускати довільні команди, використовуючи Groovy Post Build - і це дасть вам великий контроль над їх запуском тощо. Ми використовуємо це для запуску сценарію оболонки "палець вини" у випадку невдалих або нестабільних збірок.
if (manager.build.result.isWorseThan(hudson.model.Result.SUCCESS)) {
item = hudson.model.Hudson.instance.getItem("PROJECTNAMEHERE")
lastStableBuild = item.getLastStableBuild()
lastStableDate = lastStableBuild.getTime()
formattedLastStableDate = lastStableDate.format("MM/dd/yyyy h:mm:ss a")
now = new Date()
formattedNow = now.format("MM/dd/yyyy h:mm:ss a")
command = ['/appframe/jenkins/appframework/fob.ksh', "${formattedLastStableDate}", "${formattedNow}"]
manager.listener.logger.println "FOB Command: ${command}"
manager.listener.logger.println command.execute().text
}
(Наша команда бере як останню стабільну дату збірки та поточний час як параметри, щоб вона могла дослідити, хто міг порушити збірку, але ви можете виконувати будь-які команди, які вам подобаються, подібним чином)
Якщо я правильно прочитав ваше запитання, ви хочете запустити скрипт у частині збірки дій після збірки.
Я сам використовую плагін PostBuildScript для запуску git clean -fxd
після того, як збірка заархівувала артефакти та опублікувала результати тесту. У моїх рабів Дженкінса є SSD-диски, тому я не маю кімнати, щоб зберігати згенеровані файли в робочій області.
Ви зможете це зробити за допомогою плагіна Batch Task .
Альтернативою може бути також плагін завдання після збірки .
Вам потрібно було б встановити сценарій оболонки після збірки як окреме завдання Дженкінса і запускати його як крок після збірки. Схоже, вам потрібно буде використовувати параметризований плагін тригера, оскільки стандартний параметр "Створення інших проектів" працює лише в тому випадку, якщо ваша ініціююча збірка була успішною.