Jenkins

[Jenkins] Freestyle project

MASSO 2023. 11. 10. 22:27
728x90

파이프라인 만들기(실패)

 시작하기 전에 앞서 해야 할 일 : ngrok으로 포트 열기, 웹훅 설정하기
나는 로컬로 해놨기 때문에 포트를 열어줘야 외부에서 접근이 가능하다..
 

ngrok은 홈페이지 가서 설치 필요
설치 후 cmd > cd ngrok 설치 경로 > ngrok HTTP 포트번호
그럼 이렇게 나오는데, Forwarding의 '->' 좌측에 나오는 주소를 사용하면 된다.
이 주소를 Github > 사용할 리파지토리 > Settings > Webhooks 들어가서 해당 주소 + /github-webhook/ 추가해주면 웹훅 설정 끝~
/github-webhook/ 붙이는 거 꼬옥 기억하기
 
여기서부턴 Jenkins 설정

Build Triggers > GitHub hook trigger for GITScm polling
GitHub에 변경이 생겼을 때 자동으로 Build가 실행되게끔 하려면 체크해줘야 한다.
 

이건 파이프라인 스크립트를 작성하는 필드다.
옆에 try sample pipeline... 누르면 샘플 코드를 고를 수 있으니 활용해봐도 좋을 듯하다.
파이프라인 스크립트는 groovy 언어를 사용한다고 한다.
 

*node는 Jenkins 대시보드 내 설정에 있는 Nodes에서 설정할 수 있다.
난 테스트용으로 하나밖에 없기에 agent any로 대체해줬다.
node 설정 후 그 아래로 stage들을 작성해주면 된다.


설정을 마치고 젠킨스 프로젝트를 수동으로 빌드하여 작동 여부를 체크해본다.

잘 실행되었다. selenium 결과가 비정상인 이유는 URL 주소를 다르게 작성해서...ㅎㅎ
* 주의 : chromedriver랑 chrome이 상호 호환되는 버전인지 반드시 확인할 것.
안 된다면 버전을 맞춰줘야 한다!!! PATH 설정도 필수.
로그에 자꾸 driver 관련 오류가 찍혀서 뭔가 했는데 1. 버전 확인, 2. PATH 수정하니 해결되었다.
 

스크립트를 수정하고 다시 빌드해보니 정상 이동이 뜬다.
 

webhook 정상 작동-은 확인되는데 파이프라인으로 만든 건 안 되고 왜인지 freestyle project로 만든 것만 된다........?¿
* 이리저리 찾아보니 pipeline은 freestyle project에 있는 소스 코드 관리 등등의 UI들까지 모~두 스크립트로 짜야 한다고..;
groovy 언어를 잘 몰라서 그런 디테일한 부분까지 작성하는 건 아직 무리..
 
일단 안 되는대로 freestyle project로 스크립트 옮겨서 확인....
freestyle project에서는 Build Steps  > Execute Windows batch command 새로 추가해서 스크립트 써주면 된다.
 
freestyle project여도 순서를 지정할 수 있는데,
나는 체크아웃 > 빌드(gradle 옵션 따로 있음) > 테스트로 진행할 거였기 때문에 해당 순서대로 정렬했다.
 
어찌저찌 git push로 push까지 해보면~

파일이 잘 받아와졌음을 볼 수 있다.
 

이렇게 자동 빌드+테스트까지 정상적으로 완료!
진짜 오류 발견하고 수정하는 과정이 힘들긴 해도 결과적으로 이렇게 정상 작동하면 넘나 뿌듯.....!
 

잘 버텨준 나의 프로젝트들..^_^;

728x90

'Jenkins' 카테고리의 다른 글

[Jenkins] gradle  (0) 2023.11.05
[Jenkins] Jenkins 설치  (0) 2023.11.04
[CI/CD] JDK 설치  (0) 2023.11.04