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

Git publisher push should not fail if there is no new changes

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Won't Fix
    • Icon: Major Major
    • git-plugin
    • None
    • Debian Linux Squeeze
      Jenkins 1.456
      Git plugin 1.1.16
      Gerrit 2.2.2.1

      We configured Git publisher to push to a remote repo as a post-build action (actually, that's Gerrit).

      If a build is triggered without any changes, and the build successes, then the git publisher tries to push Gerrit, whose response gives:

      [INFO] BUILD SUCCESS
      [INFO] ------------------------------------------------------------------------
      [INFO] Total time: 52.736s
      [INFO] Finished at: Mon Mar 26 11:09:37 CEST 2012
      [INFO] Final Memory: 75M/409M
      [INFO] ------------------------------------------------------------------------
      channel stopped
      Deleting: /tmp/Xvfb946119446000235574.Xauthority
      [WARNINGS] Parsing warnings in console log with parsers [Java Compiler]
      [WARNINGS] Java Compiler : Found 0 warnings.
      [WARNINGS] Java Compiler : Found 0 warnings.
      [WARNINGS] Computing warning deltas based on reference build #28
      Archiving artifacts
      Publishing Cobertura coverage report...
      Publishing Cobertura coverage results..
      Pushing HEAD to branch refs/for/master at repo gerrit
      ERROR: Failed to push branch refs/for/master to gerrit
      hudson.plugins.git.GitException: Error performing command: git push ssh://****:29418/****.git HEAD:refs/for/master
      Command "git push ssh://****:29418/****.git HEAD:refs/for/master" returned status code 1: To ssh://****:29418/****.git
       ! [remote rejected] HEAD -> refs/for/master (no new changes)
      error: failed to push some refs to 'ssh://****:29418/****.git'
      
      	at hudson.plugins.git.GitAPI.launchCommandIn(GitAPI.java:776)
      	at hudson.plugins.git.GitAPI.launchCommand(GitAPI.java:741)
      	at hudson.plugins.git.GitAPI.push(GitAPI.java:788)
      	at hudson.plugins.git.GitPublisher$4.invoke(GitPublisher.java:333)
      	at hudson.plugins.git.GitPublisher$4.invoke(GitPublisher.java:315)
      	at hudson.FilePath.act(FilePath.java:832)
      	at hudson.FilePath.act(FilePath.java:814)
      	at hudson.plugins.git.GitPublisher.perform(GitPublisher.java:315)
      	at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:36)
      	at hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:703)
      	at hudson.model.AbstractBuild$AbstractRunner.performAllBuildSteps(AbstractBuild.java:678)
      	at hudson.maven.MavenModuleSetBuild$RunnerImpl.post2(MavenModuleSetBuild.java:998)
      	at hudson.model.AbstractBuild$AbstractRunner.post(AbstractBuild.java:625)
      	at hudson.model.Run.run(Run.java:1435)
      	at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:481)
      	at hudson.model.ResourceController.execute(ResourceController.java:88)
      	at hudson.model.Executor.run(Executor.java:238)
      Caused by: hudson.plugins.git.GitException: Command "git push ssh://****:29418/****.git HEAD:refs/for/master" returned status code 1: To ssh://****:29418/****.git
       ! [remote rejected] HEAD -> refs/for/master (no new changes)
      error: failed to push some refs to 'ssh://****:29418/****.git'
      
      	at hudson.plugins.git.GitAPI.launchCommandIn(GitAPI.java:771)
      	... 16 more
      Build step 'Git Publisher' changed build result to FAILURE
      Build step 'Git Publisher' marked build as failure
      Jabber notifier plugin: Sending notification to: sylvain.veyrie@xmpp.*****.fr
      Finished: FAILURE
      

      I think that Jenkins should not mark the build as failed in this case.

      Thanks!

            markewaite Mark Waite
            turb Sylvain VeyriƩ
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: