У меня есть конвейер Jenkins для проекта PHP в контейнере Docker. Это мой Jenkinsfile:
pipeline {
agent any
stages {
stage('Build') {
agent any
steps {
sh 'docker-compose up -d'
sh 'docker exec symfony composer install'
}
}
stage('Test') {
steps {
sh 'docker exec symfony php ./bin/phpunit --coverage-clover=\'reports/coverage/coverage.xml\' --coverage-html=\'reports/coverage\' --coverage-crap4j=\'reports/crap4j.xml\''
}
}
stage('Coverage') {
steps {
step([$class: 'CloverPublisher', cloverReportDir: '/reports/coverage', cloverReportFileName: 'coverage.xml'])
}
}
}
post {
cleanup {
sh 'docker-compose down -v'
cleanWs()
}
}
}
После запуска конвейера папка var/lib/jenkins/workspace
содержит 4 папки (при условии, что мой проект называется Foo
):
- Foo
- Foo @ 2
- Foo @ 2 @ tmp
- Foo @ tmp
Что это такое и как их чистить? cleanWs
не удаляет ничего, кроме первого из них после сборки.
РЕДАКТИРОВАТЬ: Это не дубликат этот вопрос , потому что
a) Этот вопросНе отвечайте на мой вопрос: что это за файлы. б) Ответы на этот вопрос предлагают использовать deleteDir
, что не рекомендуется при использовании контейнеров Docker.