I recently had the privilege to perform the release management duties for Apache Karaf's first release as a top level project. The process went relatively smooth considering we were creating our release guide as we worked. So for this blog entry I'd like to talk a little about the experience in the hopes that other release managers may gain some more insight into the goings on in Apache projects.
The duties of a release manager (RM) are diverse, it includes serving as a facilitator, gatekeeper, architect, support engineer, and overall as a coordinator. In these roles the RM will deal with software defects, issues, risks, change requests, feature requests, deployment and packaging, and community involvement. Sometimes these duties are liken to the practice of herding cats, however it's so far been my experience that most parties involved in Apache projects just want things to go smoothly towards each release.
|The facilitator acts as a go-between different parties.|
|Apache Karaf build|
and release infrastructure.
|RMs build processes like|
fortifications. - protecting
|As supporting systems|
increase, the RM has to
ensure they're maintained.
Finally the coordinator role is to balance the needs of the contributing developers with that of the communities requests. In the Apache world this means attempting to align contributors efforts with that of user and other projects needs towards making the release date. This may mean communicating with developers to attain status' on particular issues in the project tracking system, or assigning issues to available resources to get required work resolved.
|The co-ordinator role can feel like balancing on the edge of a 200 ft cliff.|