A Maven plug-in used by Bonita projects to:
- Install custom dependencies from the project store (where external projects dependencies are stored) to the local Maven repository.
- Analyze Bonita dependencies and their content (Connector, Actor filters, Rest API Extensions...).
- Generate Business Object Model artifacts from the BDM descriptor file
- Generate Extensions submodule
- Validate Bonita model artifacts
- Build Business Archive from a
.procfiles - Build UID pages
- Extract processes configuration from
.procfiles. - Merge parameters into the Bonita configuration file
https://bonitasoft.github.io/bonita-project-maven-plugin/
This project uses the gitflow-maven-plugin for release management. Releases are created using the GitHub Actions workflow.
- develop: Main development branch for future releases
- support/A.B.x: Maintenance branches for older versions (e.g., support/1.0.x, support/2.0.x, support/2.1.x)
- master: Not used (removed, use support branches for maintenance)
Releases are created via the GitHub Actions workflow Release
| Parameter | Description | Default | Example |
|---|---|---|---|
| version | Version to release (leave empty to use current pom.xml version) | empty | 2.1.3 |
| nextDevelopmentVersion | Next development version (leave empty to use versionDigitToIncrement policy) | empty | 2.1.4-SNAPSHOT |
| versionDigitToIncrement | Version digit to increment in next development version | 2 (patch) |
0=major, 1=minor, 2=patch |
Patch Release (X.Y.Z) - Bug fixes and minor updates
- Set
versionDigitToIncrement: 2 (default) - Example:
2.1.2 → 2.1.3-SNAPSHOT - Use for: Support branches, hotfixes
Minor Release (X.Y.0) - New features, backward compatible
- Set
versionDigitToIncrement: 1 - Example:
2.1.2 → 2.2.0-SNAPSHOT - Use for: Regular releases from develop
Major Release (X.0.0) - Breaking changes
- Set
versionDigitToIncrement: 0 - Example:
2.1.2 → 3.0.0-SNAPSHOT - Use for: Major version bumps
When you run the workflow from any branch (develop or support/*), it will:
- Update version to release version (removes -SNAPSHOT)
- Commit: "chore(release): Update versions for release"
- Create git tag (e.g.,
2.1.3) - Update version to next development version
- Commit: "chore(release): Update for next development version"
- Push commits and tags to GitHub
Note: The workflow does NOT create a release branch - it performs the release directly on the branch you selected.
Publication is done via the Publish workflow which will build and deploy a given tag to Maven Central.
Deploy the latest site version using the Publish Maven Site workflow.
When releasing from a support branch, you should manually cascade merge the changes up to newer branches and develop.
Example: After doing a release from support/1.0.x, merge support/1.0.x into support/2.0.x, then merge
support/2.0.x into support/2.1.x, and so on into develop.
We would love you to contribute, pull requests are welcome! Please see the CONTRIBUTING.md for more information.
The sources and documentation of this project are released under the GPLv2 License