|
| 1 | +# Node SDK Release Process Document |
| 2 | + |
| 3 | +Using v1.4 branch and last release of v1.4.15 as an example throughout. |
| 4 | + |
| 5 | +## Pre-Check |
| 6 | + |
| 7 | +Check top level `package.json` file properties **version** and **tag** are one above the current release and correct for publishing snapshots. Expect *1.4.16-snapshot* and *unstable-1.4*. If this is not the case then builds are likely to fail. Consider fixing and creating a PR or move straight onto submit a PR for a new release. |
| 8 | + |
| 9 | +## Submit Release PR |
| 10 | + |
| 11 | +- Create a jira for publish - publish v1.4.16. |
| 12 | +- Run `scripts/changelog.sh` script from the project root directory. It takes two arguments; last release commit hash and next release version number - `./scripts/changelog.sh <commithash> 1.4.16`. |
| 13 | +- Update the **version** and **tag** properties in the top-level `package.json` file to be the appropriate values - next release version *1.4.16* and release npm tag *latest-1.4*. |
| 14 | +- Create `release_notes/v1.4.16.txt` file with appropriate text - "This is a mainenance release containing bug fixes". |
| 15 | +- Git add, submit, push and create PR. The build once the PR is merged will do the npm publishing. Check it has npm published at https://www.npmjs.com/package/fabric-client and https://www.npmjs.com/package/fabric-common |
| 16 | + |
| 17 | +## Tag Release |
| 18 | + |
| 19 | +- Create in GitHub a release draft with similar text to the release_notes - "This is a maintenance release containing bug fixes": |
| 20 | + - Code > Tags > Releases > Draft a new release |
| 21 | + - Be sure to set: |
| 22 | + - Title = v1.4.16 |
| 23 | + - Tag version = v1.4.16 |
| 24 | + - Target Branch = release-1.4 [NOTE: Check that no commits have gone into the branch since the commit that did the npm publishing as just just selecting the branch will tag the latest commit. If subsequent commits have gone in then the commit that did the publishing needs to be selected explicityly.] |
| 25 | +- Save as draft iniitallly. |
| 26 | +- When ready 'Publish release'. Publishing the release in GitHub creates a corresponding Git tag. |
| 27 | + |
| 28 | +## Post Release Clean-up |
| 29 | + |
| 30 | +- Create a jira for Reset snapshot publishing to 1.4.17. |
| 31 | +- Once the release is complete, create a PR to change the top-level `package.json` file's **version** and **tag** properties back to ones for publishing snapshots - *1.4.17-snapshot* and *unstable-1.4*. |
| 32 | + |
| 33 | +## Post Release Announcement |
| 34 | + |
| 35 | +Post a release notice on mailing list or slack channel if appropriate. |
| 36 | + |
| 37 | + |
0 commit comments