Jenkins Jenkins Rest API 사용기

황제낙엽 2020.03.26 13:15 조회 수 : 944

위와 같은 정보들을 XML, Json, Python Object 형태로 제공합니다.

자세한 사항은 Jenkins dashboard에서 우측하단에 존재하는 REST API 링크를 통해 확인 할 수 있습니다.

API 사용하기

    API Token 발급
    사용자정보 > 설정 > API Token 메뉴에서 Token 정보를 얻을 수 있습니다.

 

253E913F57CD76A015.png

 



    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

    결과 파싱
    XML/JSON/Python Ojbect로 결과를 받을 수 있습니다.
    결과정보를 읽어 적절하게 HTML로 렌더링하면 깔끔한 결과 화면을 만들 수도 있습니다.



Chrome Plugin인 POSTMAN으로 테스트 해 보기
2303424357CD76A113.png

 



JSON 타입 예

2253753557CD76A30A.png

 

* References

https://jenkins.io/doc/
https://wiki.jenkins.io/display/JENKINS/Remote+access+API
https://wiki.jenkins.io/display/JENKINS/Authenticating+scripted+clients

 

 

 

* Java 코드 샘플 (출처 : sitelink2)

- Main.java

- SecuredMain.java

 

 

번호 제목 글쓴이 날짜 조회 수
27 [2014~2015] gradle 영문 튜토리얼 (Getting Started With Gradle) 황제낙엽 2023.07.13 745
26 [Intellij, Spring Boot, Lombok, Gradle] 프로젝트에 lombok 추가 file 황제낙엽 2023.07.12 53
25 Maven 프로젝트를 Gradle로 변경하기 file 황제낙엽 2023.07.12 62
24 Maven, Gradle 의 비교와 Gradle + Eclipse에서 gradle의 빌드가 안될때 황제낙엽 2023.07.11 83
23 Jenkins 백업 (Thinbackup) file 황제낙엽 2021.07.22 143
22 Jenkins Restful API로 Job 과 Build 정보 조회 황제낙엽 2020.09.02 141
21 Jenkins+TFS 연동 예제 황제낙엽 2020.09.01 141
20 [Jenkins] Java Sample with Jenkins Restful API 황제낙엽 2020.08.12 195
19 Jenkins의 Restful API file 황제낙엽 2020.08.11 133
18 jenkins에서 tfs에 접속하여 브랜치와 변경집합으로 소스를 다운로드하는 예제 황제낙엽 2020.08.11 136
17 (Jenkins) Application Server의 Continuous Integration 구성의 필요성 file 황제낙엽 2020.05.20 93
16 Nexus Repository 황제낙엽 2020.05.20 66
» Jenkins Rest API 사용기 file 황제낙엽 2020.03.26 944
14 Ant 로 Java Application 실행시 Target 에 파라미터를 입력하여 Arguments 로 전달하여 실행시키기 file 황제낙엽 2012.06.05 2226
13 ANT에서 Classpath 설정시 순서 주의 황제낙엽 2010.07.10 451
12 Ant에서 "${java.class.path}"이 의미하는바 황제낙엽 2010.07.10 120
11 ANT 를 이용한 RMI 컴파일 ( rmic 로 stub 생성하기 ) 황제낙엽 2010.05.26 114
10 [Maven] 로컬 레파지터리에 사용자 jar 추가하기 file 황제낙엽 2010.04.20 281
9 Maven 툴을 이용한 효율적인 프로젝트 관리 방안 황제낙엽 2007.01.30 212
8 Jakarta Ant II탄 상세편 황제낙엽 2007.01.24 113