Skip to content

Commit

Permalink
Update release automation setup.
Browse files Browse the repository at this point in the history
  • Loading branch information
rwjblue committed Jan 15, 2021
1 parent 00933bb commit 5dc22f2
Show file tree
Hide file tree
Showing 3 changed files with 176 additions and 260 deletions.
39 changes: 16 additions & 23 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
# Release
# Release Process

Releases are mostly automated using
[release-it](https://github.com/release-it/release-it/) and
[lerna-changelog](https://github.com/lerna/lerna-changelog/).


## Preparation

Since the majority of the actual release process is automated, the primary
Expand All @@ -25,39 +24,33 @@ When reviewing merged PR's the labels to be used are:
* internal - Used for internal changes that still require a mention in the
changelog/release notes.


## Release

Once the prep work is completed, the actual release is straight forward:

* First ensure that you have `release-it` installed globally, generally done by
using one of the following commands:
* First, ensure that you have installed your projects dependencies:

```sh
yarn install
```
# using https://volta.sh
volta install release-it

# using Yarn
yarn global add release-it
* Second, ensure that you have obtained a
[GitHub personal access token][generate-token] with the `repo` scope (no
other permissions are needed). Make sure the token is available as the
`GITHUB_AUTH` environment variable.

# using npm
npm install --global release-it
```
For instance:

* Second, ensure that you have installed your projects dependencies:
```bash
export GITHUB_AUTH=abc123def456
```

```
yarn install
```
[generate-token]: https://github.com/settings/tokens/new?scopes=repo&description=GITHUB_AUTH+env+variable

* And last (but not least 😁) do your release. It requires a
[GitHub personal access token](https://github.com/settings/tokens) as
`$GITHUB_AUTH` environment variable. Only "repo" access is needed; no "admin"
or other scopes are required.
* And last (but not least 😁) do your release.

```
export GITHUB_AUTH="f941e0..."
release-it
```sh
npx release-it
```

[release-it](https://github.com/release-it/release-it/) manages the actual
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
"jest": "^24.9.0",
"prettier": "^2.2.1",
"release-it": "^14.2.2",
"release-it-lerna-changelog": "^2.4.0"
"release-it-lerna-changelog": "^3.1.0"
},
"engines": {
"node": "6.* || 8.* || >= 10.*"
Expand Down
Loading

0 comments on commit 5dc22f2

Please sign in to comment.