Jenkins 플러그인의 변경 사항을 배포하기 전에 어떻게 테스트합니까?


14

일부 기능을 손상시킨 플러그인 업그레이드로 물린 적이 있다면이 문제에 대해 몇 가지 생각을해야합니다. Jenkins 플러그인 업그레이드 정책은 무엇입니까? 변경 사항을 배포하기 전에 어떻게 테스트합니까?

새로운 버전을 테스트하기 위해 더미 작업을 실행하는 테스트 인스턴스를 가진 사람이 있습니까? 아니면 버전을 업그레이드해도 아무런 문제가되지 않기를 바랍니다.


Jeankins의 팀 정책 또는 (조직의) 정책을 의미합니까?
Dan Cornilescu

업그레이드하기 전에 Jenkins 노드의 스냅 샷을 찍어 테스트 해 보았습니다. 내 경험에 따르면 Jenkins는 미션 크리티컬 한 구성 요소가 아닙니다. 일부 플러그인 업그레이드로 인해 15 분 동안 "작동 중지"된 경우 일반적으로 어떤 방식 으로든 생산을 차단하지 않으므로 수동 개입이 허용됩니다. 물론, 그렇지 않은 경우 (그리고 Jenkins는 100 % HA 여야 함) 올바른 접근 방식이 아닙니다.
Assaf Lavie

@DanCornilescu 조직 정책은 내부 Jenkins 서버에 대한 것입니다
Michael Pereira

@AssafLavie Jenkins가 실행되는 방식에 따라 크게 다릅니다. 독립형 서버, VM, 도커 컨테이너, kubernetes 포드 (우리의 경우). 현재 상태의 스냅 샷을 만들어 복구하는 것이 쉽지 않을 수 있습니다. 이 경우 Jenkins 데이터를 보유하는 EBS 볼륨을 복제 할 수 있지만 컨테이너와 데이터 볼륨을 특정 상태로 복원하는 것은 수동적이고 시간이 많이 걸리는 프로세스입니다.
Michael Pereira

안녕하세요 @MichaelPereira 아래 두 가지 답변 중 하나라도 문제가 해결 되었다면 확인 표시를 클릭하여 수락하는 것을 고려 하십시오. 이것은 당신이 해결책을 찾았 음을 더 넓은 공동체에 알리고 응답자와 자신에게 명성을줍니다. 이를 수행 할 의무가 없습니다. 귀하의 질문에 대한 답변이 없다고 생각되면 의견에 저자와 자유롭게 연락하십시오.
Richard Slater

답변:


4

내가 일하는 회사의 정책에 따르면 개발, 사전 및 생산 환경이 있습니다 (일부 서비스 개발에서는 누락 될 수 있음). 그리고 새 버전 preprod-> tests-> validation-> prod의 경로.

우리의 경우에 preprod에서의 일자리는 prod로 구현할 때기도 할 필요가 없을 정도로 무겁고 복잡합니다. :)

참고 : 우리는 svn을 사용하여 구성을 유지하고 제공합니다. 우리는 제자리를 바꾸지 않습니다.


다른 Jenkins 서버의 구성을 어떻게 유지 관리합니까? 수동?
Michael Pereira

svn을 사용하여 구성을 유지하고 제공합니다. 우리는
제자리를 바꾸지

나는 이것이 완전히 질문에 대답하지 않는 것처럼 느낍니다. 이 답변에서는 배포 배포 방법을 설명하지만 배포 파이프 라인을 통해 변경 사항을 테스트하는 방법은 설명하지 않습니다.
jayhendren 2019

2

우리는 100 % HA Jenkins 환경이 필요했습니다. 우리는 종종 플러그인 / Jenkins 자체를 업그레이드합니다.

업그레이드 후 빌드가 중단되면 큰 두통이 발생합니다.

이것을 정렬하는 가장 안전한 방법은 실제로 데모 젠킨스 설정을 얻는 것입니다. 여러 Tomcat 응용 프로그램을 사용하는 동일한 컴퓨터에서이 저렴한 가격을 얻을 수 있습니다.

우리가 한 일은 별도의 (Demo) VM을 만들고 데모 VM에서 제품 설정을 복제하는 것입니다. 무엇이든 변경 / 업그레이드하기 전에 두 VM의 스냅 샷을 만듭니다. 그런 다음 데모 VM에서 업그레이드를 테스트합니다. 제대로 작동하면 Prod에서 변경하십시오.

누군가 당신이 계획하고있는 플러그인에 문제가 발생하면 (SE / SO와 같은) 커뮤니티를 찾을 수 있다고 생각합니다.


0

각 플러그인을 사용하는 모든 관련 프로젝트 / 지점에서 적어도 하나의 최근 녹색 (또는 거의 녹색) 레이블에서 항상 수동으로 재실행을 실행하고 동일한 결과를 얻었는지 확인합니다. 안전한 편이 되려면

플러그인 업데이트로 인한 것인지 아닌지를 결정하기 위해 모든 결과 불일치를 조사해야합니다. 이전 플러그인과 새 플러그인으로 다시 몇 번 더 실행할 수 있습니까?


물론 문제 없습니다.
Dan Cornilescu

과거의 경험에서 내 의견은 종종 그렇게 대중적이지 않으므로 일반적으로 가능한 경우 스포트라이트를 피하는 경향이 있습니다. :) 나는 또한 모드 도구에 익숙하지 않습니다. 그러나 도움이 필요한 경우 특히 도움이되지 않습니다.이 사이트에 대한 기대가 높습니다.
Dan Cornilescu
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.