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-releaseas a plugin (https://semantic-release.gitbook.io/semantic-release/usage/plugins) - Configure
settingsPathor ensure that a maven settings file exists at the expected location - Make sure that the
@semantic-release/gitplugin runs after this plugin and includes thepom.xmlif you want to use it.
- MavenTarget :
'deploy'|'package jib:build'|'deploy jib:build' - PluginConfig :
Object
Kind: global typedef
Properties
| Name | Type | Default | Description |
|---|---|---|---|
| [settingsPath] | string |
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 | MavenTarget |
'deploy' |
This determines which mvn targets are used to publish. |
| 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. |
| mvnw | boolean |
false |
Use the mvnw script instead of mvn |