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

PostBuild declarative validator called twice

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      I am hoping to extend the Declarative Model Validator to provide linting services that have the team's policies / standards integrated. Working on a validator for ModelASTPostBuild I saw that the validator was being called twice.

       

      My extension:

      @Extension
      public class PostBuildValidator extends DeclarativeValidatorContributor {
      
          @CheckForNull
          @Override
          public String validateElement(@Nonnull ModelASTPostBuild postBuild, @CheckForNull FlowExecution execution) {
              return "abc" + postBuild.getName();
          }
      }
      

      My jenkinsfile:

      pipeline {
        agent {
          label 'unix'
        }
        stages {
          stage('test'){
            steps{
              echo "test"
            }
          }
        }
        post {
          always{
            echo "cleaning"
            deleteDir()
          }
        }
      }
      

      Response from pipeline-model-converter/validateJenkinsfile:

      {"status":"ok","data":{"result":"failure","errors":[

      {"error":["abcpost @ line 12, column 3.","abcpost @ line 12, column 3."]}

      ]}}

        Attachments

          Issue Links

            Activity

            stevenfoster Steven Foster created issue -
            stevenfoster Steven Foster made changes -
            Field Original Value New Value
            Description I am hoping to extend the Declarative Model Validator to provide linting services that have the team's policies / "style" integrated. Working on a validator for ModelASTPostBuild I saw that the validator was being called twice.

             

            My extension:
            {code:java}
            @Extension
            public class PostBuildValidator extends DeclarativeValidatorContributor {

                @CheckForNull
                @Override
                public String validateElement(@Nonnull ModelASTPostBuild postBuild, @CheckForNull FlowExecution execution) {
                    return "abc" + postBuild.getName();
                }
            }
            {code}

            My jenkinsfile:

            {code:java}
            pipeline {
              agent {
                label 'unix'
              }
              stages {
                stage('test'){
                  steps{
                    echo "test"
                  }
                }
              }
              post {
                always{
                  echo "cleaning"
                  deleteDir()
                }
              }
            }
            {code}

            Response from pipeline-model-converter/validateJenkinsfile:

            {"status":"ok","data":{"result":"failure","errors":[{"error":["abcpost @ line 12, column 3.","abcpost @ line 12, column 3."]}]}}
            I am hoping to extend the Declarative Model Validator to provide linting services that have the team's policies / standards integrated. Working on a validator for ModelASTPostBuild I saw that the validator was being called twice.

             

            My extension:
            {code:java}
            @Extension
            public class PostBuildValidator extends DeclarativeValidatorContributor {

                @CheckForNull
                @Override
                public String validateElement(@Nonnull ModelASTPostBuild postBuild, @CheckForNull FlowExecution execution) {
                    return "abc" + postBuild.getName();
                }
            }
            {code}

            My jenkinsfile:

            {code:java}
            pipeline {
              agent {
                label 'unix'
              }
              stages {
                stage('test'){
                  steps{
                    echo "test"
                  }
                }
              }
              post {
                always{
                  echo "cleaning"
                  deleteDir()
                }
              }
            }
            {code}

            Response from pipeline-model-converter/validateJenkinsfile:

            {"status":"ok","data":{"result":"failure","errors":[{"error":["abcpost @ line 12, column 3.","abcpost @ line 12, column 3."]}]}}
            abayer Andrew Bayer made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            abayer Andrew Bayer made changes -
            Status In Progress [ 3 ] In Review [ 10005 ]
            abayer Andrew Bayer made changes -
            Remote Link This issue links to "PR #213 (Web Link)" [ 17989 ]
            abayer Andrew Bayer made changes -
            Status In Review [ 10005 ] Resolved [ 5 ]
            Resolution Fixed [ 1 ]

              People

              • Assignee:
                abayer Andrew Bayer
                Reporter:
                stevenfoster Steven Foster
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: