summaryrefslogtreecommitdiffstats
path: root/Documentation/dev-release-subproject.txt
blob: 4886849b42bbd8c33dbf3a2965d58a7e63db6c91 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
= 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
----

* 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
---------