Что такое папки @tmp в рабочей области Jenkins и как их очистить - PullRequest
0 голосов
/ 28 октября 2019

У меня есть конвейер 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):

  1. Foo
  2. Foo @ 2
  3. Foo @ 2 @ tmp
  4. Foo @ tmp

Что это такое и как их чистить? cleanWs не удаляет ничего, кроме первого из них после сборки.

РЕДАКТИРОВАТЬ: Это не дубликат этот вопрос , потому что

a) Этот вопросНе отвечайте на мой вопрос: что это за файлы. б) Ответы на этот вопрос предлагают использовать deleteDir, что не рекомендуется при использовании контейнеров Docker.

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