Jenkins CLI 활용하기
Jenkins CLI 활용하기
안녕하세요, MLD 컴퍼니의 클라이언트 개발자 입니다.
MLD컴퍼니에서는 Jenkins에서 다양한 잡들을 만들어 사용하고는 하는데요.
이번 글에서는 Jenkins를 CLI로 Jenkins를 더 혹사시킬 수 방법을 공유드리려합니다.
[SSH Public Key 등록]
jenkins user 설정 에서 ssh key 등록을 하셔야 합니다.
[Jenkins CLI 설치]
Jenkins주소 뒤에 cli입력
- 예: http://jenkins.cocone-m.kr:1234/ → http://jenkins.cocone-m.kr:1234/cli
jenkins-cli.jar파일 다운로드
[사용가능한 명령어들]
아래의 스크린샷 외에도 많은 명령어들이 있으나
지금은 who-am-i
와 build
명령어만 공유드리겠습니다.
[사용법]
아래처럼 각각에 맞는 값을 입력해서 진행하시면 문제없이 작동합니다.
java -jar jenkins-cli.jar -s http://<jenkins_server>:<port>/ <command>
예를들어
- jenkins_server : jenkins.cocone-m.kr
- port : 1234
- command : who-am-i
java -jar jenkins-cli.jar -s http://jenkins.cocone-m.kr:1234/who-am-i
위처럼 제대로 실행되는것을 볼수있습니다.
이제 다른 젠킨스 잡들을 실행시키기 위해 build 커맨드를 사용하기에 앞써 해당 커맨드에는
아래의 옵션이 있습니다.
-c : Check for SCM changes before starting the build, and if there's no
change, exit without doing a build (default: false)
-f : Follow the build progress. Like -s only interrupts are not passed
through to the build. (default: false)
-p : Specify the build parameters in the key=value format. (default: {})
-s : Wait until the completion/abortion of the command. Interrupts are passed
through to the build. (default: false)
-v : Prints out the console output of the build. Use with -s (default: false)
-w : Wait until the start of the command (default: false)
위에서 -s -v -p 만 사용하겠습니다.
- -s
명령이 완료/중단될 때까지 기다립니다.
- -v
빌드의 콘솔 출력을 인쇄합니다. -s와 함께 사용
- -p
key=value 형식으로 빌드 매개변수를 지정합니다. (기본값: {})
- Test_Job에는 V_VERSION이라는 변수를 넣겠습니다.
java -jar jenkins-cli.jar -s http://jenkins.cocone-m.kr:1234/ build Test_Job -s -v -p V_VERSION=9999
아래처럼 로그를 통해 젠킨스 실행이 되는 것을 알수있습니다.
[이후에 활용 TIP]
- MLD 컴퍼니에서는
boto3
,gspread
**모듈을 사용해 AWS S3와 Google Sheet에서 리소스를 가져와 업로드하는 작업들을 자동화를 진행하고 있습니다. - 또한 계속 업데이트가 필요한 작업들은 배치파일을 통해 실행하면 가능합니다.