Daylogs/Etc

CLI로 젠킨스 설정 업데이트하기

ohgyun 2018. 10. 29. 21:18
발생일: 2018.10.29

키워드: jenkins, 젠킨스, manage jenkins, reload configuration in command line, 설정 업데이트

문제:

젠킨스의 설정 파일인 config.xml 을 직접 변경하고 나면,
Manager Jenkin (Jenkins 관리) 메뉴에 들어가서 Reload Configuration from Disk  버튼을 눌러야 실행 중인 젠킨스에 반영된다.

CLI로 바로 업데이트 할 수 없을까?


해결책:

터미널에서 아래와 같이 호출하면 된다.

    $ java -jar jenkins-cli.jar -s [JENKINS_URL] -auth [ID:PW] reload-configuration


난 젠킨스가 실행되고 있는 환경에서 바로 실행해서 아래와 같이 localhost 로 호출했다.

    $ java -jar jenkins-cli.jar -s http://localhost:8080 -auth ${id}:${password} reload-configuration


jenkins-cli.jar 파일은 젠킨스 URL에서 다음 주소로 다운로드 받을 수 있다.

    /jnlpJars/jenkins-cli.jar 


젠킨스가 실행되어 있는 서버의 터미널이라면, 아래처럼 호출하면 된다.

    $ curl -O http://localhost:8080//jnlpJars/jenkins-cli.jar



논의:

# REST API에는 없는 듯
우린 node-jenkins 클라이언트 모듈을 사용하고 있었는데, 이 라이브러리는 REST API를 호출하는 것 같더라.
내가 못 찾은 걸 수도 있는데, REST API에 설정 업데이트는 지원하지 않는 것 같다.

잡(job)이나 빌드 설정은 클라이언트 라이브러리를 활용하는 것이 편하다.


# 권한 필요
설정 업데이트는 젠킨스의 어드민 권한이 있어야 가능하다.
혹시 권한 문제로 실행되지 않는다면, Jenkins 관리 > Manage and Assign Role > Assign Roles 에서 설정해주면 된다.


참고:




반응형