Hello Jenkin-users, I am having an issue with a Jenkins CI configuration where a notification of build completion is sent to an external servlet that will perform additional (large) integration tests on the artifact produced by the build. The notification is sent using the HTTP method (i.e. POST sending a json struct with build status information).
My problem is that the servlet's location (DNS and IP) cannot be fixed (it's randomly scheduled in a cluster), and so it needs to be found using a name service that returns a standard HTTP redirect. However, the Jenkins HTTP client doesn't seem to follow the redirect. If I plug (in the Jenkins project configuration) the temporary address of the servlet endpoint to notify, all goes fine, but when I put the corresponding address of the same endpoint at the redirect service, nothing reaches the servlet. However, I have verified with curl that the redirect service is working correctly. In other words, this works (hostnames edited for security reasons): *bash$ export HOSTPORT="http://redirect_service.example.com/redirect/my_servlet"; \* *curl -L -v -H "Content-Type: application/json" -X POST -d \* *'{"name":"my_project","url":"job/my_project/","build":'\* *'{"full_url":"http://ci.example.com/job/my_project/8409/","number":8409,'\* *'"phase":"FINISHED","status":"SUCCESS","url":"job/my_project/8409/"}}' ${HOSTPORT}/notify_build* But specifying "*http://redirect_service.example.com/redirect/my_servlet/notify_build" *as the HTTP notification endpoint in the Jenkins configuration page for the project does not - the notification does not get through. Is this a known problem/bug? Thanks Franco