Spinnaker Jenkins integration fails with 403 No valid crumb was included in the request

Integrating Jenkins with Spinnaker through Halyard, every pipeline failed with: 403 No valid crumb was included in the request. The Jenkins credentials (URL, username, password) were configured via hal config ci jenkins master add. Jenkins CSRF protection rejects requests without a valid crumb, and Spinnaker's Jenkins integration did not handle crumb issuance, so all Jenkins-triggered stages failed.

Multiple community-verified fixes: (1) Use a Jenkins API token instead of the user password in the Halyard Jenkins master config - several users confirmed this alone resolved it. (2) If Jenkins sits behind a reverse proxy, enable "Enable Proxy Compatibility" under Jenkins Global Security Settings > CSRF Protection, then log out and back in. (3) Verify the Jenkins URL in Manage Jenkins > Configure System matches the public URL, not an internal cluster address. A code fix for crumb handling landed via spinnaker/igor#222 as well.

Source: https://github.com/spinnaker/spinnaker/issues/2067

Source: https://github.com/spinnaker/spinnaker/issues/2067