-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
923b903
commit 229a2a4
Showing
2 changed files
with
36 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,3 +8,4 @@ CHANGELOG.md | |
CHANGELOG.latest.md | ||
vendor/ | ||
.circleci | ||
RELEASING.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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`. |