Debugging Jenkins integration with Deployment Manger Issues
The Jenkins task in Deployment Manager can be used to run tasks which are not directly supported by Deployment Manager, for example, to run Selenium tests or run any Pipeline Script or Performance tests.You can find more information about configuring Jenkins here Configuring Jenkins.
Below are few common issues which you might face when you configure and run Jenkins task in Deployment Manager.
Authentication Issues (401 Error):
Problem: Jenkins task fails with the error “Reason: the server responded with a HTTP 401 code, indication an authorization problem”
Solution:
- The common reason for this failure is with Authentication profile configured in Pipeline Settings under External orchestration server tab. Please recheck the Authentication Profile and rerun the diagnostics to validate the connection.
- You can also view Deployment logs to get complete logs for further troubleshooting.
Build is not Parameterized (500 Error):
Problem: Jenkins task fails with the error “Reason: the HTTP response code of 500 indicated a server error. The response data may contain a reason”
Solution:
- The most common reason for this failure message is Deployment Manager requires the Jenkins Job to be Parameterized.
- Please follow steps 5 and 6 from Configuring Jenkins to make Jenkins job parameterized. You should have BuildID and CallBackURL as parameters.
- You can also view Deployment logs to get complete logs for further troubleshooting.
Unable to reach Jenkins server:
Problem: Jenkins task fails with the error “Connect to xx.xxx.xxx.xx failed: Connection refused”
Solution:
- The most common reason for this failure message is Deployment Manager Orchestrator is unable to reach Jenkins Server because for wrong URL or port number.
- To fix this please ensure that you have entered correct URL in External orchestrator tab under Pipeline Settings.
- Please ensure that you have whitelist Jenkins server to the Orchestrator environment if you are on cloud.
- Please rerun the Diagnose Pipeline to Validate the connection to Jenkins Server.
Resource does not exist (404 Error):
Problem: Jenkins task fails with the error “the server responded with a HTTP 404 code, indicating that resource does not exist “
Solution:
- The most common reason for this failure message is Deployment Manager Orchestrator is unable to find the Job configured in Jenkins Tasks.
- To fix this please ensure that you have entered the correct Job name in Jenkins task.
No valid crumb was included in the request (404 Error):
Problem: Jenkins task fails with the error “403 No valid crumb was included in the request
Solution:
- The most common reason for this error when we enable CSRF and valid crumb is not sent from Deployment Manager.
- Support for Jenkins CSRF is provided in Deployment Manager starting 4.4 , you can upgrade to latest version of Deployment Manager by downloading latest version from https://community.pega.com/marketplace/components/deployment-manager.