Skip to content

Commit b5b2771

Browse files
authored
Merge pull request #8809 from Couchers-org/na/update-release-docs
Add runbook for release process
2 parents dc3c8d1 + 05f46ff commit b5b2771

2 files changed

Lines changed: 31 additions & 0 deletions

File tree

docs/release-checklist.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
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

readme.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ If you are a **backend or full stack developer**, there is a Quick Start at [app
3232
* CI/CD goodies: [docs/cicd.md](docs/cicd.md) lists the different CI/CD functionality that we've got set up and how you can use this to simplify life
3333
* Database & migrations: [docs/database.md](docs/database.md) explains how to use the database and how we version the database with Alembic and update it when new tables or columns are added
3434
* Docker: [docs/docker.md](docs/docker.md) has some tips on how to work with docker and be less miserable
35+
* Release checklist: [docs/release-checklist.md](docs/release-checklist.md) goes over the steps that need to be completed for each release.
3536

3637
## Translations
3738

0 commit comments

Comments
 (0)