mirror of
https://github.com/actualbudget/actual.git
synced 2026-05-05 22:52:20 -05:00
Update release docs to reflect latest process (#7690)
* Update release docs to reflect latest process * Add missed space * GitHub doesn't like non-American spelling * PR feedback
This commit is contained in:
committed by
GitHub
parent
1b86bba2cd
commit
c593bda145
@@ -1,10 +1,13 @@
|
||||
# How to Cut a Release
|
||||
|
||||
In the open-source version of Actual, there are 3 NPM packages:
|
||||
## General information
|
||||
|
||||
In the open-source version of Actual, there are 4 NPM packages:
|
||||
|
||||
- [@actual-app/api](https://www.npmjs.com/package/@actual-app/api): The API for the underlying functionality. This includes the entire backend of Actual, meant to be used with Node.
|
||||
- [@actual-app/web](https://www.npmjs.com/package/@actual-app/web): A web build that will serve the app with a web frontend. This includes both the frontend and backend of Actual. It includes the backend as well because it's built to be used as a Web Worker.
|
||||
- [@actual-app/sync-server](https://www.npmjs.com/package/@actual-app/sync-server): The entire sync-server and underlying web client in one package. This includes the Server CLI, meant to be used with Node.
|
||||
- [@actual-app/cli](https://www.npmjs.com/package/@actual-app/cli): A companion CLI used as a terminal-based client for Actual.
|
||||
|
||||
All packages and the main Actual release are versioned together. That makes it clear which version of the package should be used with the version of Actual.
|
||||
|
||||
@@ -21,7 +24,7 @@ For example:
|
||||
- `v23.3.2` - another bugfix launched later in the month of March;
|
||||
- `v23.4.0` - first release launched on 9th of April, 2023;
|
||||
|
||||
## Release branch
|
||||
### Release branch
|
||||
|
||||
A release branch and PR are automatically cut at 17:00 UTC on the 25th of each month. To cut one manually, run [this GitHub Action](https://github.com/actualbudget/actual/actions/workflows/cut-release-branch.yml).
|
||||
|
||||
@@ -29,13 +32,15 @@ The release notes workflow automatically generates a blog post and updates `docs
|
||||
|
||||
Fixes that need to be included in the release should be cherry-picked onto the release branch manually.
|
||||
|
||||
## Stabilise the release
|
||||
## Release process
|
||||
|
||||
### Stabilize the release
|
||||
|
||||
- [ ] Fix spelling in the generated release notes as needed.
|
||||
- [ ] Share the release PR in the release channel on Discord.
|
||||
- [ ] Wait until at least 2 other maintainers have approved the release.
|
||||
|
||||
## Merge and tag the release
|
||||
### Merge and tag the release
|
||||
|
||||
- [ ] Merge the release PR to master.
|
||||
- [ ] Create the tag on the **release branch** and push it. When the tag is pushed, it triggers the Docker stable image, all NPM packages and the Desktop app to be built and published.
|
||||
@@ -45,22 +50,21 @@ Fixes that need to be included in the release should be cherry-picked onto the r
|
||||
git push {remote} vX.Y.Z
|
||||
```
|
||||
|
||||
All NPM packages should be automatically released and pushed to the NPM registry. Check them here:
|
||||
All NPM packages should be automatically released and pushed to the NPM registry; confirm [on NPM](https://www.npmjs.com/package/@actual-app/sync-server).
|
||||
|
||||
- [@actual-app/api](https://www.npmjs.com/package/@actual-app/api)
|
||||
- [@actual-app/web](https://www.npmjs.com/package/@actual-app/web)
|
||||
- [@actual-app/sync-server](https://www.npmjs.com/package/@actual-app/sync-server)
|
||||
Docker images should be automatically released and pushed to Docker Hub; confirm [on the Docker tags page](https://hub.docker.com/r/actualbudget/actual-server/tags).
|
||||
|
||||
For the Windows Store desktop app, a submission will be automatically uploaded and submitted for certification. The certification process can take up to 3 business days; once complete the app will be in the Store. You can check the update status [here](https://partner.microsoft.com/en-us/dashboard) if you have permission. Note that the Store UI will not correctly reflect the submission status for about 30 minutes after submission.
|
||||
For the Windows Store desktop app, a submission will be automatically uploaded and submitted for certification. The certification process can take up to 3 business days; once complete the app will be in the Store. You can check the update status [on the partner dashboard](https://partner.microsoft.com/en-us/dashboard) if you have permission. Note that the Store UI will not correctly reflect the submission status for about 30 minutes after submission.
|
||||
|
||||
Finally, a draft GitHub release should be automatically created [here](https://github.com/actualbudget/actual/releases).
|
||||
Finally, a draft GitHub release should be automatically created; confirm [on the releases page](https://github.com/actualbudget/actual/releases).
|
||||
|
||||
Once the GitHub release is published, the Flathub publish workflow will trigger for the Linux desktop app. A PR will be created against the [Actual Flathub Repository](https://github.com/flathub/com.actualbudget.actual/pulls) and the core maintainers will be assigned as reviewers. The Core team will review the PR and merge it to `master`, which will kick off a production release to the Flathub Store. It can take anywhere from hours to a few days before the app will be available in the Flathub Store.
|
||||
### Verify the release
|
||||
|
||||
## Finalize the release
|
||||
- [ ] Deploy the new server Docker image and do a quick smoke test to verify things still work as expected.
|
||||
- [ ] Perform the same smoke test on the desktop app corresponding to your platform (attached to the draft release).
|
||||
|
||||
- [ ] After the Docker image for the release is ready and pushed to Docker Hub, remember to deploy it and do a quick smoke test to verify things still work as expected.
|
||||
- [ ] Un-draft the GitHub release which will send announcement notifications to all apps.
|
||||
- [ ] Approve and merge the [Flathub Release PR](https://github.com/flathub/com.actualbudget.actual/pulls) to master.
|
||||
- [ ] Wrap up by sending an announcement on Discord and Twitter.
|
||||
- [ ] Wait one to two days to see if any new bugs show up that need a patch release.
|
||||
### Finalize the release
|
||||
|
||||
- [ ] Un-draft the GitHub release which will send announcement notifications to all apps and create a PR to the [Actual Flathub Repository](https://github.com/flathub/com.actualbudget.actual/pulls).
|
||||
- [ ] Send an announcement on Discord and Twitter.
|
||||
- [ ] Approve and merge the [Flathub Release PR](https://github.com/flathub/com.actualbudget.actual/pulls) to master. After merge, it can take anywhere from hours to a few days before the app will be available in the Flathub Store.
|
||||
|
||||
Reference in New Issue
Block a user