[JIRA] (JENKINS-40370) Run stage when branch name matches

6 views
Skip to first unread message

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:09:01 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
 
Jenkins / Task JENKINS-40370
Run stage when branch name matches
Change By: James Dumay
Summary: Run stage when branch branch name matches
Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
Atlassian logo

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:10:01 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
*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:
{code}
stage('second') {
    agent label:'some-node'
    branch "master"
    when {
        env.BRANCH == 'master'
    }
}
{code}

However, this isn't exactly editor friendly (though when will be supported via a text area) and the developer would have to
jump into learn the Script syntax to use .

*Solution*

We would like to formalise the pattern in a way that is more Editor and user friendly.

*Example - match single branch*
{code}
stage('deploy') {
    agent label:'some-node'
    branch "master"
    steps {
        sh './deploy.sh'
    }
}
{code}

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

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:11:01 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
*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:
{code}
stage('second') {
    agent label:'some-node'
    branch "master"
    when {
        env.BRANCH == 'master'
    }
}
{code}

However, this isn't exactly editor friendly (though when will be supported via a text area) and the developer would have to learn the Script syntax to use.


*Solution*

We would like to formalise the pattern in a way that is more Editor and user friendly.

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

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

*Example - match branch name pattern*
This stage would only be executed if the branch name started with { {feature/}}
{
code}

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

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:11:01 AM12/12/16
to jenkinsc...@googlegroups.com

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:12:02 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
*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:
{code}
stage('second') {
    agent label:'some-node'
    branch "master"
    when {
        env.BRANCH == 'master'
    }
}
{code}

However, this isn't exactly editor 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.

*Example - match single branch*
This stage would only be executed if {{master}} was the name of the current branch.
{code}
stage('deploy') {
    agent label:'some-node'
    branch "master"
    steps {
        sh './deploy.sh'
    }
}
{code}

*Example - match branch name pattern*
This stage would only be executed if the branch name started with {{feature/}}
{code}
stage('deploy to staging') {
    agent label:'some-node'
    branch "feature/*"
    steps {
        sh './deploy_pr.sh'
    }
}
{code}

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:12:05 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
*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:
{code}
stage('second') {
    agent label:'some-node'
    branch "master"
    when {
        env.BRANCH == 'master'
    }
}
{code}

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.

*Example - match single branch*
This stage would only be executed if {{master}} was the name of the current branch.
{code}
stage('deploy') {
    agent label:'some-node'
    branch "master"
    steps {
        sh './deploy.sh'
    }
}
{code}

*Example - match branch name pattern*
This stage would only be executed if the branch name started with {{feature/}} .
{code}
stage('deploy to staging') {
    agent label:'some-node'
    branch "feature/*"
    steps {
        sh './deploy_pr.sh'
    }
}
{code}

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:14:01 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay commented on Task JENKINS-40370
 
Re: Run stage when branch name matches

We may also want to do something similar for matching environment variables but I am less bullish on that.

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:16:01 AM12/12/16
to jenkinsc...@googlegroups.com

It does raise the question about when not being declarative - are we doing the right thing here?

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:25:01 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
Change By: James Dumay
*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:
{code}
stage('second') {
    agent label:'some-node'
    branch "master"
    when {
        env.BRANCH == 'master'
    }
}
{code}

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.
{code}
stage('deploy') {
    agent label:'some-node'
    branch "master"
    steps {
        sh './deploy.sh'
    }
}
{code}

*Example - match branch name pattern*
This stage would only be executed if the branch name started with {{feature/}}.
{code}
stage('deploy to staging') {
    agent label:'some-node'
    branch "feature/*"
    steps {
        sh './deploy_pr.sh'
    }
}
{code}

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 12:25:01 AM12/12/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
*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:
{code}
stage('second') {
    agent label:'some-node'
    branch "master"
    when {
        env.BRANCH == 'master'
    }
}
{code}

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.
{code}
stage('deploy') {
    agent label:'some-node'
    branch "master"
    steps {
        sh './deploy.sh'
    }
}
{code}

*Example - match branch name pattern*
This stage would only be executed if the branch name started with {{feature/}}.
{code}
stage('deploy to staging') {
    agent label:'some-node'
    branch "feature/*"
    steps {
        sh './deploy_pr.sh'
    }
}
{code}

pwolf@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 11:28:01 AM12/12/16
to jenkinsc...@googlegroups.com
Patrick Wolf commented on Task JENKINS-40370
 
Re: Run stage when branch name matches

I think special classing branch names AND having when is not an option. Redundant features are a PITA to document and cause user confusion, "Why does this exist? Am I doing it right? Should I be using the other method?"

We do one or the other but not both.

jdumay@cloudbees.com (JIRA)

unread,
Dec 12, 2016, 4:37:01 PM12/12/16
to jenkinsc...@googlegroups.com

Patrick Wolf agreed having two ways of doing this isn't great. Skipping stages with a script within when makes this feature not accessible to our target audience. Any bright ideas Andrew Bayer?

andrew.bayer@gmail.com (JIRA)

unread,
Dec 12, 2016, 4:41:03 PM12/12/16
to jenkinsc...@googlegroups.com

So I don't like this idea, if for no other reason than it's likely to lead to a slippery slope of "let's add a section for $SPECIFIC_CONDITION too!" and that's non-optimal.

I see the point of it - it does make things simpler. But I don't think it's really that hard for a user to do the script part themselves. Maybe we have the editor have a list of special case conditions or a free script field? So that if you are going through the editor, you choose when and then Branch is... or whatever, but if you're editing the Jenkinsfile directly, you just get a script box.

jdumay@cloudbees.com (JIRA)

unread,
Dec 13, 2016, 2:35:01 AM12/13/16
to jenkinsc...@googlegroups.com

Andrew Bayer with your work around it comes back to the model that the editor can understand.... when is just as non-roundtripable as the contents of script.

Throwing another idea out here: what if the conditions were a pluggable thing that you could even write implementations for in a library? branch and when could be declared and implemented that way..?

jdumay@cloudbees.com (JIRA)

unread,
Dec 13, 2016, 6:45:01 PM12/13/16
to jenkinsc...@googlegroups.com

Andrew Bayer what about making the block optional?

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

jdumay@cloudbees.com (JIRA)

unread,
Dec 13, 2016, 6:54:01 PM12/13/16
to jenkinsc...@googlegroups.com
James Dumay edited a comment on Task JENKINS-40370
[~abayer] what about making the block optional?

{code}

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

Means we could even have:

stage('deploy to staging') {
    agent label:'some-node'
    when environment FOO=bar // Model! Editor can do this
    steps {
        sh './deploy_pr.sh'
    }
}

jdumay@cloudbees.com (JIRA)

unread,
Dec 13, 2016, 6:54:01 PM12/13/16
to jenkinsc...@googlegroups.com
James Dumay edited a comment on Task JENKINS-40370
[~abayer] what about making the block optional?

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

Means we could even have:
{code}
stage('deploy to staging') {
    agent label:'some-node'
    when environment FOO=bar // Model! Editor can do this
    steps {
        sh './deploy_pr.sh'
    }
}

{code}

jdumay@cloudbees.com (JIRA)

unread,
Dec 13, 2016, 6:55:01 PM12/13/16
to jenkinsc...@googlegroups.com

andrew.bayer@gmail.com (JIRA)

unread,
Dec 13, 2016, 7:12:01 PM12/13/16
to jenkinsc...@googlegroups.com

That's a pain to implement, to say the least. I deeply regret not having made agent a block for future extensibility, and my attempts to make it speak both the existing form and block form have failed so far. So, no.

jdumay@cloudbees.com (JIRA)

unread,
Dec 14, 2016, 7:01:01 PM12/14/16
to jenkinsc...@googlegroups.com
James Dumay updated an issue
Change By: James Dumay
*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:
{code}
stage('second') {
    agent label:'some-node'
    branch "master"
    when {
        env.BRANCH == 'master'
    }
}
{code}

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.
{code}
stage('deploy
to staging ') {
    agent label:'some-node'
    when {     branch "master"
}
    steps {
        sh './
deploy deploy_pr .sh'

    }
}
{code}

*Example - match branch name pattern*
This stage would only be executed if the branch name started with {{feature/}}.
{code}
stage('deploy to staging') {
    agent label:'some-node'
    when {     branch "feature/*"
}
    steps {
        sh './deploy_pr.sh'
    }
}
{code}

jdumay@cloudbees.com (JIRA)

unread,
Dec 14, 2016, 7:02:01 PM12/14/16
to jenkinsc...@googlegroups.com
        sh './deploy_pr.sh'

    }
}
{code}

*Example - match branch name pattern*
This stage would only be executed if the branch name started with {{feature/}}.
{code}
stage('deploy to staging') {
    agent label:'some-node'
    when { branch "feature/*" }
    steps {
        sh './deploy_pr.sh'
    }
}
{code}


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

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

jdumay@cloudbees.com (JIRA)

unread,
Dec 14, 2016, 7:03:01 PM12/14/16
to jenkinsc...@googlegroups.com

andrew.bayer@gmail.com (JIRA)

unread,
Dec 19, 2016, 8:46:01 AM12/19/16
to jenkinsc...@googlegroups.com
 
Re: Run stage when branch name matches

So here's what we're proposing now:

when {
  branch "*/master"
}

when {
  expression {
     "foo" == "boo"
  }
}

With possible further extensions as we go.

andrew.bayer@gmail.com (JIRA)

unread,
Dec 19, 2016, 8:46:02 AM12/19/16
to jenkinsc...@googlegroups.com
Andrew Bayer assigned an issue to rsandell
 
Change By: Andrew Bayer
Assignee: Andrew Bayer rsandell

rsandell@cloudbees.com (JIRA)

unread,
Dec 19, 2016, 8:52:01 AM12/19/16
to jenkinsc...@googlegroups.com
rsandell commented on Task JENKINS-40370
 
Re: Run stage when branch name matches

And should we support

when {
  branch "*/master"
  expression {
     "foo" == "boo"
  }
}

?

pwolf@cloudbees.com (JIRA)

unread,
Dec 19, 2016, 11:17:01 AM12/19/16
to jenkinsc...@googlegroups.com

No. We agreed to put everything within the when block

pwolf@cloudbees.com (JIRA)

unread,
Dec 19, 2016, 11:18:01 AM12/19/16
to jenkinsc...@googlegroups.com
Patrick Wolf edited a comment on Task JENKINS-40370
No. We agreed to put everything within the {{when}} block .

We create special statements for {{branch}} and some others but anything special would need to use {{expression}}

domi@fortysix.ch (JIRA)

unread,
Dec 20, 2016, 2:06:01 AM12/20/16
to jenkinsc...@googlegroups.com

just wanted to add my 2cents... and yes you probably not gonna like it... but in the "old world" there is a plugin called "Conditional BuildStep" [1] it uses an other plugin called "Run Condition" [2] which contains all the logic of the different conditions. If you look at these plugins, then you see, that this is really a requirement people have and will wanna have in the "Pipeline Model" too. I think you should really prepare the "when" clause easy to be plugable.

[1] https://wiki.jenkins-ci.org/display/JENKINS/Conditional+BuildStep+Plugin
[2] https://wiki.jenkins-ci.org/display/JENKINS/Run+Condition+Plugin

rsandell@cloudbees.com (JIRA)

unread,
Dec 20, 2016, 6:56:01 AM12/20/16
to jenkinsc...@googlegroups.com
rsandell commented on Task JENKINS-40370

Patrick Wolf What you said is what my example shows. The difference between my example and the others is that there are more than one conditional within the when block.

pwolf@cloudbees.com (JIRA)

unread,
Dec 20, 2016, 10:47:01 AM12/20/16
to jenkinsc...@googlegroups.com

rsandell For some reason when I read your comment I read it as:

branch "*/master"
when {
  expression {
    "foo" == "boo"
  }
}

Not sure why I saw it like that.

andrew.bayer@gmail.com (JIRA)

unread,
Dec 20, 2016, 12:15:01 PM12/20/16
to jenkinsc...@googlegroups.com

Dominik Bartholdi 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.

scm_issue_link@java.net (JIRA)

unread,
Dec 20, 2016, 12:56:01 PM12/20/16
to jenkinsc...@googlegroups.com

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_issue_link@java.net (JIRA)

unread,
Dec 30, 2016, 3:55:02 PM12/30/16
to jenkinsc...@googlegroups.com

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_issue_link@java.net (JIRA)

unread,
Jan 4, 2017, 2:33:02 PM1/4/17
to jenkinsc...@googlegroups.com

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@gmail.com (JIRA)

unread,
Jan 6, 2017, 3:07:05 PM1/6/17
to jenkinsc...@googlegroups.com

andrew.bayer@gmail.com (JIRA)

unread,
Jan 6, 2017, 3:07:05 PM1/6/17
to jenkinsc...@googlegroups.com
Andrew Bayer started work on Task JENKINS-40370
 
Change By: Andrew Bayer
Status: Open In Progress

andrew.bayer@gmail.com (JIRA)

unread,
Jan 6, 2017, 3:07:06 PM1/6/17
to jenkinsc...@googlegroups.com

andrew.bayer@gmail.com (JIRA)

unread,
Jan 9, 2017, 4:39:03 PM1/9/17
to jenkinsc...@googlegroups.com
Change By: Andrew Bayer
Status: In Review Resolved
Resolution: Fixed

scm_issue_link@java.net (JIRA)

unread,
Jan 9, 2017, 4:39:04 PM1/9/17
to jenkinsc...@googlegroups.com

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_issue_link@java.net (JIRA)

unread,
Jan 9, 2017, 4:39:06 PM1/9/17
to jenkinsc...@googlegroups.com

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_issue_link@java.net (JIRA)

unread,
Jan 9, 2017, 4:39:08 PM1/9/17
to jenkinsc...@googlegroups.com

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

scm_issue_link@java.net (JIRA)

unread,
Jan 9, 2017, 4:39:08 PM1/9/17
to jenkinsc...@googlegroups.com

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

bitwiseman@gmail.com (JIRA)

unread,
Oct 22, 2019, 11:24:50 PM10/22/19
to jenkinsc...@googlegroups.com
Liam Newman closed an issue as Fixed
 

Bulk closing resolved issues.

Change By: Liam Newman
Status: Resolved Closed
This message was sent by Atlassian Jira (v7.13.6#713006-sha1:cc4451f)
Atlassian logo
Reply all
Reply to author
Forward
0 new messages