Build process and continuous integration
Build automation tool
Keyple uses Gradle.
Keyple components are versioned according to Semantic Versioning 2.0.0 which is based on the three numbers
-api), the incrementation of
Zindicates only a documentation update.
Keyple continuous integration works with the Jenkins server of the Eclipse Foundation.
The CI automates the following tasks (defined in the
- verify the validity of the version;
- verify the code formatting using Spotless;
- build the code;
- execute unit tests;
- sign and publish artifacts to Maven Central Repository;
- publish the javadoc to the corresponding GitHub Pages;
- publish the code quality report to SonarCloud.
A snapshot artifact (suffixed with
-SNAPSHOT) is automatically published after each commit on the
main branch, except in the case of a release (see Release publication).
gradle.propertiesfile must not have a
-SNAPSHOTsuffix because the suffix is automatically added by the Keyple Gradle plugin.
A release artifact is automatically published if and only if the following two conditions are met:
- The commit is done on the
mainbranch or on a
- The commit message starts with
X.Y.Zmust be the version defined in the
Integration tests are defined in an independent GitHub repository: keyple-integration-java-test