jenkinsci / github-pr-coverage-status-plugin

Nice test coverage icon for your pull requests just from Jenkins

Home Page:https://plugins.jenkins.io/github-pr-coverage-status/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

java.io.IOException: Error while accessing rate limit API

rvarma-godaddy opened this issue · comments

Version report

Jenkins and plugins versions report:

Jenkins: 2.249.1
OS: Linux - 3.10.0-1127.19.1.el7.x86_64
---
ace-editor:1.1
active-directory:2.24
ant:1.11
antisamy-markup-formatter:2.1
apache-httpcomponents-client-4-api:4.5.13-1.0
artifactory:3.13.1
authentication-tokens:1.3
aws-credentials:1.29
aws-java-sdk:1.11.995
aws-okta:1.0.1
bootstrap4-api:4.6.0-2
bootstrap5-api:5.0.1-2
bouncycastle-api:2.18
branch-api:2.6.2
build-pipeline-plugin:1.5.8
build-timeout:1.20
built-on-column:1.1
caffeine-api:2.9.1-23.v51c4e2c879c8
checks-api:1.7.0
cloudbees-credentials:3.3
cloudbees-folder:6.16
cobertura:1.16
code-coverage-api:1.4.1
command-launcher:1.4
conditional-buildstep:1.4.1
config-file-provider:3.8.0
configurationslicing:1.52
credentials:2.6.1
credentials-binding:1.27
data-tables-api:1.10.25-1
declarative-pipeline-migration-assistant:1.5.1
declarative-pipeline-migration-assistant-api:1.5.1
display-url-api:2.3.4
docker-commons:1.16
docker-workflow:1.23
durable-task:1.34
echarts-api:5.1.2-2
email-ext:2.83
embeddable-build-status:2.0.3
envinject:2.3.0
envinject-api:1.7
external-monitor-job:1.7
favorite:2.3.2
font-awesome-api:5.15.3-3
forensics-api:1.2.0
git:4.6.0
git-client:3.6.0
git-server:1.9
github:1.32.0
github-api:1.122
github-autostatus:3.6.2
github-branch-source:2.9.9
github-organization-folder:1.6
github-pr-coverage-status:2.1.1
gradle:1.37.1
handlebars:1.1.1
handy-uri-templates-2-api:2.1.8-1.0
hashicorp-vault-plugin:3.2.0
htmlpublisher:1.25
http_request:1.11
hudson-wsclean-plugin:1.0.7
ivy:2.1
jackson2-api:2.12.4
jacoco:3.0.5
javadoc:1.5
jdk-tool:1.4
jenkins-design-language:1.22.0
jenkins-multijob-plugin:1.36
jira:3.0.14
jjwt-api:0.11.2-9.c8b45b8bb173
job-restrictions:0.8
jquery:1.12.4-1
jquery-detached:1.2.1
jquery3-api:3.6.0-1
jsch:0.1.55.2
junit:1.49
junit-attachments:1.6
junit-realtime-test-reporter:0.6
ldap:1.22
lockable-resources:2.11
logstash:2.3.2
mailer:1.32.1
matrix-auth:2.6.8
matrix-project:1.18
maven-plugin:3.8
mercurial:2.15
momentjs:1.1.1
monitoring:1.87.0
msbuild:1.29
mstest:1.0.0
next-build-number:1.6
nodejs:1.3.4
okhttp-api:3.14.9
pam-auth:1.6
parallel-test-executor:1.13
parameterized-trigger:2.39
pipeline-build-step:2.12
pipeline-github-lib:1.0
pipeline-graph-analysis:1.10
pipeline-input-step:2.11
pipeline-milestone-step:1.3.1
pipeline-model-api:1.6.0
pipeline-model-declarative-agent:1.1.1
pipeline-model-definition:1.6.0
pipeline-model-extensions:1.6.0
pipeline-rest-api:2.13
pipeline-stage-step:2.3
pipeline-stage-tags-metadata:1.6.0
pipeline-stage-view:2.13
pipeline-utility-steps:2.5.0
plain-credentials:1.7
plugin-util-api:2.3.0
popper-api:1.16.1-2
popper2-api:2.5.4-2
publish-over:0.22
publish-over-dropbox:1.2.5
publish-over-ssh:1.20.1
pubsub-light:1.13
resource-disposer:0.14
run-condition:1.3
saltstack:3.2.2
sauce-ondemand:1.187
scm-api:2.6.4
scoring-load-balancer:1.0.1
script-security:1.77
selected-tests-executor:1.3.3
seleniumhtmlreport:1.0
slack:2.48
snakeyaml-api:1.29.1
snow:1.1.2
sse-gateway:1.23
ssh-credentials:1.18.1
ssh-slaves:1.31.5
structs:1.23
test-results-analyzer:0.3.5
throttle-concurrents:2.0.2
timestamper:1.13
token-macro:2.13
trilead-api:1.0.13
variant:1.3
windows-slaves:1.6
workflow-aggregator:2.6
workflow-api:2.46
workflow-basic-steps:2.22
workflow-cps:2.94
workflow-cps-global-lib:2.16
workflow-durable-task-step:2.35
workflow-job:2.41
workflow-multibranch:2.24
workflow-scm-step:2.13
workflow-step-api:2.23
workflow-support:3.8
ws-cleanup:0.39
yum:1.0-4-SNAPSHOT (private-b1edd433-jenkins)
  • What Operating System are you using (both controller, and any agents involved in the problem)?
Jenkins: Linux; 3.10.0-1127.19.1.el7.x86_64

Reproduction steps

  1. We are setting up the github coverage status plugin integration with Jenkins
  2. The plugin is installed as expected but I get the below error during the CompareCoverageAction step
  3. The configuration for the coverage plugin is correctly done under Manage Jenkins as follows

Screen Shot 2021-09-29 at 9 29 58 AM
4. Jenkins groovy file is as follows:

stage("unit tests") {
        steps {
          script {
            sh "npm run test:coverage"
            sh script: "cp coverage/cobertura-coverage.xml ${WORKSPACE}/cobertura-coverage.xml"

            echo "@@ Publish Cobertura Coverage Report in Jenkins"
            cobertura(
              autoUpdateHealth: false,
              autoUpdateStability: false,
              coberturaReportFile: '**/cobertura-coverage.xml',
              conditionalCoverageTargets: '70, 0, 0',
              failNoReports: false,
              failUnhealthy: false,
              failUnstable: false,
              lineCoverageTargets: '80, 0, 0',
              maxNumberOfBuilds: 0,
              methodCoverageTargets: '80, 0, 0',
              onlyStable: false,
              sourceEncoding: 'ASCII',
              zoomCoverageChart: false
            )

            currentBuild.result = 'SUCCESS'
            milestone(1)
          }
        }
      }
      stage('Record Coverage') {
        when {
          branch 'master'
        }
        steps {
          script {
            try {
              echo "@@ Record Coverage for Master"
              script {
                currentBuild.result = 'SUCCESS'
              }
              step([$class: 'MasterCoverageAction', scmVars: [GIT_URL: env.GIT_URL]])
            }
            catch (ex) {
              echo "@@ Error in Record Coverage to Master: ${ex}"
            }
          }
        }
      }
      stage('Report Coverage Comparison as PR Status check') {
        when {
          not {
            branch 'master'
          }
        }
        steps {
          script {
            try {
              echo "@@ Record Coverage for PR Branch: ${env.GIT_BRANCH}"
              script {
                currentBuild.result = 'SUCCESS'
              }
              step([$class: 'CompareCoverageAction', publishResultAs: 'statusCheck', scmVars: [GIT_URL: env.GIT_URL, GIT_BRANCH: env.GIT_BRANCH, GIT_COMMIT: env.GIT_COMMIT]]);
            }
            catch (ex) {
              echo "@@ Error in Report Unit Test Code Coverage Comparison: ${ex}"
            }
          }
        }
      }

Results

Expected result:

Expected result is for the coverage to appear as a status check in GitHUB PR branches

Actual result:

Error in jenkins console is as follows

[Pipeline] sh
+ cp coverage/cobertura-coverage.xml /var/lib/jenkins/workspace/<branch_name>/cobertura-coverage.xml
[Pipeline] echo
@@ Publish Cobertura Coverage Report in Jenkins
[Pipeline] cobertura
[Cobertura] Publishing Cobertura coverage report...

[Cobertura] Publishing Cobertura coverage results...

[Cobertura] Cobertura coverage report found.

[Pipeline] milestone
Trying to pass milestone 1
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Record Coverage)
Stage "Record Coverage" skipped due to when conditional
[Pipeline] }
[Pipeline] // stage
[Pipeline] stage
[Pipeline] { (Report Coverage Comparison as PR Status check)
[Pipeline] script
[Pipeline] {
[Pipeline] echo
@@ Record Coverage for PR Branch: PR-43
[Pipeline] script
[Pipeline] {
[Pipeline] }
[Pipeline] // script
[Pipeline] step
[GitHub PR Status] start
[GitHub PR Status] getting master coverage...
use default coverage repo
[Pipeline] echo
@@ Error in Report Unit Test Code Coverage Comparison: java.io.IOException: Error while accessing rate limit API
[Pipeline] }
[Pipeline] // script
[Pipeline] }
[Pipeline] // stage

@Yunir or anyone else watching bugs in this repo -> can you please reply to this issue. Would really appreciate it! thank you!

commented

We are getting a similar error.

Yeah we are stuck with this until someone nice in this repo helps us :[

Found some more logs. And we are not even using Sonar and so clueless as to what could be the issue

failed to uncoerce com.github.terma.jenkins.githubprcoveragestatus.CompareCoverageAction@59877172
java.lang.UnsupportedOperationException: no public field ‘sonarLogin’ (or getter method) found in class com.github.terma.jenkins.githubprcoveragestatus.CompareCoverageAction
	at org.jenkinsci.plugins.structs.describable.DescribableParameter.getValue(DescribableParameter.java:161)
	at org.jenkinsci.plugins.structs.describable.DescribableParameter.inspect(DescribableParameter.java:142)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.uninstantiate2(DescribableModel.java:655)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.uninstantiate2_(DescribableModel.java:752)
	at org.jenkinsci.plugins.structs.describable.DescribableParameter.uncoerce(DescribableParameter.java:196)
	at org.jenkinsci.plugins.structs.describable.DescribableParameter.inspect(DescribableParameter.java:142)
	at org.jenkinsci.plugins.structs.describable.DescribableModel.uninstantiate2(DescribableModel.java:655)
	at org.jenkinsci.plugins.workflow.actions.ArgumentsAction.resolve(ArgumentsAction.java:306)
	at org.jenkinsci.plugins.workflow.actions.ArgumentsAction.getResolvedArguments(ArgumentsAction.java:293)
	at org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode.getDelegateType(StepAtomNode.java:134)
	at org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode.effectiveDisplayName(StepAtomNode.java:90)
	at org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode.getTypeDisplayName(StepAtomNode.java:102)
	at org.jenkinsci.plugins.workflow.graph.FlowNode.getDisplayName(FlowNode.java:258)
	at com.cloudbees.workflow.rest.external.FlowNodeExt.addBasicNodeData(FlowNodeExt.java:206)
	at com.cloudbees.workflow.rest.external.AtomFlowNodeExt.create(AtomFlowNodeExt.java:71)
	at com.cloudbees.workflow.rest.external.ChunkVisitor.makeAtomNode(ChunkVisitor.java:68)
	at com.cloudbees.workflow.rest.external.ChunkVisitor.atomNode(ChunkVisitor.java:154)
	at org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.fireVisitChunkCallbacks(ForkScanner.java:749)
	at org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.visitSimpleChunks(ForkScanner.java:767)
	at org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.visitSimpleChunks(ForkScanner.java:631)
	at com.cloudbees.workflow.rest.external.RunExt.createNew(RunExt.java:322)
	at com.cloudbees.workflow.rest.external.RunExt.create(RunExt.java:310)
	at com.cloudbees.workflow.rest.external.JobExt.create(JobExt.java:131)
	at com.cloudbees.workflow.rest.endpoints.JobAPI.doRuns(JobAPI.java:69)
	at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
	at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:396)
	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:408)
	at com.cloudbees.workflow.util.ServeJson$Processor.invoke(ServeJson.java:30)
	at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)
	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:212)
	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:145)
	at org.kohsuke.stapler.MetaClass$11.doDispatch(MetaClass.java:536)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:766)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:898)
	at org.kohsuke.stapler.MetaClass$9.dispatch(MetaClass.java:457)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:766)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:898)
	at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:281)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:766)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:898)
	at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:281)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:766)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:898)
	at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:281)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:766)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:898)
	at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:281)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:766)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:898)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:694)
	at org.kohsuke.stapler.Stapler.service(Stapler.java:240)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:763)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1631)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:154)
	at org.jenkinsci.plugins.ssegateway.Endpoint$SSEListenChannelFilter.doFilter(Endpoint.java:248)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
	at jenkins.telemetry.impl.UserLanguages$AcceptLanguageFilter.doFilter(UserLanguages.java:129)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
	at jenkins.security.ResourceDomainFilter.doFilter(ResourceDomainFilter.java:76)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
	at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:239)
	at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:215)
	at net.bull.javamelody.PluginMonitoringFilter.doFilter(PluginMonitoringFilter.java:88)
	at org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:121)
	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:157)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618)
	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:159)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:67)
	at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
	at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:90)
	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618)
	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:51)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618)
	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618)
	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618)
	at jenkins.security.SuspiciousRequestFilter.doFilter(SuspiciousRequestFilter.java:36)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1618)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:549)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:578)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1610)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1369)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:489)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1580)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1284)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127)
	at org.eclipse.jetty.server.Server.handle(Server.java:501)
	at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:383)
	at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:556)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:375)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:272)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:336)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:313)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:171)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:129)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:375)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:806)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:938)
	at java.lang.Thread.run(Thread.java:748)

Having the same error. Any updates?

commented

Any updates on this bug?

Hello! We have the same issue here; Any updates please?

we are seeing the same issue. any update, please?

Having same issue

Any workaround?