Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Update releasing instructions with current flow #297

Merged
merged 3 commits into from
Jul 6, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 15 additions & 6 deletions docs/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,17 +90,26 @@ Steps for a new release (these are in the process of being automated):
- Commit all of the above changes
- Note: Creating a new tag is **skipped** (this will happen as part of the publish flow)

1. Push changes to a new branch following the naming pattern: `release-<version>`
1. Commit changes with message `chore(release): <version>`. Push changes to a new branch following the naming pattern: `release-<version>`

- For example: `git checkout -b release-1.1.0`

1. Open a PR for the release branch against **`master`** (not `develop`, which is the default branch), with the new set of changes generated by the previous step included in the PR description. Ask for approvals from stakeholders, perform testing on applications, etc. Any hot fixes from testing or PR feedback can be made to the release branch directly if appropriate.
1. Open a PR for the release branch against **`master`** (not `develop`, which is the default branch), with the new set of changes generated by the previous step included in the PR description. Resolve any conflicts.

- Ask for approvals from stakeholders, perform testing on applications, etc.
- Any hot fixes from testing or PR feedback can be made to the release branch directly if appropriate (use conventional commits syntax).

![image](./release_PR.png)

1. Once the release PR is approved, complete the release and publish the new version (this should be automated by GH - TODO):
- Merge the PR into master
- Create a release tag on Github (https://github.com/trussworks/react-uswds/releases)
- Merge master into develop so that develop is up to date with the new version.
- Finally, publish the new package to npm: `npm publish`
- Merge the PR into master.
- Use **Rebase and Merge** option
- Create a new [**release tag**](https://github.com/trussworks/react-uswds/releases) pointed at `master` on Github.
- Use the same notes as release PR.
- Publish the new package to npm: `npm publish`
- Pull down latest `master` locally before publishing
- Publishing access is limited to package owners. If you need access and don't have it, please contact `@npm-admins` on Truss Slack.
- You may need to `npm login` first.

- Finish process by bringing develop branch back up to date.
- Create a second PR from release branch back into develop. PR title should be`chore(release): <version>` **Squash and Merge.**