|author||Thomas Wolf <firstname.lastname@example.org>||Tue Sep 22 21:02:32 2020 +0200|
|committer||Thomas Wolf <email@example.com>||Tue Sep 22 21:02:32 2020 +0200|
Use a Jenkins lock to prevent concurrent publishing This resource lock needs not be registered globally in Jenkins; if it doesn't exist, the "Lockable Resources" plug-in will use an ephemeral lock that exists as long as there are builds referencing it.  The EGit Jenkins does have this plug-in installed. Still use separate tmp directories per build; the Jenkins lock will protect only concurrent builds; other things that might concurrently do things with these directories might still interfere.  https://plugins.jenkins.io/lockable-resources/ Change-Id: I2b6c4e854d57b0cf6aaa301cff1f35acb5ec23cd Signed-off-by: Thomas Wolf <firstname.lastname@example.org>
This repository contains the EGit Jenkins pipeline library.
For general information about Jenkins pipeline shared libraries see the Jenkins documentation.
Jenkins pipelines are written in Groovy; for development in Eclipse it may help to install the Groovy Development Tools. Be aware, though, that GDT patches the JDT Java compiler; a particular version of GDT thus works only with a particular version of JDT. If you use an Eclipse I-build (nightly development build for the next release), GDT will fail to install.
The library is intended to be used for the Jenkins builds of the egit/egit and the egit/egit-github repositories.
It provides several kinds of general pipelines that can be configured:
verifyBuildis a simple pipeline that builds and runs the tests for a Gerrit patch set.
productBuildis intended to be run when a Gerrit patch set is submitted and builds a full distribution (nightly or stable build).
uiNode encapsulates the general Jenkins slave setup to run a build including UI tests on a JIRO node.
src contains auxiliary Groovy classes encapsulating generally useful operations.
The content of this repository is licensed under the EPL 2.0.