Mug*_*ugz 5 jenkins jenkins-pipeline
在声明式管道中,我们有以下条件:
pipeline {
agent any
stages {
stage('Example Build') {
when {
changeset 'service1\**'
}
steps {
echo 'Building'
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
有什么方法可以在脚本管道中做一些事情吗?
小智 3
您可以像这样检查与特定模式匹配的文件(未测试)
创建一个函数来检查所需目录中的更改...
@NonCPS
boolean isMyDirChanged() {
for (changeLogSet in currentBuild.changeSets) {
for (entry in changeLogSet.getItems()) { // for each commit in the detected changes
for (file in entry.getAffectedFiles()) {
if (file.getPath() ==~ /^service1/) {
return true
}
}
}
}
return false
}
Run Code Online (Sandbox Code Playgroud)
...然后使用该函数来确定是否应该执行某些代码
if (isMyDirChanged()) {
print ('Building')
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4822 次 |
| 最近记录: |