Skip to content
This repository has been archived by the owner on Sep 1, 2022. It is now read-only.

Commit

Permalink
Release v4.6.5
Browse files Browse the repository at this point in the history
  • Loading branch information
cwardgar committed Apr 4, 2016
1 parent 720125f commit 7b55cca
Show file tree
Hide file tree
Showing 7 changed files with 51 additions and 34 deletions.
2 changes: 1 addition & 1 deletion build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ allprojects {
// Matches Maven's "project.groupId". Used in MANIFEST.MF for "Implementation-Vendor-Id".
group = "edu.ucar"
// Matches Maven's "project.version". Used in MANIFEST.MF for "Implementation-Version".
version = '4.6.5-SNAPSHOT'
version = '4.6.5'
// Eventually, we'll stop appending "SNAPSHOT" to our versions and just use this.
status = 'development'
}
Expand Down
2 changes: 1 addition & 1 deletion cdm/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ javadoc {

// TODO: Use the Sync task for this.
task releaseDocs(dependsOn: javadoc, group: 'Release') << {
def releaseDir = webdir + "javadoc"
String releaseDir = new File(webdir, "javadoc").absolutePath

ant.delete(dir: releaseDir)
ant.mkdir(dir: releaseDir)
Expand Down
51 changes: 34 additions & 17 deletions docs/internal/release.txt
Original file line number Diff line number Diff line change
@@ -1,19 +1,18 @@
Making a release for CDM/TDS using Gradle
Last edited 2015/08/31

{release.minor} refers to the full, 3-part version, e.g. "4.6.1"
{release.minor} refers to the full, 3-part version, e.g. "4.6.5"
{release.major} refers to the truncated, 2-part version, e.g. "4.6"

1. Prepare ncWMS and threddsIso
- Detailed instructions can be found in threddsIso/docs/internal/release.txt and ncwms/docs/internal/release.txt.
- Detailed instructions can be found in ncwms/docs/internal/release.txt and threddsIso/docs/internal/release.txt.
- The instructions for the two are very similar.

2. Ensure that there are no uncommitted changes.

3. Pull all of the latest changes from upstream.

4. In "/build.gradle", update the project's version for the release.
Likely, this means removing the '-SNAPSHOT' prefix, e.g. '4.6.4-SNAPSHOT' to '4.6.4'.
Likely, this means removing the '-SNAPSHOT' prefix, e.g. '4.6.5-SNAPSHOT' to '4.6.5'.

5. In "/gradle/dependencies.gradle", update the "uk.ac.rdg.resc:ncwms" and "EDS:threddsIso" dependencies to the
versions deployed in step 1. Also, remove any dependencies on SNAPSHOT versions of libraries.
Expand Down Expand Up @@ -71,7 +70,20 @@ Last edited 2015/08/31
- chmod 775 .
- chmod 664 *

14. Release Web Start to www:/content/software/thredds/v{release.major}/netcdf-java/webstart
14. Mount the www.unidata.ucar.edu:/web/ Samba share to a local directory, if it's not mounted already. The details of
this will vary based on your OS.
- On OS X do: Finder->Go->Connect to Server... Then connect to "smb://www/web".

15. Set the "webdir" and "ftpdir" Gradle properties
- Open ~/.gradle/gradle.properties
- Set "webdir" to "{web.mount.dir}/content/software/thredds/v{release.major}/netcdf-java"
- Set "ftpdir" to "{web.mount.dir}/ftp/pub/netcdf-java/v{release.major}"
- The value of {web.mount.dir} will likely differ, but mine is "/Volumes/web".
- So for example, on OS X, my (Christian's) Gradle properties for "webdir" and "ftpdir" are:
webdir=/Volumes/web/content/software/thredds/v4.6/netcdf-java
ftpdir=/Volumes/web/ftp/pub/netcdf-java/v4.6

16. Release Web Start to www:/content/software/thredds/v{release.major}/netcdf-java/webstart
- Make sure that you have the correct gradle.properties (see Christian for info). In particular, you'll need the
'keystore', 'keystoreAlias', 'keystorePassword', 'webdir', and 'ftpdir' properties defined.
- Rename old directories
Expand All @@ -84,7 +96,7 @@ Last edited 2015/08/31
- If there were no errors and the new Web Start looks good, delete the old stuff.
* rm -r webstartOld

15. Release Javadoc to www:/content/software/thredds/v{release.major}/netcdf-java/javadoc and javadocAll
17. Release Javadoc to www:/content/software/thredds/v{release.major}/netcdf-java/javadoc and javadocAll
- Rename old directories
* cd /content/software/thredds/v{release.major}/netcdf-java/
* mv javadoc javadocOld
Expand All @@ -96,7 +108,7 @@ Last edited 2015/08/31
* rm -r javadocOld
* rm -r javadocAllOld

16. Change permissions of the files you just copied.
18. Change permissions of the files you just copied.
- cd /content/software/thredds/v{release.major}/netcdf-java/
- find webstart -type d -exec chmod 775 {} \;
- find webstart -type f -exec chmod 664 {} \;
Expand All @@ -105,37 +117,42 @@ Last edited 2015/08/31
- find javadocAll -type d -exec chmod 775 {} \;
- find javadocAll -type f -exec chmod 664 {} \;

17. Update Unidata download page(s)
19. Update Unidata download page(s)
- check http://www.unidata.ucar.edu/downloads/thredds/index.jsp
* modify www:/content/downloads/thredds/toc.xml as needed
- check http://www.unidata.ucar.edu/downloads/netcdf/netcdf-java-4/index.jsp
* modify www:/content/downloads/netcdf/netcdf-java-4/toc.xml as needed

18. Edit www:/web/content/software/thredds/latest.xml to reflect the correct
20. Edit www:/web/content/software/thredds/latest.xml to reflect the correct
{release.minor} version for stable and development. This file is read by all
TDS > v4.6 to make log entries regarding current stable and development versions
to give users a heads-up of the need to update.

19. Commit the changes you've made.
21. Commit the changes you've made.
- At the very least, project.version in the root build script should have been modified.
- Make the commit message something like "Release {release.minor}".

20. Create a tag for the release: "v{release.minor}".
22. Create a tag for the release: "v{release.minor}".

21. Prepare for next round of development.
23. Prepare for next round of development.
- Update the project version. Increment it and add the "-SNAPSHOT" suffix.
* For example, if {release.minor}="4.6.1", the next version will be "4.6.2-SNAPSHOT".
* For example, if {release.minor}="4.6.5", the next version will be "4.6.6-SNAPSHOT".
- Commit the change.
* The commit message should be something like "Begin work on 4.6.2-SNAPSHOT".
* The commit message should be something like "Begin work on 4.6.6-SNAPSHOT".

22. Push the commits upstream.
24. Push the commits upstream.
- Be sure to include the tag you created.
* In IntelliJ, check the "Push Tags" box in the "Push Commits" dialog.

NOTE 1: In the Maven build, the maven-release-plugin roughly handled steps 2-6 and 19-22 for us. In the future, we
25. Make blog post for the release. Example: http://www.unidata.ucar.edu/blogs/news/entry/netcdf-java-library-and-tds1

26. Make a release announcement to the mailing lists. It should build off the blog post.
Example: http://www.unidata.ucar.edu/mailing_lists/archives/netcdf-java/2016/msg00001.html

NOTE 1: In the Maven build, the maven-release-plugin roughly handled steps 2-6 and 21-24 for us. In the future, we
should investigate similar Gradle plugins that offer the same functionality.

NOTE 2: In the future, we should be performing many (all?) of these steps from Jenkins, not our local machine.

Note 3: The latest.xml doc in step 18 is very simple and could probably be updated
Note 3: The latest.xml doc in step 20 is very simple and could probably be updated
automatically during the release process.
2 changes: 1 addition & 1 deletion gradle/dependencies.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ libraries["commons-compress"] = "org.apache.commons:commons-compress:1.8.1"

libraries["oro"] = "oro:oro:2.0.8"

libraries["ncwms"] = dependencies.create("uk.ac.rdg.resc:ncwms:1.2.tds.4.6.5-SNAPSHOT") {
libraries["ncwms"] = dependencies.create("uk.ac.rdg.resc:ncwms:1.2.tds.4.6.5") {
// This is an external dependency on an old artifact of ours.
// The "cdm" artifact that we build in this project will take its place.
// This needs to be a local exclusion; globally excluding "edu.ucar:cdm" would be very bad.
Expand Down
2 changes: 1 addition & 1 deletion ui/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -163,7 +163,7 @@ javadoc {

task releaseDocs(dependsOn: javadoc, group: 'Release') << {
if (project.hasProperty("webdir")) {
def releaseDir = webdir + "javadocAll"
String releaseDir = new File(webdir, "javadocAll").absolutePath

ant.delete(dir: releaseDir)
ant.mkdir(dir: releaseDir)
Expand Down
4 changes: 2 additions & 2 deletions ui/netCDFtools.jnlp
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://www.unidata.ucar.edu/software/thredds/v4.6/netcdf-java/webstart" href="netCDFtools.jnlp">
<information>
<title>NetCDF Tools UI 4.6.4</title>
<title>NetCDF Tools UI 4.6.5</title>
<vendor>Unidata</vendor>
<homepage href="http://www.unidata.ucar.edu/software/thredds/current/netcdf-java/documentation.htm"/>
<description kind="short">Graphical interface to netCDF-Java / Common Data Model</description>
Expand All @@ -17,7 +17,7 @@

<resources>
<j2se version="1.7+" max-heap-size="1500m"/>
<jar href="ui-4.6.4.jar"/>
<jar href="ui-4.6.5.jar"/>
<extension name="netcdfUI Extra" href="netCDFtoolsExtraJars.jnlp"/>
</resources>

Expand Down
22 changes: 11 additions & 11 deletions ui/netCDFtoolsExtraJars.jnlp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<jnlp spec="1.0+" codebase="http://www.unidata.ucar.edu/software/thredds/v4.6/netcdf-java/webstart"
href="netCDFtools.jnlp">
<information>
<title>NetCDF Tools UI 4.6.4</title>
<title>NetCDF Tools UI 4.6.5</title>
<vendor>Unidata</vendor>
<homepage href="http://www.unidata.ucar.edu/software/thredds/current/netcdf-java/documentation.htm"/>
<description kind="short">Graphical interface to netCDF-Java / Common Data Model</description>
Expand All @@ -21,19 +21,19 @@
<!-- In particular, all of these jars should have the download="lazy" attribute. -->
<resources>
<j2se version="1.7+" max-heap-size="1500m"/>
<!-- Updated by hand for 4.6.4, using :ui:showDependencies to print the deps.
<!-- Updated by hand for 4.6.5, using :ui:showDependencies to print the deps.
In the future, we should be generating this file in Gradle. -->

<!-- In theory, Webstart will use these in conjunction with ui.jar/META-INF/INDEX.LIST to download
the minimum number of dependencies when running the application. -->
<jar href="cdm-4.6.4.jar" download="lazy"/>
<jar href="clcommon-4.6.4.jar" download="lazy"/>
<jar href="bufr-4.6.4.jar" download="lazy"/>
<jar href="grib-4.6.4.jar" download="lazy"/>
<jar href="netcdf4-4.6.4.jar" download="lazy"/>
<jar href="opendap-4.6.4.jar" download="lazy"/>
<jar href="waterml-4.6.4.jar" download="lazy"/>
<jar href="httpservices-4.6.4.jar" download="lazy"/>
<jar href="cdm-4.6.5.jar" download="lazy"/>
<jar href="clcommon-4.6.5.jar" download="lazy"/>
<jar href="bufr-4.6.5.jar" download="lazy"/>
<jar href="grib-4.6.5.jar" download="lazy"/>
<jar href="netcdf4-4.6.5.jar" download="lazy"/>
<jar href="opendap-4.6.5.jar" download="lazy"/>
<jar href="waterml-4.6.5.jar" download="lazy"/>
<jar href="httpservices-4.6.5.jar" download="lazy"/>
<jar href="ehcache-core-2.6.2.jar" download="lazy"/>
<jar href="jdom2-2.0.4.jar" download="lazy"/>
<jar href="spring-context-4.1.6.RELEASE.jar" download="lazy"/>
Expand All @@ -49,7 +49,7 @@
<jar href="guava-18.0.jar" download="lazy"/>
<jar href="slf4j-api-1.7.7.jar" download="lazy"/>
<jar href="slf4j-jdk14-1.7.7.jar" download="lazy"/>
<jar href="udunits-4.6.4.jar" download="lazy"/>
<jar href="udunits-4.6.5.jar" download="lazy"/>
<jar href="joda-time-2.8.1.jar" download="lazy"/>
<jar href="jcip-annotations-1.0.jar" download="lazy"/>
<jar href="quartz-2.2.0.jar" download="lazy"/>
Expand Down

0 comments on commit 7b55cca

Please sign in to comment.