'jenkins'에 해당되는 글 3건

  1. 2016.11.16 Jenkins에서 CakeBuild 사용하기
  2. 2016.01.25 Jenkins & Slack 연동하기
  3. 2016.01.04 [C#] NUnitLite, Jenkins CI 연동하기
(OSX 기준으로 작성됨)

빌드 스크립트 실행하기
 

젠킨스 파라미터를 ScriptArgs로 넘기고 싶을 때


빌드 타겟 태스크 설정하기


'CI' 카테고리의 다른 글

Jenkins에서 CakeBuild 사용하기  (0) 2016.11.16
Jenkins & Slack 연동하기  (0) 2016.01.25
Posted by pjc0247
TAG cake, jenkins

Jenkins & Slack 연동하기

CI 2016.01.25 11:53


  + 

젠킨스와 슬랙을 연동하여, 젠킨스의 빌드 시작, 성공 여부, 빌드 이슈등의 알림을 슬랙 메신저를 통해 실시간으로 받아볼 수 있습니다.

일반적으로 빌드 시작 등의 이벤트는 별로 의미가 없지만, 빌드 실패 또는 테스트 실패같은 중요한 이벤트의 경우 슬랙으로 실시간으로 푸시와 알림을 받을 수 있기 때문에 유용합니다.
(현재 개발중인 C# 프로젝트를 연동해서 쓰고 있는데 매우 편리합니다.)



먼저 젠킨스의 플러그인 관리 페이지에 접속합니다.


그 후 SlackNotification Plugin을 검색하여 설치합니다.
(프로젝트 페이지 : https://github.com/jenkinsci/slack-plugin)


설치 후 젠킨스를 재시작한 뒤, 아래 주소로 접속합니다. 슬랙에는 로그인이 유지된 상태여야 합니다.
(https://my.slack.com/services/new/jenkins-ci)


(접속하면 보이는 화면)


이곳에서 빌드 이벤트를 어떤 채널, 또는 DM으로 보낼 지 설정이 가능합니다. 원하는 채널을 설정하고 Add Jenkins Configuration 버튼을 클릭합니다.



다음을 누르면 나타나는 페이지에 Token 항목이 있습니다. 이 값은 나중에 사용되므로 저장합니다.

나머지는 별로 설정할것이 없습니다. 젠킨스의 각종 알림 설정은 Slack 에서 하는것이 아닌 젠킨스측에서 하는것이기 때문에 이곳에서는 그냥 Save Settings 버튼을 누르고 넘어갑니다.


이제 다시 젠킨스로 돌아옵니다.

연동하고자 하는 빌드 아이템의 '구성' 화면에 들어오면 Slack Notifications 항목이 추가된것을 확인할 수 있습니다.
(추가되지 않았다면 플러그인 설치 후 반드시 재시작해주세요)


이곳에서 어떠한 알림을 슬랙으로 전송할것인지 설정합니다.

빌드 시작, 중단, 실패, 성공 등의 알림을 받을 수 있습니다.


Slack Notifications 하단의 고급 버튼을 누르면 이러한 설정 창이 나타납니다. 이곳에 값을 입력합니다.
토큰 값은 아까 저장한 문자열입니다.

고급 설정 오른쪽에 Test Connection 버튼이 있는데, 이 버튼을 이용해 설정이 잘 완료되었는지 검사할 수 있습니다.



마지막으로 빌드 후 조치 Slack Notifications 항목을 추가합니다.


이제 실제로 빌드를 수행해보고 슬랙에 메세지가 잘 도착하는지 테스트하는일만 남았습니다.


위와 같이 빌드가 수행되고, 빌드 결과가 채널에 도착하면 성공입니다.



'CI' 카테고리의 다른 글

Jenkins에서 CakeBuild 사용하기  (0) 2016.11.16
Jenkins & Slack 연동하기  (0) 2016.01.25
Posted by pjc0247
TAG jenkins, slack

http://pjc0247.tistory.com/26

위 글에 이어서 NUnit Lite와 Jenkins CI를 연동하는 방법에 대해서 알아봅니다.


Jenkins 쪽의 환경을 구성합니다. 아래 과정은 이 글에서는 생략합니다.

1. 아이템을 만들고,
2. SVN, Git에서 체크아웃되도록 설정한 뒤
3. 프로젝트를 빌드합니다.

프로젝트의 빌드는 MSBuild 플러그인을 사용하면 편리합니다.


젠킨스에 NUnit 플러그인을 설치합니다.
https://wiki.jenkins-ci.org/display/JENKINS/NUnit+Plugin

이 플러그인은 이전 글에서 언급한 테스트 결과 xml 파일을 읽어서 젠킨스상에 표시해주는 역할을 합니다. 또한 테스트 결과가 실패일 경우 빌드 결과도 실패로 표기합니다.


(Jenkins에 NUnit 플러그인을 설치해 구성한 모습, 젠킨스에서 각 빌드별 테스트 보고서를 볼 수 있게 됩니다,)


젠킨스 구성 설정에서 아래와 같이 빌드 스텝을 설정합니다. MSBuild가 생성한 exe 파일을 실행하고, 테스트 결과를 TestResult.xml로 출력하는 코드입니다. 이 스텝은 당연히 MSBuild 이후에 실행되도록 구성해야 합니다.

Mono 환경을 이용한다면 (윈도우가 아닐 때), mono 명령어를 이용하면 exe를 실행할 수 있습니다.


옵션에 nunit2 포멧을 지정하는 이유는, 현재 Jenkins NUnit 플러그인이 3 버전을 지원하지 않는 문제가 있기 때문입니다. ( https://issues.jenkins-ci.org/browse/JENKINS-27906 )

빌드 후 조치에 Publish NUnit test result report 항목을 추가합니다.
설정에 테스트 결과가 출력된 xml 파일의 경로를 지정합니다.


이후 빌드를 실행하면, 각 빌드별로 테스트가 실행되며, 실패한 테스트가 있을 경우 테스트 리포트를 받아볼 수 있습니다.



* 추가로 빌드 상태 뱃지를 추가하면 아래와 같이 빌드 & 테스트 상태를 Github 등에서 알릴 수 있습니다.
(
https://wiki.jenkins-ci.org/display/JENKINS/Embeddable+Build+Status+Plugin)


Posted by pjc0247
TAG jenkins, NUnit