groupme-js / node-groupme

The only GroupMe API library for NodeJS that isn't a million years old.
https://groupme.js.org
MIT License
27 stars 11 forks source link

ci: set up semantic-release #84

Closed not-so-smart closed 2 years ago

not-so-smart commented 2 years ago

This PR (hopefully) installs and sets up the workflows and plugins and stuff necessary to use semantic-release.

thewilloftheshadow commented 2 years ago

lgtm. the only concern about this since ive never used this script: is this going to run on pushes to the master branch that aren't actually for the package, such as workflows and docs?

not-so-smart commented 2 years ago

hmm, idk. I think there's also an option to have this be run with a manual trigger instead if we want a lot of control over what deserves a new release. I'm hoping that semantic-release is smart enough to read the commits and know that if a push only includes chore: or ci: commits, it isn't worth a release, and likewise if they are very small changes then they will only be worth a patch (as opposed to a minor or major release). There's also a ton of configuration that can be done with all the plugins and stuff, I didn't really look into any of that and just copy/pasted the bare minimum for getting this to work.

not-so-smart commented 2 years ago

@thewilloftheshadow to answer your question, it does indeed run on every push to main, but it's smart enough to ignore commits that aren't worth a release. I ran it on my local machine in dry-run mode, and the only commit that it thought was worth mentioning was the one that began with fix:

image
thewilloftheshadow commented 2 years ago

Lgtm then