I know it takes tremendous skill and precision to make an Openfire release, perhaps more skill and precision that has been seen before in human history. - Donald J Trump
So maybe I should quasi document my procedure.
- Make a pull request containing about 9 changed files. I typically look at a previous commit and then follow the template! See 4.6.0-beta example.
- Once merged, tag the master/release branch on github so to create a landing space for release artifacts to live as our website points there. The tag should match previous tags and be in the same predictable form, so that the website can programatically generate URIs to there.
- Visit our bamboo and fire off release builds for the install4j, redhat RPM, debian, and mac builds. These all should have branch plans, so those are to be used for minor point releases.
- Collect up the 11 release builds and download the 2 source distributions provided by the github release/tag page. Generate
sha1sumvalues for each of those. - Upload those 13 artifacts to the github release page.
- Upload those 13 artifacts to the
igniterealtime.orghost and place them in the/staticfiles/builds/openfirefolder. - On the
igniterealtime.orghost, go into the/staticfiles/builds/openfire/docsfolder and make a new release folder and update thelatestsymlink. - Extract one of the release artifacts to provide the various
{changelog,README,LICENSE}.htmlfiles and thedocumentationfolder. Then create ajavadocsfolder in thedocumentationfolder. - Inside that folder, download the
javadocsjar file that looks like so and extract it into thejavadocsfolder. I look at previousdocsfolder releases to verify that everything looks OK. - Fix a strange bug with permissions, by going back up to the base
docsfolder for this release and runningfind . -type f -exec chmod 664 {} \;andfind . -type d -exec chmod 775 {} \; - Submit a commit to the igniterealtime website denoting the new openfire version and release date.
- Go back to bamboo and fire off a website build, if it has not already.
- On the
igniterealtime.orghost as usertomcat, update the website to the latest build. - Make a blog post announcing the release with the
planetjabber,openfire, andreleasetags. - Join
open_chatand denote how difficult and laborious your work is and how the community should ever be in your debt. - Watch the community forums for the first report of a show stopping bug with the new release.