Как автоматически очистить папки рабочей области "... @ script" и "... @ libs" на главной машине для сборок Pipeline? - PullRequest
0 голосов
/ 01 июля 2019

При запуске конвейера Jenkins некоторые репозитории извлекаются на главном сервере в папку рабочей области, а именно проект, содержащий Jenkinsfile, а также репозиторий для общей библиотеки. Они хранятся в папках, названных в честь проекта, но с суффиксом @script или соотв. @ ЛИЭС.

После этого Jenkinsfile интерпретируется и выполняет всю работу с агентами (включая клонирование дополнительных репозиториев и т. Д.).

Несмотря на то, что агент легко очищается в конце сборки, он не удаляет файлы из мастера. Таким образом, мы со временем собрали сотни ГБ данных.

Эту очистку, вероятно, нельзя выполнить как часть сборки Jenkins (настроенной в Jenkinsfile), поскольку deleteDir () может удалять только из рабочей области на агенте. Возможно, это будет работать с использованием методов java.util.File в блоке сценария (код Groovy выполняется на главном сервере), но при этом сборка Jenkinsfile и конвейерная библиотека могут быть заблокированы, пока выполняется сборка.

Так что мне интересно, есть ли другой способ, как сделать главную уборку. Какой-нибудь плагин или скрипт? Любая другая идея?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...