-
Notifications
You must be signed in to change notification settings - Fork 124
Release management process
Daniel Pierce edited this page Mar 23, 2022
·
54 revisions
- Does the release require QA, usability testing, or an accessibility audit? Schedule that to happen before cutting the final release if needed. Work with the Hyrax Product Owner to set up quality assurance testing and accessibility audits.
- Update all available translations to ensure internationalization is consistent across languages.
- Check that an old tag (from the Sufia days) does not already exist. If it does, it can be deleted with
git push --delete origin {tag name}
- Create release notes in GitHub. In the new release, include at least a block with upgrade notes and a block showing the changelog -- see script changelog.sh for help generating changelog entries. (See an example.)
- Bump the version number in version.rb to a SemVer-appropriate version; feel free to consult others (via Slack, samvera-tech, or a Samvera Tech call) if you're not sure what version to choose.
- Modify the README and the install template to replace all instances of the past version with the new version.
- Change the tag for the installation template in the README from, e.g. (if bumping from 1.0.0 to 1.1.0),
rails new my_app -m https://raw.githubusercontent.com/samvera/hyrax/v1.0.0/template.rb
torails new my_app -m https://raw.githubusercontent.com/samvera/hyrax/v1.1.0/template.rb
. - Add, commit, and push all your changes directly to the
main
branch of the upstream repository. (If GitHub prevents you from pushing directly tomain
, submit your changes as a PR.) - Release the gem to rubygems.org via
rake release
. (See below if this doesn't work.) - Update the Hyrax Feature Matrix to indicate features that have been added, removed, or moved to a different layer of the stack.
- Send a release message to samvera-tech, samvera-community, and samvera-releases describing the changes (which you can copy from the GitHub release). (This assumes you've already joined those three lists. Do that first!) It may be helpful to base your message on a prior example, which also contains some new text explicitly thanking contributors, which you can get from the changelog.
If this is your first time pushing to rubygems.org for a Samvera gem:
- Create an account at rubygems.org if you haven't already, or make note of your rubygems.org email address.
- Ask on Slack or samvera-tech about making you an owner of the gem on rubygems.org. (Your rubygems.org email address and GitHub username need to be added to this script, and then someone who already has owner access needs to run that script.)
- Ask on Slack or samvera-tech about adding you to the Admins team in the samvera GitHub organization.
- If you have not yet, set up
~/.gem/credentials
according to these instructions.
Then try again.
Ask tamsin johnson (Hyrax tech lead) if you need help with, or have questions about, any of the steps in the release management process.