This is the general process we use to release new code to one of our custom applications. The Apps team has defined a separate, specialized process for deploying custom code in Knack.
The Product Manager & Dev Lead collaboratively plan what issues will be included in the release
The Dev Lead ensures that all issues are assigned, completed, and tested before the release
After a pull request is reviewed by several devs, the PM reviews and adds any new functionality to the QA test script
The Dev Lead creates a single pull request that includes the scope of the release
Example:
The Dev Lead cleans up release notes
Example:
The release branch is deployed to Staging and the PM performs QA testing
The PM notifies users of scheduled downtime
Release party 🎉
PM merges pull request
Dev Lead notifies #atd-dev that the pull request has been tested, approved, and merged
Application-specific versions of this process are written as issues so they can be tracked collaboratively for each release.
Example:
PM sends release notes to stakeholders and users
Team debriefs on the process and updates the steps as needed