-
Notifications
You must be signed in to change notification settings - Fork 55
Creating a new release
-
Update all pom files to the new release.
You can use this command line, provided you have the xmlstarlet program installed. Also, edit theFROM
andTO
variables:FROM=3.4-SNAPSHOT;TO=3.4.5; for pom in $(find -name pom.xml); do xmlstarlet ed --inplace -P -N m=http://maven.apache.org/POM/4.0.0 --var FROM "'$FROM'" -u '/m:project/m:version[text()=$FROM]' -v ${TO} -u '/m:project/m:parent/m:version[text()=$FROM]' -v "$TO" -u '/m:project/m:properties/m:geofence-version[text()=$FROM]' -v "$TO" $pom ; done
-
Make sure the new version has been properly updated by building the project
mvn clean install
-
Add and commit the new poms:
git add . git commit -m "Release 3.4.5"
-
Create a new tag:
git tag v3.4.5
-
Revert to the SNAPSHOT status.
You can use the first line, setting the properFROM
andTO
vars:FROM=3.4.5;TO=3.4-SNAPSHOT; .....
-
Add and commit the updated poms:
git add . git commit -m "Version 3.4-SNAPSHOT"
-
Push everything
git push git push --tags
-
On the build server, build the new release
-
Retrieve the deployed war file (e.g.: https://repo.osgeo.org/repository/Geoserver-releases/org/geoserver/geofence/geofence-gui-web/3.4.5/geofence-gui-web-3.4.5.war)
-
Create a new release (https://github.com/geoserver/geofence/releases/new)
-
On the master branch, update the README with the new info (updated version, link to the binary, ...)