|
| 1 | +# Release Checklist |
| 2 | + |
| 3 | +Here are all the steps that need to be done for each official Couchers release. |
| 4 | + |
| 5 | +## Before you start |
| 6 | +- [] Do a post in the #couchops channel for any operations, translation, merch, etc. accomplishments that should also be included in the release blog post. |
| 7 | +- [] Check if there are any recruitment needs that should be shouted out in the "Volunteer Needs at Couchers" section of the blog post. |
| 8 | +- [] This could also be a good time to add/remove positions from our volunteer page if they are no longer relevant |
| 9 | + |
| 10 | +# Dev Tasks |
| 11 | +- [] Increment version number in web `package.json` and `app/version`. Usually we bump in a minor version for a quarterly release. |
| 12 | +- [] Get the list of completed PRs from Aapeli and separate into categories of features |
| 13 | +- [] Create markdown file blog post for new release in `app/web/markdown/blog` within the correct year, month and day folders. Either write it in there, or if a non-dev has written the post, paste it in and fix up the markdown formatting. |
| 14 | +- [] Add any CouchOps accomplishments that are not included in the PRs to the post. Update the "Volunteer Needs at Couchers" section as needed. |
| 15 | +- [] Take screenshots of any new relevant features. Make sure no sensitive user data is in the screenshots and use staging if necessary. Add these to the markdown blog post, look at previous posts for how to do it and center them. |
| 16 | +- [] Create a new entry in `app/web/dashboardNews.json` at the top |
| 17 | +- [] Add or replace current dashboard news widget in `app/web/features/dashboard/Dashboard.tsx` |
| 18 | +- [] Update the `activeness_probe.latest_release` string in `app/backend/src/couchers/email/locales/en.json` so it has the most relevant top few recent features. |
| 19 | +- [] Merge blog post PR with the above changes and deploy via `ops.couchershq.org` |
| 20 | +- [] Update `LATEST_RELEASE_BLOG_URL` in `app/backend/src/couchers/constants.py` to the url of the blog post for the latest release. |
| 21 | +- [] Send blog post notification |
| 22 | + |
| 23 | +# Non-dev tasks |
| 24 | +- [] Copy the markdown from the completed blog post into a new Listmonk newsletter and add the `Dear Hi {{ .Subscriber.FirstName }}` and the signature |
| 25 | +- [] Upload the screenshots into the Media section of Listmonk and fix up the images in the newsletter. You can look at past newsletters for reference. |
| 26 | +- [] Preview newsletter and once you're sure it's okay and the text has been looked over by Aapeli, Jesse and/or Nicole, start campaign |
| 27 | +- [] Create social media graphics in Canva Couchers account using the release template. The slides just need to be updated with the new features and the version number |
| 28 | +- [] Write a caption and add #couchersorg and any other relevant hashtags and post from the official Couchers.org Instagram, Tiktok and Bluesky accounts (Instagram will post to Facebook automatically). Share to stories as well when relevant. |
| 29 | +- [] Post the social media links on Slack so volunteers can share or repost if they want |
| 30 | +- [] Write a shortened version of the release blog post (without the PRs) and post to the Couchersorg own reddit channel from the official Couchers reddit account |
0 commit comments