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

Git plugin writing out incorrect settings

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Labels:
      None
    • Environment:
      Jenkins: 1.653
      git-client: 1.19.6
      git: 2.4.3
    • Similar Issues:

      Description

      Consider the following excerpt from a job's config.xml:

      <scm class="hudson.plugins.git.GitSCM" plugin="git@2.4.3">
      <configVersion>2</configVersion>
      <userRemoteConfigs>
      <hudson.plugins.git.UserRemoteConfig>
      <name>gitlab</name>
      <url>[URL GOES HERE]</url>
      <credentialsId>[CREDENTIAL]</credentialsId>
      </hudson.plugins.git.UserRemoteConfig>
      </userRemoteConfigs>
      <branches>
      <hudson.plugins.git.BranchSpec>
      <name>*/nt-*</name>
      </hudson.plugins.git.BranchSpec>
      <hudson.plugins.git.BranchSpec>
      <name>**/master</name>
      </hudson.plugins.git.BranchSpec>
      <hudson.plugins.git.BranchSpec>
      <name>**/bleeding</name>
      </hudson.plugins.git.BranchSpec>
      [OTHER BRANCH DESIGNATIONS]
      </branches>
      <doGenerateSubmoduleConfigurations>false</doGenerateSubmoduleConfigurations>
      <submoduleCfg class="list"/>
      <extensions>
      <hudson.plugins.git.extensions.impl.BuildChooserSetting>
      <buildChooser class="hudson.plugins.git.util.InverseBuildChooser"/>
      </hudson.plugins.git.extensions.impl.BuildChooserSetting>
      <hudson.plugins.git.extensions.impl.BuildChooserSetting>
      <buildChooser class="hudson.plugins.git.util.AncestryBuildChooser">
      <maximumAgeInDays>14</maximumAgeInDays>
      <ancestorCommitSha1></ancestorCommitSha1>
      </buildChooser>
      </hudson.plugins.git.extensions.impl.BuildChooserSetting>
      <hudson.plugins.git.extensions.impl.MessageExclusion>
      <excludedMessage>[REGEX HERE]</excludedMessage>
      </hudson.plugins.git.extensions.impl.MessageExclusion>
      </extensions>
      </scm>

      After reloading configurations from disk, the appropriate settings are displayed in the Additional Behvaiors area of the job's git configuration. However, if I change any of the settings and save the job, the <extensions> element is removed from the XML entirely, and the related configurations are annihilated.

      Additionally, and this may require a new issue, out of these behaviors, only the first one is used: if I move the AncestryBuildChooser to the top of the element, only the commits younger than 14 days are built, but the InverseBuildChooser setting is ignored. If left in the current configuration, only the InverseBuildChooser setting is used, but Jenkins starts builds rapidly to catch up with the untested old commits, the majority of which will fail the build due to various changes over the years.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                markewaite Mark Waite
                Reporter:
                zmeggyesi Zalan Meggyesi
              • Votes:
                4 Vote for this issue
                Watchers:
                8 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: