Plugin Information |
---|
View Pipeline: Declarative on the plugin site for more information. |
Older versions of this plugin may not be safe to use. Please review the following warnings before using an older version:
This plugin requires Jenkins 2.7.1 or later
More Information at jenkins.io
More information is available at jenkins.io.
Changelog
Version 1.2.2 (Oct 5, 2017)
- JENKINS-47202 - Fix serialization of
environment
containing steps. - JENKINS-47197 - Make sure we don't require Java 8 at runtime.
Version 1.2.1 (Sept 29, 2017)
- JENKINS-47106 - Switch to
alwaysPull
option fordocker
- JENKINS-47109 - Add support for
failFast
for parallelstage
s - JENKINS-47193 - Don't break parsing of
Jenkinsfile
due toclass
orenum
defined in it as well aspipeline
block.
Version 1.2 (Sept 21, 2017)
Declarative Pipeline runs in progress upon upgrade from versions prior to 1.2 will probably fail on resuming.
- JENKINS-41334 - Parallel definition and execution of
stage
s. - JENKINS-45198 - When on core 2.60+ with
pipeline-scm-step
2.6+ and recent versions ofgit
,subversion
, ormercurial
plugins, include SCM-provided variables in environment automatically. - JENKINS-42753 - Rewrite of runtime parser, fixing a bunch of issues with
environment
,when expression
, variable and function behavior consistency, and more.- Related tickets:
- JENKINS-44298 - Usage of variables and functions defined outside the
pipeline
block can work inwhen expression
again. - JENKINS-44482 - Pre-existing environment variables containing backslashes do not have their backslashes discarded.
- JENKINS-44603 - Usage of variables and functions defined outside the
pipeline
block work inenvironment
variables again. - JENKINS-45636 - Backslashes are correctly escaped when defined in one new
environment
variable and referenced in another. - JENKINS-45637 - Environment variables containing multiple pre-existing environment variables no longer silently fail.
- JENKINS-45916 - Pre-existing environment variables, such as
PATH
, can be overridden in theenvironment
directive. - JENKINS-44034 - Variable references in
environment
variable definitions no longer require curly braces. - JENKINS-46112 - Logs for
error
steps visible in Blue Ocean correctly. - JENKINS-45991 -
environment
variables can be configured to have default values, i.e.,FOO = FOO ?: "default"
- JENKINS-44298 - Usage of variables and functions defined outside the
- Related tickets:
- JENKINS-46065 - Provide an extension point for contributing to Declarative validation.
- JENKINS-46277 - Always do a fresh docker pull, even for agents in stages.
- JENKINS-46064 - New
when
conditions for referencing the build's changelog. - JENKINS-44039 - Fixed round-tripping of single-quote multiline
script
blocks from the editor. - JENKINS-46544 - Give useful error message on use of bare
${...
} outside quotes. - JENKINS-44497 - Allow use of variables in
tools
values. - JENKINS-46547 - Support declaration of
pipeline
blocks in shared libraries'src/*.groovy
files.
Version 1.1.9 (July 25, 2017)
- JENKINS-45081 - Stop erroring out on use of object methods named
pipeline
outside of a Declarative Pipeline. - JENKINS-45098 - Properly validate use of a tool without a version.
- JENKINS-42338 - Make sure
tools
defined at the top-level are installed onstage
-levelagent
s.
Version 1.1.8 (July 4, 2017)
- JENKINS-45270 - Fix
retry
use inoptions
directive. - JENKINS-43071 - Only require
Jenkins.READ
permissions for CLI linter.
Version 1.1.7 (June 21, 2017)
- JENKINS-44898 - Workaround for JENKINS-44898 for other plugins implementing
WithScript
extension points until we've moved to Jenkins core 2.66 or later.
Version 1.1.6 (June 12, 2017)
- JENKINS-44809 - Fix problem causing duplicate
JobProperty
and related errors.
Version 1.1.5 (June 8, 2017)
- JENKINS-44149 - Properly clean up stale/defunct
JobProperty
,Trigger
andParameterDefinition
left behind upon removal fromJenkinsfile
. - JENKINS-43816 - Make sure we always have a non-null
execution
before parsing. - JENKINS-43055 - Get rid of noisy warnings regarding unset heads in Jenkins log.
- JENKINS-44621 - Don't remove
JobProperty
,Trigger
andParameterDefinition
defined outside of theJenkinsfile
.
Version 1.1.4 (May 2, 2017)
- JENKINS-43339 - Properly handle non
FAILURE
build results fromFlowInterruptedException
. - JENKINS-43872 - Escape dollar signs in
environment
correctly. - JENKINS-43910 - Allow use of
FileCredentials
inenvironment
variables.
Version 1.1.3 (Apr 20, 2017)
- JENKINS-43486 - Handle non-String environment values properly.
- JENKINS-43404 - Escaped double quotes within environment values were over-resolved.
- JENKINS-42748 - Escaped backslashes in environment weren't properly escaped at evaluation time.
Version 1.1.2 (Apr 5, 2017)
- JENKINS-42762 - Go back to allowing multiple conditions directly in a
when
directive. - JENKINS-42693 - Add
additionalBuildArgs
parameter fordockerfile
. - JENKINS-42771 - Allow + binary expressions in env values.
- JENKINS-43195 - Relocate
com.github.fge.*
JSON schema classes to allow other uses of different versions of the library. - JENKINS-41456 - Support validation from multiple named parameters of a
DataBoundConstructor
with a singleMap
parameter only. - Brazilian Portuguese localization! Thanks to kinow and boaglio!
- JENKINS-43137 - Triple quoted strings work again in
environment
. - JENKINS-43143 - Parameters are available in
environment
values again. - JENKINS-43177 - Scrub
env.WHATEVER
inenvironment
values for cross-references. - JENKINS-43013 - Round-robin resolution of
environment
values means ordering of declaration does not need to be relevant. - JENKINS-42858 -
credentials
environment variables are available for reference inenvironment
values, andenvironment
variable values are available for use incredentials
strings as well.
Version 1.1.1 (Mar 13, 2017)
- 1.1 was inadvertently built with Java 8 and has errors when run with Java 7. 1.1.1 is a rebuild of 1.1 with the correct Java 7 used.
Version 1.1 (Mar 13, 2017)
- JENKINS-42230 - Move all extension points provided by Declarative into a single new plugin for simpler dependencies.
- JENKINS-42168 - Added
validateDeclarativePipeline
step for validating Declarative Pipelines from within Pipelines. Meta! - JENKINS-41503 - Fix behavior of
null
translation between JSON and Groovy representations. - JENKINS-42286 - Allow directory separators in
Dockerfile
file names. - JENKINS-42470 - Don't require a crumb for the
pipeline-model-converter
API endpoint. - JENKINS-38110 - Add a
libraries
directive for specifying shared libraries to load in to the build. - JENKINS-41118 - Support custom workspaces.
- JENKINS-42473 - Don't use parse results from any source but the
Jenkinsfile
. - JENKINS-41185 - Add support for
anyOf
,allOf
andnot
when
conditions that contain otherwhen
conditions. - JENKINS-42498 - Fix
when
/environment
serialization error when XStream serialization is used behind the scenes. - JENKINS-42640 - Properly handle validation of
String
->int
- JENKINS-42551 - Reject
String
values in JSON that would lead to invalid Groovy syntax, and reject any JSON that converts to invalid Groovy syntax generally. - JENKINS-42550 - Properly point to bad top-level entries in validation.
- JENKINS-41748 - Allow cross referencing of variables in
environment
section to actually work. - JENKINS-41890 - Make sure
env.WORKSPACE
can be referenced inenvironment
section properly.
Version 1.0.2 (Feb 21, 2017)
- JENKINS-42027 - Global configuration for Declarative-specific Docker settings (label, registry) were not persisting across restarts.
- JENKINS-41668 - Add a "dir" option for Dockerfile Declarative agent.
- JENKINS-41900 - Move "should I do checkout?" logic around for simpler code in extensions of Declarative agents.
- JENKINS-41605 - Auto-checkout from SCM in per-stage agents if they're not reusing the same node block as the top-level agent.
- JENKINS-41950 - Properly report errors outside stages.
- JENKINS-41645 - Better validation for non-binary expressions in
environment
block. - JENKINS-42039 - Add a Declarative option for "treat unstable as failure".
- JENKINS-42226 - Prevent
NullPointerException
when a null value is used forwhen
branch
condition.
Version 1.0.1 (Feb 10, 2017)
- JENKINS-41911 - Shade JSON schema-related dependencies to avoid issues with conflicting library versions when certain other plugins (such as
jackson2-api
) are installed.
Version 1.0 (Feb 1, 2017)
- First non-beta release. No changes from 0.9.
Version 0.9.1 (still Beta 3) (Jan 27, 2017)
- JENKINS-41490, JENKINS-41491 - Fixing JSON support for nested tree steps and validation of certain tree steps.
- JENKINS-41518 - Add validation of environment variable names to be valid Java identifiers - only relevant for JSON->Jenkinsfile conversion since this would already have shown up as a compilation error in a Jenkinsfile.
- Catching a few validation fixes and string changes.
Version 0.9 (Beta 3) (Jan 25, 2017)
- FINAL BETA - if a blocker bug is discovered before 1.0 is released, additional point releases may be done before 1.0.
- JENKINS-40984 - Always evaluate all possible
post
conditions even if an earlier one fails. - JENKINS-39684 - Allow configuration of registry URL and credentials for
docker
anddockerfile
agent
types. - JENKINS-40866 - Allow per-
stage
agent
configuration ofdocker
anddockerfile
to run on the samenode
as the top-level, so that you can reuse the workspace. - JENKINS-41050 - Perform SCM checkout on raw node first even if we're using
docker
ordockerfile
. - JENKINS-41243 - Speeding up tagging of synthetic stages for improved UX in Blue Ocean.
Version 0.8.2 (still Beta 2) (Jan 12, 2017)
- JENKINS-41012 -
when
branch
andenvironment
conditions did not actually work. Fixed. - Fixing an issue with validation/parsing outside the context of a run.
Version 0.8.1 (still Beta 2) (Jan 10, 2017)
- Fixing compatibility warning to say compatible since 0.8.
Version 0.8 (Beta 2) (Jan 10, 2017)
- JENKINS-40418 - Fix previously-not-running validation for triggers, parameters and properties.
- JENKINS-40337 - Rename
properties
tooptions
and add the first Declarative-specificoption
,skipDefaultCheckout
. - JENKINS-40462 - Get rid of
wrappers
section, move wrappers liketimeout
andretry
intooptions
section. - JENKINS-40580 - Quote parallel branch names to make sure they're valid.
- JENKINS-40642 - Add additional default imports so that things like
@Library
and@NonCPS
work. - JENKINS-40239 - Add descriptions for build conditions.
- JENKINS-40393 - Internationalize error messages!
- JENKINS-40524 - Reworked
agent
syntax to be more extensible and consistent. - JENKINS-40370 - Improved
when
syntax and helpers.
Version 0.7.1 (still Beta 1) (Dec 13, 2016)
- Re-spinning release due to a mixup that resulted in one of the sub-plugins not ending up in the Update Center.
Version 0.7 (Beta 1) (Dec 13, 2016)
- JENKINS-39134 - Fix issue with Guice and resuming a build within a
script
block. - JENKINS-38153 - Use the new
TagsAction
class to mark skipped stages so that Blue Ocean can render them accurately. - JENKINS-39923 - Add new
jenkins-cli
command for linting a Declarative Jenkinsfile. - JENKINS-40136 - Properly allow use of
failFast
withparallel
. - JENKINS-40226 - Make sure non-
stage
failures still triggerpost
failure conditions.
Version 0.6 (Nov 17, 2016)
- JENKINS-39216 - Add
dockerfile
agent backend, auto-building a Dockerfile and running the build in the resulting image. - JENKINS-39631 - Fix error status for steps within stages.
- JENKINS-37781 - Add conditional execution of individual stages via the
when
section. - JENKINS-39394 - Removing
notifications
completely, renamingpostBuild
topost
for consistency with post-stage actions. - JENKINS-39799 - Fix a bug with invalid
post
contents.
Version 0.5 (Nov 2, 2016)
- JENKINS-37823 -
wrappers
section for wrapping the entire build in a block-scoped step, likeretry
ortimeout
. - JENKINS-38433 -
agent
backends are now pluggable. - JENKINS-39245 - Added
environment
section support in stages. - JENKINS-39244 - Added
tools
section support in stages. - JENKINS-38993 - Deterministic order for post-build/stage condition execution.
- JENKINS-39011 - Properly error out if the
pipeline
step is present but not at the top-level. - JENKINS-39109 - Add a configuration option for what label to use for docker agents.
- JENKINS-38865 - Split the AST into a separate plugin so others can depend on it without pulling everything in.
- JENKINS-38331 - Per-stage configuration for agent.
- JENKINS-37792 - Post-stage actions added.
Version 0.4 (Oct 11, 2016)
- 0.3 was inadvertently built with Java 8 - so a new release is needed.
- JENKINS-37824 - Support for job properties, triggers and build parameters.
Version 0.3 (Oct 10, 2016)
- JENKINS-38818 - Correctly escape string constants when generating groovy from AST
- JENKINS-38564 - API to convert json step blob to step syntax (and back) - one step at a time
- JENKINS-37788 - Use
isLiteral
instead ofisConstant
- JENKINS-38426 - Allow non-literal expressions for environment variable values.
- JENKINS-38242 - Allow specifying arguments for Docker.
- JENKINS-38152 - Expose the execution model on the
WorkflowRun
. - JENKINS-37932 - Add
agent any
to replaceagent label:""
. - JENKINS-38097 - Execute empty named stages for any planned stages after a stage fails so that execution model and actual execution match up.
Version 0.2 (Sept 8, 2016)
- JENKINS-37897 - switch to block-scoped stages and add synthetic stages for notifications and postBuild.
- JENKINS-37828 - Properly reject mixes of
parallel
and other steps. - JENKINS-37928 - Properly detect sections without values.
- JENKINS-38047 - Allow multiple unnamed parameters in declarative subset.
Version 0.1 (Aug 30, 2016)
- Initial beta release. Functional but limited.