-
-
Notifications
You must be signed in to change notification settings - Fork 9.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Changes per @Hypnosphi and @ndelangen's comments. Setting up dev env …
…contents still WIP
- Loading branch information
1 parent
49444a4
commit ce2038e
Showing
5 changed files
with
50 additions
and
40 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
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
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 |
---|---|---|
@@ -1,57 +1,71 @@ | ||
# Release Guide | ||
|
||
This section is for Storybook maintainers who will be creating releases. | ||
|
||
## Releases Overview | ||
|
||
Each release is described by: | ||
This section is for Storybook maintainers who will be creating releases. It assumes: | ||
|
||
- yarn >= 1.0.0 (otherwise you should pass a -- before command arguments) | ||
- you've yarn linked `pr-log` from <https://github.com/storybooks/pr-log/pull/2> | ||
|
||
- A version | ||
- A list of merged pull requests | ||
- Optionally, a short hand-written description | ||
The current manual release sequence is as follows: | ||
|
||
Thus, the current release sequence is as follows: | ||
- Generate a changelog and verify the release by hand | ||
- Push the changelog to master or the release branch | ||
- Clean, build, and publish the release | ||
- Cut and paste the changelog to the github release page, and mark it as a (pre-) release | ||
|
||
This sequence applies to both releases and pre-releases, but differs slightly between the two. | ||
|
||
**NOTE: This is a work in progress. Don't try this unless you know what you're doing. We hope to automate this in CI, so this process is designed with that in mind.** | ||
|
||
First, build the release: | ||
## Prerelease: | ||
|
||
```sh | ||
# make sure you current with origin/master. | ||
git checkout master | ||
git checkout release/X.Y | ||
git status | ||
|
||
# clean out extra files & build all the packages | ||
# WARNING: destructive if you have extra files lying around! | ||
yarn bootstrap --reset --all | ||
``` | ||
# generate changelog and edit as appropriate | ||
# generates a Next section | ||
yarn changelog Next | ||
|
||
From here there are different procedures for prerelease (e.g. alpha/beta/rc) and proper release. | ||
# Edit the changelog/PRs as needed, then commit | ||
git commit -m "Updated changelog for vX.Y" | ||
|
||
> **NOTE:** the very first time you publish a scoped package (`@storybook/x`) you need to publish it by hand because the default for scoped packages is private, and we need to make our packages public. If you try to publish a package for the first time using our `lerna` publish script, `lerna` will crash halfway through and you'll be in a world of pain. | ||
# clean build | ||
yarn bootstrap --reset --core | ||
``` | ||
|
||
## For prerelease (no CHANGELOG): | ||
> **NOTE:** the very first time you publish a scoped package (`@storybook/x`) you need to publish it by hand because the default for scoped packages is private, and we need to make our packages public. If you try to publish a package for the first time using our `lerna` publish script, `lerna` will crash halfway through and you'll be in a world of pain. | ||
```sh | ||
# publish and tag the release | ||
yarn run publish --concurrency 1 --npm-tag=alpha | ||
npm run publish -- --concurrency 1 --npm-tag=alpha | ||
|
||
# push the tags | ||
git push --tags | ||
# update the release page | ||
open https://github.com/storybooks/storybook/releases | ||
``` | ||
|
||
## For full release (with CHANGELOG): | ||
## Full release: | ||
|
||
```sh | ||
# publish but don't commit to git | ||
yarn run publish --concurrency 1 --skip-git | ||
# make sure you current with origin/master. | ||
git checkout master | ||
git status | ||
|
||
# generate changelog and edit as appropriate | ||
# generates a vNext section | ||
yarn changelog X.Y | ||
|
||
# Update `CHANGELOG.md` | ||
# - Edit PR titles/labels on github until output is good | ||
# - Optionally, edit a handwritten description in `CHANGELOG.md` | ||
yarn changelog | ||
# Edit the changelog/PRs as needed, then commit | ||
git commit -m "Changelog for vX.Y" | ||
|
||
# clean build | ||
yarn bootstrap --reset --core | ||
|
||
# publish and tag the release | ||
npm run publish -- --concurrency 1 | ||
|
||
# tag the release and push `CHANGELOG.md` and tags | ||
# FIXME: not end-to-end tested! | ||
yarn github-release | ||
# update the release page | ||
open https://github.com/storybooks/storybook/releases | ||
``` |
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
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