При запуске конвейера Jenkins некоторые репозитории извлекаются на главном сервере в папку рабочей области, а именно проект, содержащий Jenkinsfile, а также репозиторий для общей библиотеки. Они хранятся в папках, названных в честь проекта, но с суффиксом @script или соотв. @ ЛИЭС.
После этого Jenkinsfile интерпретируется и выполняет всю работу с агентами (включая клонирование дополнительных репозиториев и т. Д.).
Несмотря на то, что агент легко очищается в конце сборки, он не удаляет файлы из мастера. Таким образом, мы со временем собрали сотни ГБ данных.
Эту очистку, вероятно, нельзя выполнить как часть сборки Jenkins (настроенной в Jenkinsfile), поскольку deleteDir () может удалять только из рабочей области на агенте. Возможно, это будет работать с использованием методов java.util.File в блоке сценария (код Groovy выполняется на главном сервере), но при этом сборка Jenkinsfile и конвейерная библиотека могут быть заблокированы, пока выполняется сборка.
Так что мне интересно, есть ли другой способ, как сделать главную уборку. Какой-нибудь плагин или скрипт? Любая другая идея?