Дженкинс — удаление определенных артефактов из старых сборок

#jenkins #jenkins-groovy

#Дженкинс #Дженкинс-groovy

Вопрос:

Возможно ли в Jenkins удалять только определенные артефакты, созданные заданием сборки?

В моей ситуации я создаю 4 артефакта, 3 из которых представляют собой файлы размером 2 КБ .txt, а один — 0,5 ГБ tar.gz . Я бы хотел сохранить 3 меньших артефакта на неопределенный срок, но настойчиво удалять tar.gz артефакты после 5 сборок.

Использование logrotator, похоже, не подходит (он может удалять только все артефакты или ни одного), но я надеялся, что может быть способ написать библиотеку Groovy, которую можно вызывать после каждой новой сборки, или плагин, который мог бы справиться с этим для меня?

Смотрите: https://javadoc.jenkins.io/hudson/tasks/LogRotator.html

У кого-нибудь есть какие-либо указания о том, как начать с этого?

Ответ №1:

Вы можете безопасно удалять артефакты сборки непосредственно на уровне файловой системы.

Если вы хотите запустить это непосредственно из Дженкинса, самый простой способ, вероятно, написать сценарий Groovy после сборки, который позаботится об удалении.