2 버전에서 두 가지 방식의 파이프라인을 각각의 문법과 구조로 지원 하고 있는데 일반적 작업을 구 프리스타일 프로젝트의 빌드 후처리 설정으로, 이메일 발송을 한다면 특별 웹 페이지 인터페이스로 설정했다. 스크립트 방식의 파이프라인 문법에서는 빌드 후처리를 위한 지원이 기본적으로 존재하지 않지만 DSL 스텝과 그루비 코딩을 이용하여 구현할 수 있다.

node {
	try {
			//필요 작업 수행
	} catch(e) {
		CurrentBuild.result = "FAILED"
		throw e
	} finally {
		mail to: "[email protected]",
			subject:"STATUS FOR PROJECT: ${currentBuild.fullDisplayName}",
			body: "RESULT: ${currentBuild.result}"
	}

}

젠킨스 관리자의 메일이 이미 전역 환경 설정에서 정의됐다면 DSL의 mail 문장을 이용해 메일을 발송할 수 있다. 스크립트 방식의 파이프라인에 빌드 후 작업으로 항상 메일을 보내는 내재된 명령이나 기능이 없기 때문에 그루비의 try-catch-finally 문법을 사용하게 됐다.

이는 젠킨스의 기능 중 빌드 후처리 부분이 호환되지 않은 예시다. DSL 명령어는 이러한 상황에서 내장 명령어를 제공하지 않을 수 있다. 이러한 경우 젠킨스가 하는 일을 흉내내는 그루비 명령어를 사용할 수 밖에 없을 수 있다.

서술적 파이프라인 구조를 선택했다면 대부분의 경우 젠킨스 기능에 대응하는 내장 명령어가 존재하는데 예를 들어, 서술적 파이프라인 문법에서 기존의 빌드 후처리와 알림은 빌드 후처리 단계를 수행하는 post 영역에서 수행할 수 있다.

pipline {
	agent any
	stages {
		stage ("dowork") {
			stpes {
				//필요한 작업 수행
			}
		}
	}

	post {
		always {
			mail to: "[email protected]",
				subject:"STATUS FOR PROJECT: ${currentBuild.fullDisplayName}",
				body: "RESULT: ${currentBuild.result}"
		}
	}
}