gerrit/Documentation/dev-release-subproject.txt
David Pursehouse 652dadbc9a dev-release-subproject: Add 'performRelease' setting
When deploying artifacts (i.e. gwtorm, gwtjsonrpc, prolog-cafe) to
the Sonatype repository, it is necessary for the artifacts to be
signed, otherwise releasing will fail.

To sign the artifacts during deployment, 'performRelease' must be
set. Add this to the instructions.

Change-Id: I9eba633d8fdb466ef81823b7132479cfffbb2415
2018-12-07 16:43:20 +09:00

95 lines
2.1 KiB
Plaintext

= Making a Release of a Gerrit Subproject
[[make-snapshot]]
== Make a Snapshot
* Build the latest snapshot and install it into the local Maven
repository:
+
----
mvn clean install
----
* Test Gerrit with this snapshot locally
== Publish Snapshot
If a snapshot for a subproject was created that should be referenced by
Gerrit while current Gerrit development is ongoing, this snapshot needs
to be published.
* Make sure you have done the configuration needed for deployment:
** link:dev-release-deploy-config.html#deploy-configuration-settings-xml[
Configuration in Maven `settings.xml`]
** link:dev-release-deploy-config.html#deploy-configuration-subprojects[
Configuration for Subprojects in `pom.xml`]
* Deploy the new snapshot:
+
----
mvn deploy
----
* Change the `id`, `bin_sha1`, and `src_sha1` values in the `maven_jar`
for the subproject in `/WORKSPACE` to the `SNAPSHOT` version.
+
When Gerrit gets released, a release of the subproject has to be done
and Gerrit has to reference the released subproject version.
[[prepare-release]]
== Prepare the Release
* link:#make-snapshot[First create (and test) the latest snapshot for
the subproject]
* Update the top level `pom.xml` in the subproject to reflect
the new project version (the exact value of the tag you will create
below)
* Create the Release Tag
+
----
git tag -a -m "prolog-cafe 1.3" v1.3
----
* Build and install into local Maven repository:
+
----
mvn clean install
----
[[publish-release]]
== Publish the Release
* Make sure you have done the configuration needed for deployment:
** link:dev-release-deploy-config.html#deploy-configuration-settings-xml[
Configuration in Maven `settings.xml`]
** Configuration in `pom.xml` for
link:dev-release-deploy-config.html#deploy-configuration-subprojects[subprojects]
* Deploy the new release:
+
----
mvn deploy -DperformRelease=true
----
* Push the pom change(s) to the project's repository
`refs/for/<master|stable>`
* Push the Release Tag
+
----
git push gerrit-review refs/tags/v1.3:refs/tags/v1.3
----
GERRIT
------
Part of link:index.html[Gerrit Code Review]
SEARCHBOX
---------