Skip to content

Commit

Permalink
Merge pull request #381 from BitGo/update-release-process
Browse files Browse the repository at this point in the history
feat: update release documentation
  • Loading branch information
louib-bitgo authored Jan 24, 2024
2 parents b337d53 + 89f5edc commit 27f2c10
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 87 deletions.
48 changes: 9 additions & 39 deletions DEVELOPER.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,47 +39,17 @@ Besides the BitGo SDK, the WRW also depends on third-party nodes or block explor

You can test out a release by running `npm run build`. This will give you a packaged target in `/release`.

## Build and Release

Update the package.json version to the next release version, and commit the changes. Then run `./scripts/docker-build.sh`.

#### Build troubleshooting
### Build troubleshooting

- Note that in order to run the build script, you'll either need python available at `/usr/bin/python`, or you can set an environment variable `PYTHON_PATH`. You can set the variable by running `export PYTHON_PATH=$(which python)`.
- If you encounter the error `libtool is required, but wasn't found on this system`, you'll need to install `sodium` using [these instructions](https://github.com/paixaop/node-sodium).

Package files will be created in `/release`:

```bash
Wallet Recovery Wizard-Linux-VERSION.deb
Wallet Recovery Wizard-VERSION.dmg
Wallet Recovery Wizard-Setup-VERSION.exe
```

In order to add the checksums to the release notes, run:

```bash
./scripts/release-notes.sh
```
## Release

Add the output to the bottom of the release notes section

### Steps to Release

- Run `git clean -dfx`
- Update version on `package.json` following semantic versioning - https://docs.npmjs.com/about-semantic-versioning
- `npm install` again to generate `package-lock.json`
- Create a branch, commit and merge changes to `master`
- Check out to `master` branch locally and `git pull`
- Go to `https://github.com/BitGo/wallet-recovery-wizard/releases`
- Click `Create draft release`
- Add new tag to the release with the version of the release e.g. `v4.2.1`
- Add title with the version e.g. `v4.2.1`
- Click `Generate release notes`
- (On MacOS) Locally run the docker build script: `./scripts/docker-build.sh`
- (On MacOS) Run the release notes generation script: `./scripts/release-notes.sh`
- Copy the output and paste it into the release notes draft in GitHub
- After having already ran the docker build script
- Go into the `release` folder in the root of the repository and upload the `.dmg` , `.deb` and `.exe` files into the release draft in GitHub
- Publish release in GitHub
- Go to Slack on #eng-wrw and announce the release with the link to GitHub release page
- Navigate to the [GHA release workflow page](https://github.com/BitGo/wallet-recovery-wizard/actions/workflows/release.yml), and click on `Run workflow`
- Enter the version number for the next release. This should be a [semantic version](https://docs.npmjs.com/about-semantic-versioning).
- Click on `Run workflow`.
- The workflow will create a draft release in the [releases page](https://github.com/BitGo/wallet-recovery-wizard/releases).
- Validate that the release notes are accurate, and that the artifacts are working correctly.
- Publish the release in GitHub. This will also create a git tag in the repository.
- Go to Slack on `#eng-wrw` and announce the release with the link to GitHub release page.
15 changes: 0 additions & 15 deletions scripts/docker-build.sh

This file was deleted.

33 changes: 0 additions & 33 deletions scripts/release-notes.sh

This file was deleted.

0 comments on commit 27f2c10

Please sign in to comment.