오랜만에 한국 사용자 그룹에 글을 남깁니다.
다들 바쁘신지 요새 활동들이 뜸하시군요.
제가 요즈음 jenkins-ci를 하부 인프라로 활용한 빌드 시스템을 하나 개발해보려고 하고 있는데요.
jenkins-ci의 기능들을 원격에서 제어하는 인터페이스로 groovy와 jenkins-cli.jar를 활용해보려 하고 있습니다.
(서울 meetup행사 때, 장승희 선임께서 groovy로 jenkins를 제어하는 tip을 공유해 주셨던게 기억이 있어서...)
하다가 보니 몇 가지 정리가 안되는 부분들이 있어서 이렇게 글을 올려봅니다.
** 특정 빌드 노드의 특정 executor에서 빌드를 진행을 수행하도록 하는 방법이 있는가?
구현하고자 하는 시스템의 특징중 하나가 빌드가 실패한 경우 원인을 해결하고 다시 시작하면 처음부터
다시 빌드가 진행되는 것이 아닌 빌드가 실패하여 중단되었던 지점부터 다시 빌드를 수행되어야 합니다.
이게 가능하기 위해서는 빌드 재시작시 실패된 빌드가 있었던 worksapce에서 빌드가 수행이 되어야 하는데요.
특정 빌드 노드와 executor를 지정하여 빌드를 수행할 수 있어야 합니다.
** 빌드노드 추가/삭제가 가능한가?
원격지에서 1회성으로 빌드 노드를 추가하여 사용하고, 삭제하는 것에 대한 방안이 있는가가 고민입니다.
jenkins-cli.jar에서 connect-node 인터페이스가 제공되는 것은 확인하였습니다만 node를 추가하는 인터페이스는 없다군요.
groovy script로 node를 추가하는 인터페이스가 구현가능한지 궁금합니다.
ssh 방식으로 사용자 id와 password등을 넘겨 받아 생성할 수 있으면 합니다.
그 외에 groovy로 jenkins를 제어하는데 참고할만한 자료가 있으면 공유 부탁드리겠습니다.
감사합니다.