[为了减少在Docker容器中的重复工作,我想在Docker容器中以及可用的Jenkins工具安装中运行管道步骤。
此简单尝试无效-未找到npm
pipeline {
agent { dockerfile true }
tools { nodejs 'LTS' }
stages {
stage('NPM') {
steps { sh 'npm install-ci-test' }
}
}
}
这可能吗?
您可以通过在构建代理上安装Jenkins文件夹来配置Docker容器时使它可用。
pipeline {
agent {
docker {
....
// Make tools folder available in docker (some slaves use mnt while other uses storage)
args '-v /mnt/Jenkins_MCU:/mnt/Jenkins_MCU -v /storage/Jenkins_MCU:/storage/Jenkins_MCU'
...
}
....
stage(...){
environment {
myToolHome = tool 'MyTool'
}
steps {
...
sh "${myToolHome}/path/to/binary arguments"
....
我不确定如何获取jenkins在构建代理上的位置路径,因此在此示例中,它是硬编码的。但这使该工具在docker映像中可用。