jenkins - Jenkins 2 为一项工作构建处理器
问题描述
我对多分支管道作业有一点问题。出现问题后,我的工作总是需要 2 个构建处理器。不幸的是,我不想在 Jenkins 中解锁更多构建处理器,但想知道为什么 Jenkins 总是使用 2 个构建核心来完成这项工作。谁能帮助我为什么詹金斯同时使用 2 个处理器来完成这项工作?
pipeline {
options { disableConcurrentBuilds() }
agent { label 'myServer' }
stages {
stage('helloworld') {
agent {
docker {
image 'ubuntu:16.04'
label 'myServer'
}
}
steps {
dir('build') {
sh 'npm i'
sh 'npm run gulp clean:all'
sh 'npm run gulp ci:all'
}
}
}
}
}
解决方案
docker 代理有一个选项reuseNode
默认为 false。我认为这可能是詹金斯在您的情况下需要 2 个构建核心(每个 docker 代理一个)的原因,尽管我不确定。
该选项可以在 Jenkins 声明性语法文档 ( https://jenkins.io/doc/book/pipeline/syntax/#common-options ) 中的 Sections > Agent > Common Options > reuseNode 中找到。
你可以尝试启用reuseNode并报告它是否解决了问题?
推荐阅读
- php - Laravel 在几小时之间运行一批命令
- c++ - 在非 constexpr 函数中作为左值传递的变量上使用“constexpr”函数
- r - 取数据帧的 sum 和 col 名称的频率
- typescript - 使用 babel eslint 解析的 Typescript 强制转换
- terraform - 覆盖变量的一部分
- javascript - 无法停止反应中输入标签中小数点后的尾随零
- angular - ngrx/store 给我找不到模块“./shopping-list/store/shopping-list.reducer”错误
- python - Keras ConvLSTM 优化结果和内存管理
- vuejs2 - 如何将动态id 绑定到 JavaScript 事件?
- ios - Stripe iOS didCreatePaymentResult 永远不会被调用