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

Automate releases to git, GitHub, npm #640

Closed
wants to merge 3 commits into from
Closed

Conversation

humphd
Copy link
Contributor

@humphd humphd commented Dec 20, 2018

Fixes #404 by modernizing our release process to use release-it. With the changes in this PR, one of @modeswitch or me (or whoever we give rights to), can do:

$ npm run release

This will do a bunch of things automatically:

  1. run the tests
  2. build dist/
  3. bump the version in package.json
  4. tag the commit
  5. commit everything
  6. push the commit and tag
  7. create a GitHub Release, with changelog
  8. push a new package to npm

See this post for a more verbose description. The tool is interactive by default, and will look something like this:

All default choices are defined in .release-it.json below.

I've included docs in CONTRIBUTING.md, but to summarize what is important:

  1. each dev doing releases will need to copy env.sample to .env and include a GITHUB_TOKEN they generate for themselves.
  2. npm login so they can publish to npm

I haven't run this fully yet, so I may need to fix a few corner cases. We can do a few runs to get it right, then start using this.

@humphd
Copy link
Contributor Author

humphd commented Dec 20, 2018

You can see an example of what the GitHub Releases end up looking like here https://github.com/webpro/release-it/releases.

@modeswitch my thinking is to land this, and try doing a release, tweak things, repeat until I get it right. If you disagree, speak up!

My personal view is that I can probably just do minor updates, since I've been able to not break 0.44 versions. However, tons has changed, so I could also do a major number update too. Let me know your thoughts.

@codecov-io
Copy link

Codecov Report

Merging #640 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #640   +/-   ##
=======================================
  Coverage   86.62%   86.62%           
=======================================
  Files          16       16           
  Lines        1742     1742           
=======================================
  Hits         1509     1509           
  Misses        233      233

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9f7f937...2d36e7f. Read the comment docs.

@humphd
Copy link
Contributor Author

humphd commented Dec 21, 2018

Merged.

@humphd humphd closed this Dec 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Automate rebuilds of dist/ when we land code on master
2 participants