Skip to content

Tools release processing

chalda edited this page May 5, 2021 · 5 revisions

For some smaller project in the Narayana "fleet" (narayana-checkstyle-config, narayana-openshift-tools) we started to use the Maven Release Plugin to get the project released. This short article shows how to proceed and adds some context.

1) pom.xml preparation

Before the release is done the project’s pom.xml has to be prepared with several requirements. The release plugin uses the <distributionManagement> element to know where to deploy the artifacts and the <scm> element to know where to push the tag and the release changes in pom.xml.

Configure scm

The scm element contains several configuration sub-elements. The important one for the tagging and pushing is the developerConnection which is used to push the pom.xml changes during release:prepare.

For the git implementation it’s good to use one via ssh connection. Then the push is automatic without asking the username/password as the ssh key is used. For example it could be like <developerConnection>scm:git:[email protected]:jbosstm/narayana-checkstyle-config.git</developerConnection>.

SCM element example
<scm>
  <connection>scm:git:https://github.com/jbosstm/narayana-checkstyle-config.git</connection>
  <url>https://github.com/jbosstm/narayana-checkstyle-config</url>
  <developerConnection>scm:git:[email protected]:jbosstm/narayana-checkstyle-config.git</developerConnection>
  <tag>HEAD</tag>
</scm>