gerrit/Documentation/dev-release-subproject.txt
Yuxuan 'fishy' Wang 61698b14e0 Use the new section title style in Asciidoctor.
We previous use the section title style like:

Section level 1
===============

Section level 2
---------------

Which have a problem in Asciidoctor that the number of "="s or "-"s must match
the number of characters in the header exactly, as a result it's easy to make
mistakes while changing the titles. Asciidoctor provides a better style like:

= Section level 1

== Section level 2

So we switched to this style.

Also fixed a bug in replace_macros.py, which will not cause any problem in the
old style.

Change-Id: I811dd7238735d98f662767c17086152cd69aea02
2013-12-20 12:55:51 -08: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 `/lib/BUCK` 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
====
* 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
---------