Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

webhook이 동작을 안합니다. #307

Closed
taking opened this issue Oct 1, 2017 · 7 comments
Closed

webhook이 동작을 안합니다. #307

taking opened this issue Oct 1, 2017 · 7 comments
Labels
Milestone

Comments

@taking
Copy link

taking commented Oct 1, 2017

Jenkins 에 build remotely 를 사용하고자 webhook 을 만지고 있는데
하루동안 삽질한 결과.. 동작을 안하는 것 같습니다.

bitbucket 으로 동일하게 테스트 결과 정상작동하지만 yona 에서는 webhook이 동작이 안됩니다.

curl https://[ID]:[API KEY]@jen.taking.kr/job/[PROJECT_NAME]/build?token=[TOKEN]

위와 같은 방식으로 ssh 에서 진행 시, build 가 진행됩니다.

  1. bitbucket webhook 정상작동 (build 진행)
  2. yona webhook 작동안됨 (build 진행 불가) - 이 부분에 대해서 따로 로그를 볼 수 있는지 궁금합니다.

Jenkins 에 있는 bitbucket 플러그인을 사용한 것이 아닌 순수 webhook 만 사용해서 진행했습니다.

CSRF Protection 옵션은 끈 상태고 Allow anonymous read access 는 체크해둔 상태입니다.

repo.yona.io 에서도 동일하게 webhook이 동작을 안합니다.

제가 사용을 잘못하고 있는건지.. yona document 에서도 해당 webhook에 관련된 내용이 없어 정확히 모르겠습니다.

@hongwonjun
Copy link
Collaborator

혹시 webhook 주소 등록시 Git push only 체크를 하셨나요?

@taking
Copy link
Author

taking commented Oct 3, 2017

@hongwonjun
네 체크해보고 안하고 해보고 진행을 해봤으나 동일하네요.
'https://[ID]:[API KEY]@jen.taking.kr/job/[PROJECT_NAME]/build?token=[TOKEN]'
'https://[ID]:[API KEY]@jen.taking.kr/buildByToken/build?job=[PROJECT_NAME]&token=[TOKEN]'

위 두가지 방법으로 curl 또는 웹접속 시는 정상적으로 빌드는 진행됩니다

@doortts
Copy link
Collaborator

doortts commented Oct 3, 2017

@taking Yona의 webhook은 POST로 동작합니다. 확인결과 code push 시에 webhook이 동작하지 않는 것을 ㅗ학인하였습니다. Bug 로 등록합니다. git push webhook bug 영향버전은 1.7.0 ~ 1.8.0 까지 입니다.

@doortts doortts added the bug label Oct 3, 2017
doortts added a commit that referenced this issue Oct 3, 2017
@doortts doortts added this to the 1.8.1 milestone Oct 3, 2017
@doortts
Copy link
Collaborator

doortts commented Oct 8, 2017

@taking 패치를 만들어서 repo.yona.io 적용해 놓았는데요 https://reop.yona.io 에서 테스트 부탁드려도 될까요?

@taking
Copy link
Author

taking commented Oct 9, 2017

@doortts 네 repo.yona.io 에서 테스트를 진행해봤습니다.
Testcase 8개 중에 2개만 정상 동작했습니다.

테스트 진행은 다음과 같이 진행했습니다.

  1. jenkins 'tester' 유저 생성하여, ID와 API Token 생성
  2. yona.repo.io에 tester 공개 저장소 생성
  3. jenkins에 tester 빌드 생성
  4. Centos 7.1 리눅스 및 MacOS에서 curl로 신호 시 빌드 진행확인
  5. yona.repo.io에 tester 공개 저장소에 webhook 등록
  6. git push 체크 및 언체크 테스트 진행

테스트 내용
성공
success_01
success_02

  • 성공한 경우 '전송할 주소'에 token을 같이 기입한 경우와 Git push가 이루어져야 합니다.

실패
failed_01
failed_02

  • git push only 가 체크 해제가 되어 있는 경우에는 어떠한 상황에서라도 webhook이 동작하지 않습니다.

  • git push only가 체크되어 있는 경우 실패한 경우에는 보안 토큰을 따로 '보안 토큰 input textbox'에 분리해서 넣은 경우입니다.

  • git을 통한 Push에 의해서만 webhook이 동작하고 저장소 내의 Edit 기능을 통해 Commit이 되는 경우에는 webhook이 동작하지 않습니다. webhook의 git push only 를 '체크 해제' 또는 '체크' 일 경우 모두 테스트해보았으나 이 부분은 적용되지 않는데 맞는건가요?

@doortts
Copy link
Collaborator

doortts commented Oct 10, 2017

@taking
확인해주셔서 고맙습니다. webhook 페이지에 설명을 추가해 보았습니다. 한 번 봐주세요.

참고로, 이야기주신대로 현재 online commit의 경우 webhook이 triggering 되지 않습니다.

@taking
Copy link
Author

taking commented Oct 10, 2017

@doortts
webhook 페이지에 설명도 확인하였고,
webhook의 git push가 repo.yona.io 에서 정상적으로 동작 확인하였습니다.
감사합니다 ! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants