Joe Hansche commented on Bug JENKINS-14099

On further investigation, it looks like this is caused by using a combination of "Multiple SCMs" and the "Template Project" plugins.

On the project(s) where this happens, I have this type of project configuration:

  • Template-Project
    • SCM: Multiple SCMs
      • Git: git://repo1
      • Git: git://repo2
  • Real-Project
    • SCM: Multiple SCMs
      • Use SCM from another project: Template-Project
      • Git: git://repo3

The error occurs on an XML file that looks like this:

<multi-scm-log>
<sub-log scm="hudson.plugins.git.GitSCM">
<![CDATA[Changes in branch origin/master, between 9c4074dcff82c18ed73fac20a99d6f607c841124 and 6fe4697a307b79944336ba8c3668fdb4c7c3deb3
commit 6fe4697a307b79944336ba8c3668fdb4c7c3deb3
tree 1ae70d49e3188b26239550591ae19a8e94cfe842
parent 9c4074dcff82c18ed73fac20a99d6f607c841124
author XXX 1339536117 -0400
committer XXX 1339623892 -0400

    INTER-147 title on profile page
    
    Change-Id: Ic7e5acf8d0a854024548adab639e8497e861b5f1

:100644 100644 74c6e402f2243fce6b6c298ecf46e4b108994a2f 0ef7427344375aa5fea5b44d2ec12934e940f558 M	path/to/files..
:100644 100644 087006cc767d0ff5b5480ffdc2a92540e56dc8c3 cf3d1021387d00cc5bce12ae0ccf80e699612bbe M	path/to/files..
]]>
</sub-log>
<sub-log scm="hudson.plugins.templateproject.ProxySCM">
<![CDATA[<multi-scm-log>
<sub-log scm="hudson.plugins.git.GitSCM">
<![CDATA[Changes in branch base/HEAD, between 895a00c4d17312a78f2626e781c0492751685396 and 895a00c4d17312a78f2626e781c0492751685396
Changes in branch base/master, between 895a00c4d17312a78f2626e781c0492751685396 and 895a00c4d17312a78f2626e781c0492751685396
]]>
</sub-log>
<sub-log scm="hudson.plugins.git.GitSCM">
<![CDATA[Changes in branch common/HEAD, between ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7 and ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7
Changes in branch common/master, between ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7 and ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7
]]>
</sub-log>
</multi-scm-log>
]]>
</sub-log>
</multi-scm-log>

In reality, the individual XML files are:

  • repo1:
    <sub-log scm="hudson.plugins.git.GitSCM">
    <![CDATA[Changes in branch common/HEAD, between ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7 and ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7
    Changes in branch common/master, between ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7 and ce491ecc5ee0c9d83f3fc3b57033af9b686d4bd7
    ]]>
    </sub-log>
  • repo2:
    <sub-log scm="hudson.plugins.git.GitSCM">
    <![CDATA[Changes in branch base/HEAD, between 895a00c4d17312a78f2626e781c0492751685396 and 895a00c4d17312a78f2626e781c0492751685396
    Changes in branch base/master, between 895a00c4d17312a78f2626e781c0492751685396 and 895a00c4d17312a78f2626e781c0492751685396
    ]]>
    </sub-log>
  • repo3:
    <sub-log scm="hudson.plugins.git.GitSCM">
    <![CDATA[Changes in branch origin/master, between 9c4074dcff82c18ed73fac20a99d6f607c841124 and 6fe4697a307b79944336ba8c3668fdb4c7c3deb3
    commit 6fe4697a307b79944336ba8c3668fdb4c7c3deb3
    tree 1ae70d49e3188b26239550591ae19a8e94cfe842
    parent 9c4074dcff82c18ed73fac20a99d6f607c841124
    author XXX 1339536117 -0400
    committer XXX 1339623892 -0400
    
        INTER-147 title on profile page
        
        Change-Id: Ic7e5acf8d0a854024548adab639e8497e861b5f1
    
    :100644 100644 74c6e402f2243fce6b6c298ecf46e4b108994a2f 0ef7427344375aa5fea5b44d2ec12934e940f558 M	path/to/files..
    :100644 100644 087006cc767d0ff5b5480ffdc2a92540e56dc8c3 cf3d1021387d00cc5bce12ae0ccf80e699612bbe M	path/to/files..
    ]]>
    </sub-log>

But each sub-log entry combines its own log data into a CDATA section – including hudson.plugins.templateproject.ProxySCM. ProxySCM is encapsulating a multi-scm-log containing to GitSCM sub-logs. Since each sub-log is wrapped in CDATA, the ProxySCM CDATA is ended early, and that results in an invalid XML file.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to