...
- You should have read the Apache Guide To Release Management During Incubation
- You must have shell access to people.apache.org
- You must have the following utilities installed on your local machine and available in your path:
- ssh 2
- maven 2
- gpg
One time setup
Tip |
---|
Developers using Linux workstations can skip over the references to PuTTY and Cygwin |
Each time
(There are also one-time setup instructions)
...
1
...
Update the POMs to remove "-SNAPSHOT" from the version
...
2
...
Commit the POM changes
...
3
...
Tag the release by making a SVN copy of the head or designated revision
...
...
Code Block |
---|
svn copy -r ######
https://svn.apache.org/repos/asf/struts/struts2/trunk
https://svn.apache.org/repos/asf/struts/struts2/tags/STRUTS_#_#_#
-m "Tag r###### as Struts #.#.#" |
...
4
...
Assemble the release
...
...
...
mvn clean install site -P xwork,plugins,apps,all,pre-assembly
cd assembly
mvn assembly:assembly
...
5
...
Sign the release artifacts (in assembly/target/assembly/out
)
...
...
Code Block |
---|
gpg --armor --output struts-#.#.#-all.zip.asc --detach-sig struts-#.#.#-all.zip
openssl md5 < struts-#.#.#-all.zip > struts-#.#.#-all.zip.mdr |
...
6
...
pscp
the artifacts and signatures to people.apache.org:/www/builds/struts/#.#.#
...
7
...
Deploy the artifacts to our Maven repository
...
...
Code Block |
---|
mvn deploy -P apps,plugins,pre-assembly |
...
...
Prune any obsolete snapshots from p.a.o://www/people.apache.org/repos
...
8
...
Update the POMs to next version number and add the "-SNAPSHOT" suffix
...
9
...
Commit the POM changes
...
10
...
Deploy the new snapshot
...
...
Code Block |
---|
mvn -N install |
...
11
...
Add the next version to our issue tracker for scheduling new features and fixes
One time
Create and install a SSH key
...
1 | From cygwin, ssh to people.apache.org, save the public key if prompted, and exit |
---|---|
| cygwin will save the known hosts to your |
2 | From cygwin (not Windows) create another |
3 | Copy the |
Tasks that need to be performed for each release
1 | Update the POMs to remove "-SNAPSHOT" from the version | ||
---|---|---|---|
2 | Commit the POM changes | ||
3 | Tag the release by making a SVN copy of the head or designated revision | ||
|
| ||
4 | Assemble the release | ||
|
| ||
5 | Sign the release artifacts (in | ||
|
| ||
6 | | ||
7 | Deploy the artifacts to our Maven repository | ||
|
| ||
| Prune any obsolete snapshots from | ||
8 | Update the POMs to next version number and add the "-SNAPSHOT" suffix | ||
9 | Commit the POM changes | ||
10 | Deploy the new snapshot | ||
|
| ||
11 | Add the next version to our issue tracker for scheduling new features and fixes |
Resources
- Apache Guide To Release Management During Incubation
- Signing Releases
- Wendy's notes on Release Signing
- Apache Mirroring Guidelines
- Struts Release Instructions (upon which these instructions are based)