Scripted Pipeline linting works from CLI but not from Api

This issue is archived. You can view it, but you can't modify it. Learn more

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Minor
    • Environment:

      According to https://jenkins.io/doc/book/pipeline/development/#linter ,

      one can check the syntax of a Jenkinsfile either using the CLI

       

      java-jar jenkins-cli.jar declarative-linter < Jenkinsfile 
      

       

      or using the HTTP API:

       

      curl -X POST -F "jenkinsfile=<Jenkinsfile" $JENKINS_URL/pipeline-model-converter/validate

      Interestingly, though, the former (CLI) validates successfully Scripted Pipelines while the latter (HTTP) does not.

      Here is a trivial example of a Jenkinsfile:

      node {
        pwd
      }
      

      The CLI output is

      Jenkinsfile successfully validated.

      while the HTTP api output is

      Jenkinsfile content 'node {\n  pwd\n}\n' did not contain the 'pipeline' step

      I believe it's very convenient that the CLI can check Scripted Pipelines as well and it would be great if one could do it via the HTTP api as well!

       

            Assignee:
            Unassigned
            Reporter:
            Marcos Diez
            Archiver:
            Jenkins Service Account

              Created:
              Updated:
              Archived: