Motivation

      Commonly people want to run particular stages when they match a specific branch name(s). We would like to make this pattern accessible in the editor.

      Declarative allows the use of when to condition the stage execution like:

      stage('second') {
          agent label:'some-node'
          branch "master" 
          when {
              env.BRANCH == 'master'
          }
      }
      

      However, this isn't exactly what we would consider "friendly" for an editor accessible feature (though when will be supported via a text area) and the developer would have to learn the Script syntax to use it correctly.

      Solution

      We would like to formalise the pattern in a way that is more Editor and user friendly with the introduction of branch. Ideally we could tell from BO if the user has skipped via when or via branch.

      Example - match single branch
      This stage would only be executed if master was the name of the current branch.

      stage('deploy to staging') {
          agent label:'some-node'
          when { branch "master" }
          steps {
              sh './deploy_pr.sh'
          }
      }
      

      Example - match branch name pattern
      This stage would only be executed if the branch name started with feature/.

      stage('deploy to staging') {
          agent label:'some-node'
          when { branch "feature/*" }
          steps {
              sh './deploy_pr.sh'
          }
      }
      

      Example - expression
      You can use an expression to achieve the same thing by:

      stage('deploy to staging') {
          agent label:'some-node'
          when {
      	expression {
      		return BRANCH == 'master';
              }
          }
          steps {
              sh './deploy_pr.sh'
          }
      }
      

          [JENKINS-40370] Run stage when branch name matches

          Andrew Bayer added a comment -

          imod Strangely enough, rsandell and I are thinking pretty much exactly on those lines. =) Think of the elements inside when (i.e. branch or expression currently) as implementations of an extension point analogous to Run Condition. Since, well, they will be implementations of an extension point. =)

          That said, contributing from outside may end up being hairy depending on how complex they are, given parsing challenges, but we'll see what we can do.

          Andrew Bayer added a comment - imod Strangely enough, rsandell and I are thinking pretty much exactly on those lines. =) Think of the elements inside when (i.e. branch or expression currently) as implementations of an extension point analogous to Run Condition. Since, well, they will be implementations of an extension point. =) That said, contributing from outside may end up being hairy depending on how complex they are, given parsing challenges, but we'll see what we can do.

          Code changed in jenkins
          User: rsandell
          Path:
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/AbstractModelASTCodeBlock.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhen.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhenExpression.java
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Stage.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/StageConditionals.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditional.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditionalDescriptor.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/BranchConditional.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/EnvironmentConditional.java
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/StageConditionalTranslator.groovy
          http://jenkins-ci.org/commit/pipeline-model-definition-plugin/d28a97cfce8b8c611f174a1827d86f4138e53857
          Log:
          JENKINS-40370 Make stage.when more declarative

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: rsandell Path: pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/AbstractModelASTCodeBlock.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhen.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhenExpression.java pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Stage.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/StageConditionals.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditional.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditionalDescriptor.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/BranchConditional.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/EnvironmentConditional.java pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/StageConditionalTranslator.groovy http://jenkins-ci.org/commit/pipeline-model-definition-plugin/d28a97cfce8b8c611f174a1827d86f4138e53857 Log: JENKINS-40370 Make stage.when more declarative

          Code changed in jenkins
          User: Andrew Bayer
          Path:
          SYNTAX.md
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTMethodCall.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTStep.java
          pipeline-model-api/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ast/Messages.properties
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Aborted.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Always.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Changed.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Failure.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Success.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Unstable.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/Parser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/model/BuildCondition.java
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Messages.properties
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/DeclarativeLinterCommandTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/WhenStageTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/endpoints/ModelConverterActionTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/parser/GroovyShellDecoratorImplTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParserTest.java
          http://jenkins-ci.org/commit/pipeline-model-definition-plugin/221d6e800a36ac9980a099f71a7106a54191c97f
          Log:
          Merge branch 'master' into JENKINS-40370

          Conflicts:
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andrew Bayer Path: SYNTAX.md pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTMethodCall.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTStep.java pipeline-model-api/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ast/Messages.properties pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Aborted.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Always.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Changed.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Failure.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Success.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Unstable.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/Parser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/model/BuildCondition.java pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/model/conditions/Messages.properties pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/DeclarativeLinterCommandTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/WhenStageTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/endpoints/ModelConverterActionTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/parser/GroovyShellDecoratorImplTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParserTest.java http://jenkins-ci.org/commit/pipeline-model-definition-plugin/221d6e800a36ac9980a099f71a7106a54191c97f Log: Merge branch 'master' into JENKINS-40370 Conflicts: pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties

          Code changed in jenkins
          User: Andrew Bayer
          Path:
          pipeline-model-definition/pom.xml
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java
          pipeline-model-definition/src/test/resources/booleanParamBuildStep.groovy
          http://jenkins-ci.org/commit/pipeline-model-definition-plugin/fb5dfb926469f00ae8c741b8d922a483df4d987f
          Log:
          Merge branch 'master' into JENKINS-40370

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andrew Bayer Path: pipeline-model-definition/pom.xml pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java pipeline-model-definition/src/test/resources/booleanParamBuildStep.groovy http://jenkins-ci.org/commit/pipeline-model-definition-plugin/fb5dfb926469f00ae8c741b8d922a483df4d987f Log: Merge branch 'master' into JENKINS-40370

          Andrew Bayer added a comment -

          Andrew Bayer added a comment - PR is up at https://github.com/jenkinsci/pipeline-model-definition-plugin/pull/78

          Code changed in jenkins
          User: Andrew Bayer
          Path:
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTStage.java
          pipeline-model-definition/pom.xml
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/Converter.groovy
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/parser/GroovyShellDecoratorImpl.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java
          pipeline-model-definition/src/test/resources/json/parallelPipelineQuoteEscaping.json
          pipeline-model-definition/src/test/resources/json/parallelPipelineWithSpaceInBranch.json
          pipeline-model-definition/src/test/resources/libraryAnnotation.groovy
          pipeline-model-definition/src/test/resources/parallelPipelineQuoteEscaping.groovy
          pipeline-model-definition/src/test/resources/parallelPipelineWithSpaceInBranch.groovy
          http://jenkins-ci.org/commit/pipeline-model-definition-plugin/96a34eda839c2436181a9f9889662256d187970f
          Log:
          Merge branch 'master' into JENKINS-40370

          Conflicts:
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andrew Bayer Path: pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTStage.java pipeline-model-definition/pom.xml pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/Converter.groovy pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/parser/GroovyShellDecoratorImpl.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java pipeline-model-definition/src/test/resources/json/parallelPipelineQuoteEscaping.json pipeline-model-definition/src/test/resources/json/parallelPipelineWithSpaceInBranch.json pipeline-model-definition/src/test/resources/libraryAnnotation.groovy pipeline-model-definition/src/test/resources/parallelPipelineQuoteEscaping.groovy pipeline-model-definition/src/test/resources/parallelPipelineWithSpaceInBranch.groovy http://jenkins-ci.org/commit/pipeline-model-definition-plugin/96a34eda839c2436181a9f9889662256d187970f Log: Merge branch 'master' into JENKINS-40370 Conflicts: pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java

          Code changed in jenkins
          User: Andrew Bayer
          Path:
          SYNTAX.md
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTPipelineDef.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWrapper.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWrappers.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java
          pipeline-model-api/src/main/resources/ast-schema.json
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/Utils.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Options.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Root.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Wrappers.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/WrappersToMap.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/OptionsTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/WrappersToMapTranslator.groovy
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/OptionsTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/WrappersTest.java
          pipeline-model-definition/src/test/resources/errors/invalidWrapperType.groovy
          pipeline-model-definition/src/test/resources/json/errors/invalidWrapperType.json
          pipeline-model-definition/src/test/resources/json/multipleWrappers.json
          pipeline-model-definition/src/test/resources/json/simpleWrapper.json
          pipeline-model-definition/src/test/resources/multipleProperties.groovy
          pipeline-model-definition/src/test/resources/multipleWrappers.groovy
          pipeline-model-definition/src/test/resources/simpleWrapper.groovy
          http://jenkins-ci.org/commit/pipeline-model-definition-plugin/729dfabcd270c25f0ceaadfd012c019f8da70e74
          Log:
          Merge branch 'master' into JENKINS-40370

          Conflicts:
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andrew Bayer Path: SYNTAX.md pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTPipelineDef.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWrapper.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWrappers.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java pipeline-model-api/src/main/resources/ast-schema.json pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/Utils.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Options.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Root.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Wrappers.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/WrappersToMap.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/OptionsTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/WrappersToMapTranslator.groovy pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/OptionsTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/WrappersTest.java pipeline-model-definition/src/test/resources/errors/invalidWrapperType.groovy pipeline-model-definition/src/test/resources/json/errors/invalidWrapperType.json pipeline-model-definition/src/test/resources/json/multipleWrappers.json pipeline-model-definition/src/test/resources/json/simpleWrapper.json pipeline-model-definition/src/test/resources/multipleProperties.groovy pipeline-model-definition/src/test/resources/multipleWrappers.groovy pipeline-model-definition/src/test/resources/simpleWrapper.groovy http://jenkins-ci.org/commit/pipeline-model-definition-plugin/729dfabcd270c25f0ceaadfd012c019f8da70e74 Log: Merge branch 'master' into JENKINS-40370 Conflicts: pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java

          Code changed in jenkins
          User: Andrew Bayer
          Path:
          SYNTAX.md
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTAgent.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTClosureMap.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java
          pipeline-model-api/src/main/resources/ast-schema.json
          pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgentDescriptor.java
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Agent.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Root.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Stage.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipeline.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfile.java
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfileScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/config/FolderConfig/help-dockerLabel.html
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/config/GlobalConfig/help-dockerLabel.html
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AgentTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/DurabilityTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java
          pipeline-model-definition/src/test/resources/agentDocker.groovy
          pipeline-model-definition/src/test/resources/agentDockerEnvSpecLabel.groovy
          pipeline-model-definition/src/test/resources/agentDockerEnvTest.groovy
          pipeline-model-definition/src/test/resources/agentDockerWithEmptyDockerArgs.groovy
          pipeline-model-definition/src/test/resources/agentDockerWithNullDockerArgs.groovy
          pipeline-model-definition/src/test/resources/agentLabel.groovy
          pipeline-model-definition/src/test/resources/agentTypeOrdering.groovy
          pipeline-model-definition/src/test/resources/buildPluginParentPOM.groovy
          pipeline-model-definition/src/test/resources/dockerGlobalVariable.groovy
          pipeline-model-definition/src/test/resources/dockerGlobalVariableInScript.groovy
          pipeline-model-definition/src/test/resources/environmentInStage.groovy
          pipeline-model-definition/src/test/resources/errors/agentMissingRequiredParam.groovy
          pipeline-model-definition/src/test/resources/errors/agentUnknownParamForType.groovy
          pipeline-model-definition/src/test/resources/errors/duplicateEnvironment.groovy
          pipeline-model-definition/src/test/resources/errors/emptyEnvironment.groovy
          pipeline-model-definition/src/test/resources/errors/globalLibraryNonStepBody.groovy
          pipeline-model-definition/src/test/resources/errors/globalLibraryObjectMethodCall.groovy
          pipeline-model-definition/src/test/resources/errors/invalidMetaStepSyntax.groovy
          pipeline-model-definition/src/test/resources/errors/multipleAgentTypes.groovy
          pipeline-model-definition/src/test/resources/errors/notInstalledToolVersion.groovy
          pipeline-model-definition/src/test/resources/errors/perStageConfigEmptySteps.groovy
          pipeline-model-definition/src/test/resources/errors/perStageConfigMissingSteps.groovy
          pipeline-model-definition/src/test/resources/errors/perStageConfigUnknownSection.groovy
          pipeline-model-definition/src/test/resources/errors/unknownAgentType.groovy
          pipeline-model-definition/src/test/resources/errors/unlistedToolType.groovy
          pipeline-model-definition/src/test/resources/failureBeforeStages.groovy
          pipeline-model-definition/src/test/resources/fromAlternateDockerfile.groovy
          pipeline-model-definition/src/test/resources/fromDockerfile.groovy
          pipeline-model-definition/src/test/resources/fromDockerfileNoArgs.groovy
          pipeline-model-definition/src/test/resources/globalLibrarySuccess.groovy
          pipeline-model-definition/src/test/resources/globalLibrarySuccessInScript.groovy
          pipeline-model-definition/src/test/resources/json/agentAny.json
          pipeline-model-definition/src/test/resources/json/agentDocker.json
          pipeline-model-definition/src/test/resources/json/agentLabel.json
          pipeline-model-definition/src/test/resources/json/agentNoneWithNode.json
          pipeline-model-definition/src/test/resources/json/agentTypeOrdering.json
          pipeline-model-definition/src/test/resources/json/basicWhen.json
          pipeline-model-definition/src/test/resources/json/environmentInStage.json
          pipeline-model-definition/src/test/resources/json/errors/agentMissingRequiredParam.json
          pipeline-model-definition/src/test/resources/json/errors/agentUnknownParamForType.json
          pipeline-model-definition/src/test/resources/json/errors/emptyEnvironment.json
          pipeline-model-definition/src/test/resources/json/errors/emptyJobProperties.json
          pipeline-model-definition/src/test/resources/json/errors/emptyParallel.json
          pipeline-model-definition/src/test/resources/json/errors/emptyParameters.json
          pipeline-model-definition/src/test/resources/json/errors/emptyPostBuild.json
          pipeline-model-definition/src/test/resources/json/errors/emptyStages.json
          pipeline-model-definition/src/test/resources/json/errors/emptyTriggers.json
          pipeline-model-definition/src/test/resources/json/errors/invalidBuildCondition.json
          pipeline-model-definition/src/test/resources/json/errors/invalidParameterTypeMethodCall.json
          pipeline-model-definition/src/test/resources/json/errors/invalidWrapperType.json
          pipeline-model-definition/src/test/resources/json/errors/malformed.json
          pipeline-model-definition/src/test/resources/json/errors/missingAgent.json
          pipeline-model-definition/src/test/resources/json/errors/missingRequiredMethodCallArg.json
          pipeline-model-definition/src/test/resources/json/errors/missingRequiredStepParameters.json
          pipeline-model-definition/src/test/resources/json/errors/missingStages.json
          pipeline-model-definition/src/test/resources/json/errors/mixedMethodArgs.json
          pipeline-model-definition/src/test/resources/json/errors/notInstalledToolType.json
          pipeline-model-definition/src/test/resources/json/errors/notInstalledToolVersion.json
          pipeline-model-definition/src/test/resources/json/errors/notificationsSectionRemoved.json
          pipeline-model-definition/src/test/resources/json/errors/perStageConfigEmptySteps.json
          pipeline-model-definition/src/test/resources/json/errors/perStageConfigMissingSteps.json
          pipeline-model-definition/src/test/resources/json/errors/perStageConfigUnknownSection.json
          pipeline-model-definition/src/test/resources/json/errors/rejectParallelMixedInSteps.json
          pipeline-model-definition/src/test/resources/json/errors/rejectPropertiesStepInMethodCall.json
          pipeline-model-definition/src/test/resources/json/errors/rejectStageInSteps.json
          pipeline-model-definition/src/test/resources/json/errors/stageWithoutName.json
          pipeline-model-definition/src/test/resources/json/errors/unknownAgentType.json
          pipeline-model-definition/src/test/resources/json/errors/unknownBareAgentType.json
          pipeline-model-definition/src/test/resources/json/errors/unknownStepParameter.json
          pipeline-model-definition/src/test/resources/json/errors/unlistedToolType.json
          pipeline-model-definition/src/test/resources/json/errors/wrongParameterNameMethodCall.json
          pipeline-model-definition/src/test/resources/json/globalLibrarySuccess.json
          pipeline-model-definition/src/test/resources/json/legacyMetaStepSyntax.json
          pipeline-model-definition/src/test/resources/json/metaStepSyntax.json
          pipeline-model-definition/src/test/resources/json/multipleVariablesForAgent.json
          pipeline-model-definition/src/test/resources/json/multipleWrappers.json
          pipeline-model-definition/src/test/resources/json/parallelPipeline.json
          pipeline-model-definition/src/test/resources/json/parallelPipelineQuoteEscaping.json
          pipeline-model-definition/src/test/resources/json/parallelPipelineWithFailFast.json
          pipeline-model-definition/src/test/resources/json/parallelPipelineWithSpaceInBranch.json
          pipeline-model-definition/src/test/resources/json/perStageConfigAgent.json
          pipeline-model-definition/src/test/resources/json/simpleEnvironment.json
          pipeline-model-definition/src/test/resources/json/simpleJobProperties.json
          pipeline-model-definition/src/test/resources/json/simpleParameters.json
          pipeline-model-definition/src/test/resources/json/simplePipeline.json
          pipeline-model-definition/src/test/resources/json/simplePostBuild.json
          pipeline-model-definition/src/test/resources/json/simpleScript.json
          pipeline-model-definition/src/test/resources/json/simpleTools.json
          pipeline-model-definition/src/test/resources/json/simpleTriggers.json
          pipeline-model-definition/src/test/resources/json/simpleWrapper.json
          pipeline-model-definition/src/test/resources/json/skippedWhen.json
          pipeline-model-definition/src/test/resources/json/stringsNeedingEscapeLogic.json
          pipeline-model-definition/src/test/resources/json/toolsInStage.json
          pipeline-model-definition/src/test/resources/json/twoStagePipeline.json
          pipeline-model-definition/src/test/resources/json/validStepParameters.json
          pipeline-model-definition/src/test/resources/legacyMetaStepSyntax.groovy
          pipeline-model-definition/src/test/resources/libraryObjectInScript.groovy
          pipeline-model-definition/src/test/resources/libraryObjectOutsideScript.groovy
          pipeline-model-definition/src/test/resources/metaStepSyntax.groovy
          pipeline-model-definition/src/test/resources/multipleVariablesForAgent.groovy
          pipeline-model-definition/src/test/resources/noCheckoutScmInWrongContext.groovy
          pipeline-model-definition/src/test/resources/nonLiteralEnvironment.groovy
          pipeline-model-definition/src/test/resources/perStageConfigAgent.groovy
          pipeline-model-definition/src/test/resources/postStage/localAll.groovy
          pipeline-model-definition/src/test/resources/simpleEnvironment.groovy
          pipeline-model-definition/src/test/resources/simpleTools.groovy
          pipeline-model-definition/src/test/resources/toolsInStage.groovy
          pipeline-model-definition/src/test/resources/when/simpleWhen.groovy
          pipeline-model-definition/src/test/resources/when/whenEmpty.groovy
          pipeline-model-definition/src/test/resources/when/whenException.groovy
          http://jenkins-ci.org/commit/pipeline-model-definition-plugin/528818f7948d6f5fd1cfa38fb5b102dbb37ecac5
          Log:
          Merge branch 'master' into JENKINS-40370

          Conflicts:
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfileScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineScript.groovy

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andrew Bayer Path: SYNTAX.md pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTAgent.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTClosureMap.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java pipeline-model-api/src/main/resources/ast-schema.json pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgentDescriptor.java pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Agent.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Root.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Stage.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipeline.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfile.java pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfileScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/config/FolderConfig/help-dockerLabel.html pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/config/GlobalConfig/help-dockerLabel.html pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AgentTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/DurabilityTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java pipeline-model-definition/src/test/resources/agentDocker.groovy pipeline-model-definition/src/test/resources/agentDockerEnvSpecLabel.groovy pipeline-model-definition/src/test/resources/agentDockerEnvTest.groovy pipeline-model-definition/src/test/resources/agentDockerWithEmptyDockerArgs.groovy pipeline-model-definition/src/test/resources/agentDockerWithNullDockerArgs.groovy pipeline-model-definition/src/test/resources/agentLabel.groovy pipeline-model-definition/src/test/resources/agentTypeOrdering.groovy pipeline-model-definition/src/test/resources/buildPluginParentPOM.groovy pipeline-model-definition/src/test/resources/dockerGlobalVariable.groovy pipeline-model-definition/src/test/resources/dockerGlobalVariableInScript.groovy pipeline-model-definition/src/test/resources/environmentInStage.groovy pipeline-model-definition/src/test/resources/errors/agentMissingRequiredParam.groovy pipeline-model-definition/src/test/resources/errors/agentUnknownParamForType.groovy pipeline-model-definition/src/test/resources/errors/duplicateEnvironment.groovy pipeline-model-definition/src/test/resources/errors/emptyEnvironment.groovy pipeline-model-definition/src/test/resources/errors/globalLibraryNonStepBody.groovy pipeline-model-definition/src/test/resources/errors/globalLibraryObjectMethodCall.groovy pipeline-model-definition/src/test/resources/errors/invalidMetaStepSyntax.groovy pipeline-model-definition/src/test/resources/errors/multipleAgentTypes.groovy pipeline-model-definition/src/test/resources/errors/notInstalledToolVersion.groovy pipeline-model-definition/src/test/resources/errors/perStageConfigEmptySteps.groovy pipeline-model-definition/src/test/resources/errors/perStageConfigMissingSteps.groovy pipeline-model-definition/src/test/resources/errors/perStageConfigUnknownSection.groovy pipeline-model-definition/src/test/resources/errors/unknownAgentType.groovy pipeline-model-definition/src/test/resources/errors/unlistedToolType.groovy pipeline-model-definition/src/test/resources/failureBeforeStages.groovy pipeline-model-definition/src/test/resources/fromAlternateDockerfile.groovy pipeline-model-definition/src/test/resources/fromDockerfile.groovy pipeline-model-definition/src/test/resources/fromDockerfileNoArgs.groovy pipeline-model-definition/src/test/resources/globalLibrarySuccess.groovy pipeline-model-definition/src/test/resources/globalLibrarySuccessInScript.groovy pipeline-model-definition/src/test/resources/json/agentAny.json pipeline-model-definition/src/test/resources/json/agentDocker.json pipeline-model-definition/src/test/resources/json/agentLabel.json pipeline-model-definition/src/test/resources/json/agentNoneWithNode.json pipeline-model-definition/src/test/resources/json/agentTypeOrdering.json pipeline-model-definition/src/test/resources/json/basicWhen.json pipeline-model-definition/src/test/resources/json/environmentInStage.json pipeline-model-definition/src/test/resources/json/errors/agentMissingRequiredParam.json pipeline-model-definition/src/test/resources/json/errors/agentUnknownParamForType.json pipeline-model-definition/src/test/resources/json/errors/emptyEnvironment.json pipeline-model-definition/src/test/resources/json/errors/emptyJobProperties.json pipeline-model-definition/src/test/resources/json/errors/emptyParallel.json pipeline-model-definition/src/test/resources/json/errors/emptyParameters.json pipeline-model-definition/src/test/resources/json/errors/emptyPostBuild.json pipeline-model-definition/src/test/resources/json/errors/emptyStages.json pipeline-model-definition/src/test/resources/json/errors/emptyTriggers.json pipeline-model-definition/src/test/resources/json/errors/invalidBuildCondition.json pipeline-model-definition/src/test/resources/json/errors/invalidParameterTypeMethodCall.json pipeline-model-definition/src/test/resources/json/errors/invalidWrapperType.json pipeline-model-definition/src/test/resources/json/errors/malformed.json pipeline-model-definition/src/test/resources/json/errors/missingAgent.json pipeline-model-definition/src/test/resources/json/errors/missingRequiredMethodCallArg.json pipeline-model-definition/src/test/resources/json/errors/missingRequiredStepParameters.json pipeline-model-definition/src/test/resources/json/errors/missingStages.json pipeline-model-definition/src/test/resources/json/errors/mixedMethodArgs.json pipeline-model-definition/src/test/resources/json/errors/notInstalledToolType.json pipeline-model-definition/src/test/resources/json/errors/notInstalledToolVersion.json pipeline-model-definition/src/test/resources/json/errors/notificationsSectionRemoved.json pipeline-model-definition/src/test/resources/json/errors/perStageConfigEmptySteps.json pipeline-model-definition/src/test/resources/json/errors/perStageConfigMissingSteps.json pipeline-model-definition/src/test/resources/json/errors/perStageConfigUnknownSection.json pipeline-model-definition/src/test/resources/json/errors/rejectParallelMixedInSteps.json pipeline-model-definition/src/test/resources/json/errors/rejectPropertiesStepInMethodCall.json pipeline-model-definition/src/test/resources/json/errors/rejectStageInSteps.json pipeline-model-definition/src/test/resources/json/errors/stageWithoutName.json pipeline-model-definition/src/test/resources/json/errors/unknownAgentType.json pipeline-model-definition/src/test/resources/json/errors/unknownBareAgentType.json pipeline-model-definition/src/test/resources/json/errors/unknownStepParameter.json pipeline-model-definition/src/test/resources/json/errors/unlistedToolType.json pipeline-model-definition/src/test/resources/json/errors/wrongParameterNameMethodCall.json pipeline-model-definition/src/test/resources/json/globalLibrarySuccess.json pipeline-model-definition/src/test/resources/json/legacyMetaStepSyntax.json pipeline-model-definition/src/test/resources/json/metaStepSyntax.json pipeline-model-definition/src/test/resources/json/multipleVariablesForAgent.json pipeline-model-definition/src/test/resources/json/multipleWrappers.json pipeline-model-definition/src/test/resources/json/parallelPipeline.json pipeline-model-definition/src/test/resources/json/parallelPipelineQuoteEscaping.json pipeline-model-definition/src/test/resources/json/parallelPipelineWithFailFast.json pipeline-model-definition/src/test/resources/json/parallelPipelineWithSpaceInBranch.json pipeline-model-definition/src/test/resources/json/perStageConfigAgent.json pipeline-model-definition/src/test/resources/json/simpleEnvironment.json pipeline-model-definition/src/test/resources/json/simpleJobProperties.json pipeline-model-definition/src/test/resources/json/simpleParameters.json pipeline-model-definition/src/test/resources/json/simplePipeline.json pipeline-model-definition/src/test/resources/json/simplePostBuild.json pipeline-model-definition/src/test/resources/json/simpleScript.json pipeline-model-definition/src/test/resources/json/simpleTools.json pipeline-model-definition/src/test/resources/json/simpleTriggers.json pipeline-model-definition/src/test/resources/json/simpleWrapper.json pipeline-model-definition/src/test/resources/json/skippedWhen.json pipeline-model-definition/src/test/resources/json/stringsNeedingEscapeLogic.json pipeline-model-definition/src/test/resources/json/toolsInStage.json pipeline-model-definition/src/test/resources/json/twoStagePipeline.json pipeline-model-definition/src/test/resources/json/validStepParameters.json pipeline-model-definition/src/test/resources/legacyMetaStepSyntax.groovy pipeline-model-definition/src/test/resources/libraryObjectInScript.groovy pipeline-model-definition/src/test/resources/libraryObjectOutsideScript.groovy pipeline-model-definition/src/test/resources/metaStepSyntax.groovy pipeline-model-definition/src/test/resources/multipleVariablesForAgent.groovy pipeline-model-definition/src/test/resources/noCheckoutScmInWrongContext.groovy pipeline-model-definition/src/test/resources/nonLiteralEnvironment.groovy pipeline-model-definition/src/test/resources/perStageConfigAgent.groovy pipeline-model-definition/src/test/resources/postStage/localAll.groovy pipeline-model-definition/src/test/resources/simpleEnvironment.groovy pipeline-model-definition/src/test/resources/simpleTools.groovy pipeline-model-definition/src/test/resources/toolsInStage.groovy pipeline-model-definition/src/test/resources/when/simpleWhen.groovy pipeline-model-definition/src/test/resources/when/whenEmpty.groovy pipeline-model-definition/src/test/resources/when/whenException.groovy http://jenkins-ci.org/commit/pipeline-model-definition-plugin/528818f7948d6f5fd1cfa38fb5b102dbb37ecac5 Log: Merge branch 'master' into JENKINS-40370 Conflicts: pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfileScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineScript.groovy

          Code changed in jenkins
          User: Andrew Bayer
          Path:
          SYNTAX.md
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/AbstractModelASTCodeBlock.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhen.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhenExpression.java
          pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java
          pipeline-model-api/src/main/resources/ast-schema.json
          pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgent.java
          pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgentDescriptor.java
          pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgentScript.java
          pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/withscript/WithScriptDescribable.java
          pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/withscript/WithScriptDescriptor.java
          pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/withscript/WithScriptScript.java
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/Utils.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Stage.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/StageConditionals.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy
          pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/Any.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipeline.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfile.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/Label.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/None.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditional.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditionalDescriptor.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditionalScript.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/BranchConditional.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/EnvironmentConditional.java
          pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/ExpressionConditional.java
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/MethodsToListTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/OptionsTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/StageConditionalTranslator.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/AnyScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfileScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/LabelScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/NoneScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/BranchConditionalScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/EnvironmentConditionalScript.groovy
          pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/ExpressionConditionalScript.groovy
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java
          pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/LabelAndOtherFieldAgent.java
          pipeline-model-definition/src/test/resources/basicWhen.groovy
          pipeline-model-definition/src/test/resources/booleanParamBuildStep.groovy
          pipeline-model-definition/src/test/resources/errors/emptyWhen.groovy
          pipeline-model-definition/src/test/resources/errors/unknownWhenConditional.groovy
          pipeline-model-definition/src/test/resources/errors/whenInvalidParameterType.groovy
          pipeline-model-definition/src/test/resources/errors/whenMissingRequiredParameter.groovy
          pipeline-model-definition/src/test/resources/errors/whenUnknownParameter.groovy
          pipeline-model-definition/src/test/resources/json/basicWhen.json
          pipeline-model-definition/src/test/resources/json/errors/emptyWhen.json
          pipeline-model-definition/src/test/resources/json/errors/unknownWhenConditional.json
          pipeline-model-definition/src/test/resources/json/errors/whenInvalidParameterType.json
          pipeline-model-definition/src/test/resources/json/errors/whenMissingRequiredParameter.json
          pipeline-model-definition/src/test/resources/json/errors/whenUnknownParameter.json
          pipeline-model-definition/src/test/resources/json/skippedWhen.json
          pipeline-model-definition/src/test/resources/json/whenBranch.json
          pipeline-model-definition/src/test/resources/json/whenEnv.json
          pipeline-model-definition/src/test/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/LabelAndOtherFieldAgentScript.groovy
          pipeline-model-definition/src/test/resources/skippedWhen.groovy
          pipeline-model-definition/src/test/resources/when/simpleWhen.groovy
          pipeline-model-definition/src/test/resources/when/whenException.groovy
          pipeline-model-definition/src/test/resources/whenBranch.groovy
          pipeline-model-definition/src/test/resources/whenEnv.groovy
          http://jenkins-ci.org/commit/pipeline-model-definition-plugin/cf217be38d68c3ef7dda7e80539ce10a3c4cf8f6
          Log:
          Merge pull request #78 from jenkinsci/JENKINS-40370

          JENKINS-40370 Make stage.when more declarative

          Compare: https://github.com/jenkinsci/pipeline-model-definition-plugin/compare/1e1452409af4...cf217be38d68

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Andrew Bayer Path: SYNTAX.md pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/AbstractModelASTCodeBlock.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhen.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/ast/ModelASTWhenExpression.java pipeline-model-api/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidator.java pipeline-model-api/src/main/resources/ast-schema.json pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgent.java pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgentDescriptor.java pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/DeclarativeAgentScript.java pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/withscript/WithScriptDescribable.java pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/withscript/WithScriptDescriptor.java pipeline-model-declarative-agent/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/withscript/WithScriptScript.java pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/Utils.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/Stage.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/model/StageConditionals.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/JSONParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/ModelParser.groovy pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/validator/ModelValidatorImpl.groovy pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/Any.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipeline.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfile.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/Label.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/None.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditional.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditionalDescriptor.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/DeclarativeStageConditionalScript.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/BranchConditional.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/EnvironmentConditional.java pipeline-model-definition/src/main/java/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/ExpressionConditional.java pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ClosureModelTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/Messages.properties pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/MethodsToListTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/ModelInterpreter.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/OptionsTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/StageConditionalTranslator.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/AnyScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineFromDockerfileScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/DockerPipelineScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/LabelScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/NoneScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/BranchConditionalScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/EnvironmentConditionalScript.groovy pipeline-model-definition/src/main/resources/org/jenkinsci/plugins/pipeline/modeldefinition/when/impl/ExpressionConditionalScript.groovy pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/AbstractModelDefTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/BasicModelDefTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/ValidatorTest.java pipeline-model-definition/src/test/java/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/LabelAndOtherFieldAgent.java pipeline-model-definition/src/test/resources/basicWhen.groovy pipeline-model-definition/src/test/resources/booleanParamBuildStep.groovy pipeline-model-definition/src/test/resources/errors/emptyWhen.groovy pipeline-model-definition/src/test/resources/errors/unknownWhenConditional.groovy pipeline-model-definition/src/test/resources/errors/whenInvalidParameterType.groovy pipeline-model-definition/src/test/resources/errors/whenMissingRequiredParameter.groovy pipeline-model-definition/src/test/resources/errors/whenUnknownParameter.groovy pipeline-model-definition/src/test/resources/json/basicWhen.json pipeline-model-definition/src/test/resources/json/errors/emptyWhen.json pipeline-model-definition/src/test/resources/json/errors/unknownWhenConditional.json pipeline-model-definition/src/test/resources/json/errors/whenInvalidParameterType.json pipeline-model-definition/src/test/resources/json/errors/whenMissingRequiredParameter.json pipeline-model-definition/src/test/resources/json/errors/whenUnknownParameter.json pipeline-model-definition/src/test/resources/json/skippedWhen.json pipeline-model-definition/src/test/resources/json/whenBranch.json pipeline-model-definition/src/test/resources/json/whenEnv.json pipeline-model-definition/src/test/resources/org/jenkinsci/plugins/pipeline/modeldefinition/agent/impl/LabelAndOtherFieldAgentScript.groovy pipeline-model-definition/src/test/resources/skippedWhen.groovy pipeline-model-definition/src/test/resources/when/simpleWhen.groovy pipeline-model-definition/src/test/resources/when/whenException.groovy pipeline-model-definition/src/test/resources/whenBranch.groovy pipeline-model-definition/src/test/resources/whenEnv.groovy http://jenkins-ci.org/commit/pipeline-model-definition-plugin/cf217be38d68c3ef7dda7e80539ce10a3c4cf8f6 Log: Merge pull request #78 from jenkinsci/ JENKINS-40370 JENKINS-40370 Make stage.when more declarative Compare: https://github.com/jenkinsci/pipeline-model-definition-plugin/compare/1e1452409af4...cf217be38d68

          Liam Newman added a comment -

          Bulk closing resolved issues.

          Liam Newman added a comment - Bulk closing resolved issues.

            rsandell rsandell
            jamesdumay James Dumay
            Votes:
            0 Vote for this issue
            Watchers:
            8 Start watching this issue

              Created:
              Updated:
              Resolved: