
GitHub에서 Webhook을 추가하면 처음에는 설정한 URL로 ping을 보내어 확인한다.
그러나 나는 ping 메시지부터 jenkins 서버로부터 응답받지 못했다...
그래서 URL도 살펴보고, Webhook을 여러번 다시 생성했지만 해결되지 않았다...
이 문제의 원인은 Webhook을 보내는 GitHub IP에 대해 Jenkins와 SSH 포트에 접근을 막았기 때문이다.
이 문제를 해결하기 위해서는 GitHub의 IP 대역을 AWS EC2 보안 그룹에서 인바운드 규칙을 허용해주면 된다!
이제 자세한 방법을 살펴보자.
"hooks": [
"192.30.252.0/22",
"185.199.108.0/22",
"140.82.112.0/20",
"143.55.64.0/20",
"2a0a:a440::/29",
"2606:50c0::/32"
],

이렇게 위의 IP들에게 22번 포트 (SSH)와 Jenkins 포트를 허용시켜주면 된다!

ping도 잘 보내지고, main branch에 merge할 때도 Jenkins로 잘 보내졌다!