基本上,我们在这里进行主干开发,并在同一目录下获得大量服务。
我有一个通过 GitHub webhook 触发的 Jenkins 作业,只有当该 repo 的特定目录发生变化时才会执行某些操作:
pipeline {
agent any
stages {
stage('Building') {
when { changeset "subdirectory/*"}
steps {
-- do whatever is configured
}
}
stage('Deploying to Dev') {
when { changeset "subdirectory/*"}
steps {
-- do whatever is configured
}
}
}
}
这部分工作正常。在我手动触发的另一个 Jenkinsfile 中,我也有这个,用于在 Slack 上发送通知:
post {
success {
slackSend channel: '#my-notif-channel',
color: 'good',
message: "Yay ! "
}
failure {
slackSend channel: '#my-notif-channel',
color: 'danger',
message: "Nay !"
}
}
问题是,无论该目录是否发生更改,都会发送通知。有没有办法仅在我的子目录中发生更改时启用该块?