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

SyncID and workspace same for all Global libraries

XMLWordPrintable

    • Icon: Improvement Improvement
    • Resolution: Fixed
    • Icon: Major Major
    • p4-plugin
    • Jenkins ver. 2.89.1
      P4-Plugin 1.8.4

      When using the 'Folders' plugin it's possible to define Global libraries at the Server and folder level. These can both be used by the jobs under the folder.

       

      When a job uses both libraries, the 'syncID' and 'client' in 'build.xml' contain the same name ('jenkins-library'). This could cause library sync and polling issues if the libraries are in different paths. For example:

      • grep "syncID\|\<change\>\|\<client\>" build.xml
                  <change>103</change>
              <client>jenkins-library</client>
              <syncID>jenkins-library</syncID>
                  <change>107</change>
              <client>jenkins-library</client>
              <syncID>jenkins-library</syncID>
                  <change>108</change>
              <client>jenkins-master-Folder1-PipelineEditor_TestSharedLibrary-Source-TEST</client>
              <syncID>jenkins-NODE_NAME-Folder1-PipelineEditor_TestSharedLibrary-Source-TEST</syncID>
        
        

      Reproduction Steps:

      1. Add a global library provided by Helix ALM and get source from //depot/lib1.
      2. Create a folder using 'New Item' on the Jenkins home page.
      3. Configure the folder to have a global library provided by Helix ALM and get source from //depot/lib2.
      4. When in the folder select New Item and create a simple pipeline job that syncs code.
      5. Run the job.
      6. Examine the build.xml created in the jobs directory for this job execution.

            p4paul Paul Allen
            p4karl Karl Wirth
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: