2013-02-25 2 views
1

SVN 커밋이 새 빌드를 트리거하도록 Hudson 연속 통합 서버를 설정하려고합니다. SVN 서버 구성과 관련하여 stackoverflow에 대한 많은 질문과 답변을 보았지만 허드슨을 구성하는 데는별로 도움이되지 않았습니다.SVN 포스트 커밋 트리거가 수신되었을 때 Hudson 프로젝트가 빌드되지 않음

커밋시 Hudson에 연락 할 SVN 서버에 커밋 후크를 추가했습니다. 여기에 설명 된 것처럼 포스트 커밋 후크를 사용하고 있습니다 : http://wiki.hudson-ci.org/display/HUDSON/Subversion+Plugin

하지만 빌드가 SVN 커밋 후에 트리거되지 않습니다. 나는 위의 포스트 커밋 후크 스크립트의 UUID 값을 가지고 허드슨 서버에 내 자신의 HTTP POST 요청을 보내

http://<server>/hudson/subversion/<uuid>/notifyCommit?rev=<rev> 

허드슨 로그가 보여 그 후 다음 : 그래서

WARNING: No subversion jobs using SCM polling 

내 HTTP POST 요청이 허드슨에 도달하고 있지만 허드슨은이 알림에 대해 아무 것도 할 일이 없다고 불평하고 있습니다.

위의 링크에 따르면, 나는 (a) SCM 폴링 (모든 일정으로 충분) 및 (b) 익명 읽기 액세스 허용 및 (c) 교차 사이트 악용 확인 비활성화를 설정해야합니다.

그래서 야간 빌드에 SCM 폴링을 사용하도록 허드슨 작업 중 하나를 구성하고 사이트 간 익스플로잇 확인이 비활성화되었는지 확인했습니다. 또한 "보안 사용"옵션이 비활성화되어 익명 읽기 액세스가 허용된다고 가정합니다.

그런 다음 SVN 커밋 알림을 나타내는 HTTP POST 요청을 다시 보냈습니다. 이번에는 시스템 로그에 메시지가 없으므로 SCM 폴링없이 작업에 대한 경고가 없음을 의미합니다. 그러나 아직 빌드가 없습니다.

허드슨은 HTTP POST 요청을 통해 빌드 트리거를 인식 할 수 있으며 빌드 트리거를 받아 들일 수 있지만 빌드를 트리거하지 못하는 SCM 폴링이있는 작업이 있음을 알고 있습니다.

이 문제를 해결하기 위해 내가해야 할 일이 궁금합니다. 보안을 활성화하고 익명 읽기 액세스를 명시 적으로 허용해야합니까? 또는 "누구든지 할 수있는 일"인증 옵션을 활성화 하시겠습니까? 어떤 방법으로 SCM 폴링을 변경해야합니까 (현재 "0 2 * * *"로 설정)?

도움을 주시면 감사하겠습니다.

편집 : 나는 Tomcat 내에서 Hudson을 실행 중이며 Windows XP에서는 Tomcat이 서비스로 시작됩니다. 변경 사항을 찾고, 폴링을 선택하고 일정에 넣어 경우

1), 그 작업이 실행됩니다

답변

1

은 v3.0.0 (v2.2.1 이하)하기 전에, 허드슨 폴링 기능은 두 가지 의미를 가지고 지정된 시간에. 이 작업은 폴링이 전혀없는 빌드 작업과 마찬가지로 SCM의 모든 커밋 후크를 무시합니다.

2) 폴링을 활성화하지만 실제 폴링 필드는 공백으로 남겨 두십시오.. 이렇게하면 허드슨은 "수동적"으로 설문 조사를 할 수 있습니다. 즉, 커밋 이후 트리거가 허드슨에 도착할 때까지 아무렇게나 앉지 만 그 시간에 빌드 작업이 실행됩니다.

내가 권장 한대로 폴링을 사용하도록 설정했지만 일정을 지켜야합니다. 이 문제가 해결되면 커뮤니티에 알려주십시오.

관련 문제