Jenkinsfile - 특정 하위 디렉터리가 변경된 경우에만 빌드, 게시 작업 관리 방법

Jenkinsfile - 특정 하위 디렉터리가 변경된 경우에만 빌드, 게시 작업 관리 방법

기본적으로 우리는 여기서 트렁크 개발을 수행하고 있으며 동일한 디렉토리 아래에 수많은 서비스가 있습니다.

GitHub webhook을 통해 트리거되는 Jenkins 작업이 있으며 해당 저장소의 특정 디렉터리에 변경 사항이 있는 경우에만 일부 작업을 수행합니다.

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 !"
                }
        }

이에 대한 문제는 해당 디렉터리에 변경 사항이 있는지 여부에 관계없이 알림이 전송된다는 것입니다. 내 하위 디렉터리가 변경될 때만 해당 블록을 활성화하는 방법이 있습니까?

관련 정보