일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- db
- 애니메이션
- React JS
- 함수
- 리엑트
- 바인딩
- Flutter
- .NET
- 오류
- Animation
- 마우이
- Binding
- JavaScript
- MS-SQL
- spring boot
- 닷넷
- page
- MSSQL
- listview
- GitHub
- Maui
- 플러터
- typescript
- Firebase
- AnimationController
- 파이어베이스
- 깃허브
- 자바스크립트
- HTML
- MVVM
- Today
- Total
개발노트
4. [Jenkins] Git Hub WebHook 설정하기 본문
*WebHook을 연결하기전 준비
개발자가 Repository(GitHub)로 Push하면 WebHook이 발생하고 Jenkins가 GitHub에서 발생된 WebHook을 알아차리고 자동으로 빌드하는 기능을 만들어본다.
다만, WebHook을 설정하기 위해서는 Jenkins 주소가 Public해야한다.
localhost:Port 로는 WebHook 설정이 불가능하다는 이야기이다.
이를 해결하기 위해 포트포워딩(보안 취약)이나 ngrok(8시간 무료버전), localtunnel같은 툴을 설치하여 localhost를 외부에서 접속할 수 있도록 만들어줘야한다.
그렇다면 그나마 보안에 덜 취약한 localhost 나 ngrok를 외부에서도 접근할 수있도록 미리 설정을 해보자.
*localtunnel와 ngrok 설치법은 이전 포스팅을 참고하시기 바랍니다.
Webhook 연결하기
1. GitHub에 있는 프로젝트에 접속한다.
2. 우측상단에 Settings를 클릭한다.
3.Webhooks > Add webhook 버튼 클릭
4. localtunnel 나 ngrok 외부 도메인을 생성한다. (생성법은 이전 포스팅에 있음)
5. Payload URL에 아래 형식과 같이 입력하고 Content Type을 application/json으로 체크한 뒤,Webhook을 만든다.
- payload URL 형식: "생성된 도메인" + "ngrok의 Port" + "github-webhook"
예시) http://hello.co.kr:80/github-webhook/
6. 젠킨스 프로젝트 > 구성로 들아가서 아래 항목을 체크해준다.
- GitHub hook trigger for GITScm polling
7. VisualStudio로 가서 소스수정 후, 커밋, Push를 GitHub로 보내본다.
8. 젠킨스가 바로 빌드를 한다.
9. 콘솔 아웃으로 가서 빌드된 정보를 확인한다.
1) 누가 Push 했는지 나옴
2) 사용된 Credential
3) Visual Studio에서 적었던 Commit Massage
4) 알림이 전송된 E-mail
*아래와 같이 화난 젠킨스가 나오면 명령이 정상작동하지 않은 것이다.
여기까지 완료했다면 DevOps에서 CI까지 완료된 것입니다.
다음시간에는 CD를 구축해보겠습니다. (추가로, SSH로 CI구축도)
'형상 관리 > Jenkins' 카테고리의 다른 글
3. [Jenkins] E-mail 연동하기 (0) | 2022.04.06 |
---|---|
2. [Jenkins] GitHub Jenkins 연동하기 (0) | 2022.04.06 |
1. [Jenkins] CI/CD Free Tool 젠킨스 설치하기 (0) | 2022.04.01 |