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

Pipeline script from SCM triggers builds on sub pipeline change

      We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

      // This pipeline is in all our services
      node {
          // Some treatment ...
      
          // Load the generic pipeline
          git 'http://our-git-url/git/jenkins-pipelines.git'
          load 'generic-pipeline.groovy'
      }()
      

      Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
      Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy", when there is supposedly no reason to trigger on such an event.

        1. poll.txt
          4 kB
        2. jenkns-plugins.txt
          7 kB
        3. Jenkins_Pipeline.png
          Jenkins_Pipeline.png
          6 kB

          [JENKINS-35026] Pipeline script from SCM triggers builds on sub pipeline change

          Olivier Revial created issue -
          Olivier Revial made changes -
          Description Original: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {{// This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()}}

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          New: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {{
          // This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()
          }}

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          Olivier Revial made changes -
          Description Original: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {{
          // This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()
          }}

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          New: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {{
          ^// This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()^
          }}

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          Olivier Revial made changes -
          Description Original: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {{
          ^// This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()^
          }}

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          New: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {{
          {quote}// This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }(){quote}
          }}

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          Olivier Revial made changes -
          Description Original: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {{
          {quote}// This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }(){quote}
          }}

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          New: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          // This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          Olivier Revial made changes -
          Description Original: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          // This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()

          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          New: We are using "pipeline script from SCM" feature in all our services, and they load themselves a generic pipeline located in another Git repo, using following syntax :

          {code:java}

          // This pipeline is in all our services
          node {
              // Some treatment ...

              // Load the generic pipeline
              git 'http://our-git-url/git/jenkins-pipelines.git'
              load 'generic-pipeline.groovy'
          }()
          {code}


          Now our Jenkins jobs get triggered whenever a change to our service is commited, which is what we want.
          *Problem is that the same jenkins job also gets triggered whenever a change is made to the loaded pipeline "generic-pipeline.grovy"*, when there is supposedly no reason to trigger on such an event.
          Olivier Revial made changes -
          Attachment New: jenkns-plugins.txt [ 32780 ]
          Olivier Revial made changes -
          Component/s New: git-plugin [ 15543 ]

          Olivier Revial added a comment - - edited

          Also tried with "poll: false"

          git poll:false, url:'http://our-git-url/git/jenkins-pipelines.git'
          

          ... but without any success.

          Anyone ever encountered this issue ?

          Olivier Revial added a comment - - edited Also tried with "poll: false" git poll: false , url: 'http: //our-git-url/git/jenkins-pipelines.git' ... but without any success. Anyone ever encountered this issue ?

          Oleg Nenashev added a comment -

          For me it seems to be valid behavior for default git plugin behavior.
          A solution would be to configure file filters like other SCM plugins do (e.g. Perforce plugin)

          Oleg Nenashev added a comment - For me it seems to be valid behavior for default git plugin behavior. A solution would be to configure file filters like other SCM plugins do (e.g. Perforce plugin)

            Unassigned Unassigned
            pommedouze Olivier Revial
            Votes:
            6 Vote for this issue
            Watchers:
            12 Start watching this issue

              Created:
              Updated: