Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-74951

Jenkins build does not appear in the PR builds tab if PR title length is 212+ symbols

XMLWordPrintable

      Plugin fails to send request to bitbucket if PR title length > ~212 symbols.

      Required:

      • multibranch pipeline with a connection to the Bitbucket (so in Bitbucket PR build page /projects/{p}/repos/{r}/pull-requests/{id}/builds appears corresponding Jenkins builds)

      Steps to reproduce:

      • Create a PR in the Bitbucket with title length close to max allowed (250 symbols), or at least more than +-212 symbols
      • Trigger build (manually or automatically)

      Expected result:

      • jenkins job should notify bitbucket about the build status changes and build should appear in the Builds tab
      • plugin should work with 250 symbols PR titles, as Bitbucket allows that length

      Actual result: 

      • Plugin fails to send requests to Bitbucket and throws exception (silently, job continues to work)
      • Bitbucket does not receive status updates, so build does not appear in the PR builds tab

      Stacktrace from the jenkins job log:

      [Bitbucket] Notifying pull request build result
      ERROR: Could not send notifications
      com.cloudbees.jenkins.plugins.bitbucket.api.BitbucketRequestException: HTTP request error. Status: 400: .
      HttpResponseProxy{HTTP/1.1 400  [Cache-Control: no-cache, no-transform, Content-Type: application/json;charset=UTF-8, Date: Wed, 04 Dec 2024 16:36:32 GMT, Vary: x-ausername,x-auserid,cookie,accept-encoding, X-AREQUESTID: ..., X-AUSERID: ..., X-AUSERNAME: ..., X-Content-Type-Options: nosniff, transfer-encoding: chunked, Connection: keep-alive] org.apache.http.client.entity.DecompressingEntity@c4438ca}
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.server.client.BitbucketServerAPIClient.doRequest(BitbucketServerAPIClient.java:1200)
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.server.client.BitbucketServerAPIClient.postRequest(BitbucketServerAPIClient.java:1153)
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.server.client.BitbucketServerAPIClient.postRequest(BitbucketServerAPIClient.java:1141)
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.server.client.BitbucketServerAPIClient.postBuildStatus(BitbucketServerAPIClient.java:530)
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.BitbucketChangesetCommentNotifier.buildStatus(BitbucketChangesetCommentNotifier.java:50)
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.BitbucketBuildStatusNotifications.createStatus(BitbucketBuildStatusNotifications.java:164)
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.BitbucketBuildStatusNotifications.sendNotifications(BitbucketBuildStatusNotifications.java:209)
      	at PluginClassLoader for cloudbees-bitbucket-branch-source//com.cloudbees.jenkins.plugins.bitbucket.BitbucketBuildStatusNotifications$JobCompletedListener.onCompleted(BitbucketBuildStatusNotifications.java:291)
      	at hudson.model.listeners.RunListener.lambda$fireCompleted$0(RunListener.java:223)
      	at jenkins.util.Listeners.lambda$notify$0(Listeners.java:59)
      	at jenkins.util.Listeners.notify(Listeners.java:67)
      	at hudson.model.listeners.RunListener.fireCompleted(RunListener.java:221)
      	at PluginClassLoader for workflow-job//org.jenkinsci.plugins.workflow.job.WorkflowRun.finish(WorkflowRun.java:645)
      	at PluginClassLoader for workflow-job//org.jenkinsci.plugins.workflow.job.WorkflowRun$GraphL.onNewHead(WorkflowRun.java:1068)
      	at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.notifyListeners(CpsFlowExecution.java:1545)
      	at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsThreadGroup$3.run(CpsThreadGroup.java:521)
      	at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService.lambda$wrap$2(CpsVmExecutorService.java:85)
      	at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.java:139)
      	at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.java:28)
      	at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:68)
      	at jenkins.util.ErrorLoggingExecutorService.lambda$wrap$0(ErrorLoggingExecutorService.java:51)
      	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
      	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
      	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
      	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
      	at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$1.call(CpsVmExecutorService.java:53)
      	at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService$1.call(CpsVmExecutorService.java:50)
      	at org.codehaus.groovy.runtime.GroovyCategorySupport$ThreadCategoryInfo.use(GroovyCategorySupport.java:136)
      	at org.codehaus.groovy.runtime.GroovyCategorySupport.use(GroovyCategorySupport.java:275)
      	at PluginClassLoader for workflow-cps//org.jenkinsci.plugins.workflow.cps.CpsVmExecutorService.lambda$categoryThreadFactory$0(CpsVmExecutorService.java:50)
      	at java.base/java.lang.Thread.run(Thread.java:829)
      

       

            Unassigned Unassigned
            vmosk vmosk
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: