티스토리 뷰
CI 빌드에서 아래와 같은 정보들을 확인하고 있습니다.
- TestCase 수행결과
- CheckStyle
- klockwork
- Clover Code Coverage
이 외에도 많은 정보들이 있을 수 있습니다.
이런 정보들을 매일 취합하여 메일로 발송해 주는 기능을 만들면서 Jenkins REST api를 사용해 보고 정리해 보았습니다.
Jenkins REST api란?
jenkins를 관리할 수 있는 기능을 제공하는 api입니다.
- Job 생성/수정/삭제
- Job 수행 및 결과 조회
- Jenkins Plugin이 제공하는 결과 조회
위와 같은 정보들을 XML, Json, Python Object 형태로 제공합니다.
자세한 사항은 Jenkins dashboard에서 우측하단에 존재하는 REST API 링크를 통해 확인 할 수 있습니다.
API 사용하기
- API Token 발급
사용자정보 > 설정 > API Token 메뉴에서 Token 정보를 얻을 수 있습니다.
- API url 호출
기본적인 URL 형식은 아래와 같습니다.
http://[jenkins url]/[원하는 경로]/[api]/[Action]?[Condition]
- URL 생성 규칙
- Job 생성
[POST] http:// [jenkins url] / jenkins / createItem ? name=JOBNAME
- Job 조회
[GET] http:// [jenkins url] / jenkins / job / JOBNAME / api / json
- Job 빌드 수행
[POST] http:// [jenkins url] / jenkins / job / JOBNAME / build
- Job 빌드 결과 조회
[GET] http:// [jenkins url] / jenkins / job / JOBNAME / [build number] / api / json
- Job 빌드 결과 조회 - 마지막 성공 빌드
[GET] http:// [jenkins url] / jenkins / job / JOBNAME / lastStableBuild / api / json
- Jenkins Plugin 결과 조회
[GET] http:// [jenkins url] / jenkins / job / JOBNAME / lastStableBuild / cobertura / api / json
[GET] http:// [jenkins url] / jenkins / job / JOBNAME / lastStableBuild / checkstlyaresult / api / json
[GET] http:// [jenkins url] / jenkins / job / JOBNAME / lastStableBuild / testReport / api / json
- Job 생성
- URL 생성 규칙
- 결과 파싱
XML/JSON/Python Ojbect로 결과를 받을 수 있습니다.
결과정보를 읽어 적절하게 HTML로 렌더링하면 깔끔한 결과 화면을 만들 수도 있습니다.
Chrome Plugin인 POSTMAN으로 테스트 해 보기
JSON 타입 예
참고
- https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API
- https://wiki.jenkins-ci.org/display/JENKINS/Authenticating+scripted+clients
'Tool > Jenkins' 카테고리의 다른 글
Jenkins 2.0 에서 Security 설정 초기화하기 (0) | 2016.06.22 |
---|---|
Jenkins2.0 무엇이 달라졌는가? (0) | 2016.06.22 |
Jenkins Custom Plugin UpdateSite 등록하기 (0) | 2016.06.22 |
Jenkins 2.0 무작정 따라하기 (0) | 2016.06.22 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- jackson
- jenkins2.0
- 태그를 입력해 주세요.
- Hdfs
- Git
- 책요약
- HADOOP
- bigdata
- java
- jenkins
- flume
- 데이터 리터러시
- mysql
- 데이터과학자
- 알고리즘
- Sqoop
- Learning Spark
- linux
- mongodb
- PYTHON
- 확률분포
- exception
- db
- Django
- spark
- Apache Spark
- spring
- json
- mongo
- Oracle
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
글 보관함