This is a simple plugin that allows users to increase versions in pom.xml
and publish via maven, either with the deploy
or the jib:build
target.
It has an option to increase the version after release to the next snapshot version
It only assures that the mvn
command exists.
Was inspired by https://github.com/conveyal/maven-semantic-release. It differs in some ways. It …
- … allows different maven targets.
- … has an option to allow multimodule projects
- … can increase a snapshot version after a successful release
- … has fewer checks to verify th integrity of the setup (does not check
pom.xml
)
npm i -D semantic-release @terrestris/maven-semantic-release
- Add
@terrestris/maven-semantic-release
as a plugin (https://semantic-release.gitbook.io/semantic-release/usage/plugins) - Configure
settingsPath
or ensure that a maven settings file exists at the expected location - Make sure that the
@semantic-release/git
plugin runs after this plugin and includes thepom.xml
if you want to use it.
Kind: global typedef
Properties
Name | Type | Default | Description |
---|---|---|---|
[settingsPath] | string |
"'~/.m2/settings.xml'" |
Path to a maven settings file. |
[processAllModules] | boolean |
false |
This sets the processAllModules option for the versions:set target. It is useful for multimodule projects. |
[mavenTarget] | 'deploy' |
'package jib:build' |
'deploy jib:build' |
[clean] | boolean |
true |
Whether the clean target will be applied before publishing. |
[updateSnapshotVersion] | boolean |
false |
Whether a new snapshot version should be set after releasing. |
[snapshotCommitMessage] | string |
"'chore: setting next snapshot version [skip ci]'" |
The commit message used if a new snapshot version should be created. |
[debug] | boolean |
false |
Sets the -X option for all maven calls. |