-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Milestone
Description
As an engineer, it would be nice to have a way to instruct Travis automatically publish to npm or to publish locally using an automated process.
An automated publish could be triggered by committing to master w/ [npm-publish] in the commit message. The system would then validate the commit, check that version in package.json is valid and not marked w/ -pre, and that the version is not already published to npm.
The process would look something like this:
- prompt for npm credentials (if running locally)
- assert no changed files in git
- check package.json's version
- no
-pretag - version isn't already published on npm
- new version is the latest version
- no
- publish to npm
- a tag is added to git using the released version
- the version in
package.jsonis incremented and a-pretag is added - the new
package.jsonis committed and pushed w/ the tags - (optional) the commit information from the previous release is displayed (for release notes)
- (optional) the new release is tagged using the GitHub APIs and the above commit information is used
NOTE: Doing a GitHub release requires OAuth credentials for GitHub, which would provide access to all repositories, so we may want to consider automating release notes as a separate feature.