commit | 5c95b2016dd65334e51218f44b09b42b183b07b9 | [log] [tgz] |
---|---|---|
author | Konrad Windszus <kwin@apache.org> | Wed Jan 05 17:07:43 2022 +0100 |
committer | Konrad Windszus <kwin@apache.org> | Fri Jan 07 19:22:20 2022 +0100 |
tree | ea7db917de77ea41b49a061c0a9596ecf8b69852 | |
parent | cfa922bce8b8cce2a5ea4c65687a11723732c6a7 [diff] |
allow to configure each stage separately
This library is used for all FileVault Jenkins builds and enabled on https://ci-builds.apache.org/job/Jackrabbit/job/filevault/
It follows the structure outlined at https://www.jenkins.io/doc/book/pipeline/shared-libraries/
It is supposed to be called in a Jenkinsfile
like this
vaultPipeline('ubuntu', 11, '3', { vaultStageBuild(['ubuntu', 'Windows'], [8, 11, 17], ['3', '3.6.3'], 'apache_jackrabbit-filevault-package-maven-plugin') vaultStageDeploy() } )
The vaultPipeline
step encapsulates the main build environment parameters: The first argument is the main node label to build with, the second one the main JDK version, third argument the main Maven version The fourth argument is a closure containing the actual stages where each may be one of
vaultStageBuild
: the actual Maven build and SonarQube execution (the latter only for the main environment)vaultStageIT
: an isolated execution of just the integration testsvaultStageDeploy
: the stage to deploy the previously built Maven artifacts to the ASF Snapshot Repository (depends on 1.)For the parametrisation of those individual stages refer the source code.