Skip to content

Commit

Permalink
Adds RELEASING.md (#205)
Browse files Browse the repository at this point in the history
  • Loading branch information
JayShortway authored Oct 10, 2024
1 parent 923b903 commit 229a2a4
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 0 deletions.
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ CHANGELOG.md
CHANGELOG.latest.md
vendor/
.circleci
RELEASING.md
35 changes: 35 additions & 0 deletions RELEASING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Releasing
Releases happen automatically every week. If you need to make a manual release, there are 2 ways you can do that: using CircleCI and locally, using Fastlane.

## Using CircleCI
Trigger a pipeline in CircleCI for the branch you want to release (e.g. `main`), and pass a paramater with name `action` and value `bump`.

![Screenshot!](https://user-images.githubusercontent.com/664544/191806930-07737e3d-8c44-4bfd-8cef-b471b72643a4.png "CircleCI screenshot")

You can achieve the same using CircleCI API:

```
curl --location --request POST 'https://circleci.com/api/v2/project/github/RevenueCat/purchases-js/pipeline' \
--header 'Content-Type: application/json' \
-u "your_circleci_personal_token:" \
-d '{
"branch": "main",
"parameters": {
"action": "bump"
}
}'
```

More info on triggering pipelines in [CircleCI docs](https://circleci.com/docs/triggers-overview).

## Locally using Fastlane
1. Create a `fastlane/.env` file with your GitHub API token (see `fastlane/.env.SAMPLE`). This will be used to create the PR, so you should use your own token so the PR gets assigned to you.
2. Run `bundle exec fastlane bump github_rate_limit:10`. The `github_rate_limit` argument is optional, but recommended, to avoid hitting the GitHub API rate limit while generating the changelog.
1. Confirm base branch is correct.
2. Input the new version number.
3. Optionally update `CHANGELOG.latest.md` when the auto-generated one is not sufficient. Call out public API changes (if any).
4. A new branch and PR will automatically be created.
3. Review the PR and approve it if it's okay.
4. Then approve the hold job created in CircleCI. CircleCI will now create a tag for the version, and continue the release.
5. The release will be published automatically by CircleCI.
6. After that, you can merge the release PR to `main`.

0 comments on commit 229a2a4

Please sign in to comment.