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

Unable to provision agent in google cloud due to hudson.triggers.SafeTimerTask failure

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major

      After latest update (update ran on 2019-04-30 ~2100UTC), Jenkins no longer correctly provisions agents when PR's are created in github. Not sure exactly which plugin causes this issue, but the logs continually dump the following:

      Provisioning node from config com.google.jenkins.plugins.computeengine.InstanceConfiguration@626b7130 for excess workload of 1 units of label 'buildAgent'
      Apr 30, 2019 4:19:22 PM SEVERE hudson.triggers.SafeTimerTask runTimer task hudson.slaves.NodeProvisioner$NodeProvisionerInvoker@42da5e15 failed
      java.lang.NullPointerException
      	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:187)
      	at com.google.common.collect.ImmutableMap.of(ImmutableMap.java:75)
      	at com.google.jenkins.plugins.computeengine.ComputeEngineCloud.availableNodeCapacity(ComputeEngineCloud.java:333)
      	at com.google.jenkins.plugins.computeengine.ComputeEngineCloud.provision(ComputeEngineCloud.java:261)
      	at hudson.slaves.NodeProvisioner$StandardStrategyImpl.apply(NodeProvisioner.java:715)
      	at hudson.slaves.NodeProvisioner.update(NodeProvisioner.java:320)
      	at hudson.slaves.NodeProvisioner.access$000(NodeProvisioner.java:62)
      	at hudson.slaves.NodeProvisioner$NodeProvisionerInvoker.doRun(NodeProvisioner.java:809)
      	at hudson.triggers.SafeTimerTask.run(SafeTimerTask.java:72)
      	at jenkins.security.ImpersonatingScheduledExecutorService$1.run(ImpersonatingScheduledExecutorService.java:58)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
      	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at java.lang.Thread.run(Thread.java:748)
      
      

      Note that provisioning an agent in the 'Nodes' tab with the 'Provision via gce' dropdown will provision an agent correctly and allow builds to run. But as soon as the agent expires (or if more builds come in) no further agents are created.

            evanbrown Evan Brown
            lpmiso L Powers
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: