У меня есть сервер Jenkins, я планирую использовать его для CI для кроссплатформенного проекта C ++. Чтобы упростить процесс, у меня есть два изображения docker, одно строит проект для android NDK, а другое строит для Ubuntu. Например, я использую файл Jenkins, как показано ниже, для android build:
pipeline {
agent {
docker {
image 'image4android:latest'
}
}
stages {
stage('Build') {
steps {
sh 'cd /path/to/project && cmake --build .'
}
}
}
}
Я хочу запустить линтинг и форматирование на главном сервере Jenkins, поскольку это одинаково для всех платформ. Затем мне нужно скопировать линированный / отформатированный код в каждый контейнер для сборки. Как я могу использовать такие вещи, как docker cp
на мастере Jenkins, чтобы скопировать код проекта в контейнер android / ubuntu?