2.5. Jenkins 에이전트 pod 보존

Jenkins 에이전트 pod는 빌드가 완료되거나 중지되면 기본적으로 삭제됩니다. 이 동작은 Kubernetes 플러그인 pod 보존 설정을 통해 변경할 수 있습니다. pod 보존은 각 pod 템플릿에 대한 재정의를 통해 모든 Jenkins 빌드에 대해 설정할 수 있습니다. 지원되는 동작은 다음과 같습니다.

  • Always는 빌드 결과에 관계없이 빌드 pod를 유지합니다.
  • Default 는 플러그인 값을 사용합니다. 이 값은 pod 템플릿만 사용합니다.
  • Never는 pod를 항상 삭제합니다.
  • On Failure는 빌드 중 실패하면 pod를 유지합니다.

pod 보존은 Pipeline Jenkinsfile에서 재정의할 수 있습니다.

podTemplate(label: "mypod",
  cloud: "openshift",
  inheritFrom: "maven",
  podRetention: onFailure(), 1
  containers: [
    ...
  ]) {
  node("mypod") {
    ...
  }
}
1
podRetention에 대해 허용되는 값은 never(), onFailure(), always()default()입니다.
주의

보존된 pod를 계속 실행하면서 리소스 할당량에 대한 계산에 반영할 수 있습니다.