Skip to content

Latest commit

 

History

History
201 lines (135 loc) · 15.3 KB

README.md

File metadata and controls

201 lines (135 loc) · 15.3 KB

auto

Generate releases based on semantic version labels on pull requests

CircleCI Codecov npm All Contributors npm Auto Release code style: prettier

Automated releases powered by pull request labels. Streamline your release workflow and publish constantly! auto is meant to be run in a continuous integration (CI) environment, but all the commands work locally as well.

Release Features:

  • Calculate semantic version bumps from PRs
  • Skip a release with the skip-release label
  • Publish canary releases from PRs or locally
  • Generate changelogs with fancy headers, authors, and monorepo package association
  • Use labels to create new changelog sections
  • Generate a GitHub release

Pull Request Interaction Features:

  • Get the labels for a PR
  • Set the status of a PR
  • Check that a pull request has a SemVer label
  • Comment on a PR with markdown
  • Update the PR body with contextual build metadata

Visit the docs for more information.

Plugins

Auto has an extensive plugin system and wide variety of official plugins. Make a PR to add yours!

Package Managers:

  • chrome - Publish code to Chrome Web Store
  • crates - Publish Rust crates
  • git-tag - Manage your projects version through just a git tag
  • maven - Publish code with maven
  • npm - Publish code to npm (DEFAULT)

Extra Functionality:

  • all-contributors - Automatically add contributors as changelogs are produced using `all-contributors-cli
  • conventional-commits - Parse conventional commit messages for version bumps
  • first-time-contributor - Thank first time contributors for their work right in your release notes.
  • jira - Include Jira story links in the changelog
  • omit-commits - Ignore commits base on name, email, subject, labels, and username
  • omit-release-notes - Ignore release notes in PRs made by certain accounts
  • released - Add a released label to published PRs, comment with the version it's included in and comment on the issues the PR closes
  • s3 - Post your built artifacts to amazon s3
  • slack - Post release notes to slack
  • twitter - Post release notes to twitter
  • upload-assets - Add extra assets to the release

Start Developing

To get set up, fork and clone the project then run the following command:

yarn

Build/Typecheck

You must build at least once before running the tests or lint.

yarn build

In watch mode:

yarn start

Cleaning

yarn clean

Linting

yarn lint

Testing

yarn test

Run the docs

yarn docs:watch

Create a new plugin

Get started developing a new plugin in the monorepo in seconds.

The two arguments are:

  1. A spaced name
  2. A description
yarn create:plugin "My Plugin" "Do something really cool"

Contributing

Feel free to make an issue or open a pull request!

Make sure to read our code of conduct.

🚀 Projects Using auto 🚀

Storybookjs design-system - Storybook's official design system

space-kit - Home base for Apollo's design system

react-glider - A react wrapper for glider.js

Ignite - Modern markdown documentation generator

reaction - Artsy’s React Components

emission - Artsy’s React Native Components

webpack-inject-plugin - A webpack plugin to dynamically inject code into the bundle.

html-webpack-insert-text-plugin - Insert text into the head or body of your HTML

💅 auto Badge 💅

Does your project use auto? Then use our custom badge!

Auto Release

Auto Release

Auto Release

Auto Release

🎨 Prior Art 🎨

auto is inspired by some excellent tech that came before it.

Contributors

Thanks goes to these wonderful people (emoji key):

Adam Dierkens
Adam Dierkens

💻 📖 🤔 ⚠️
Andrew Lisowski
Andrew Lisowski

💻 📖 🤔 🚇 ⚠️
David
David

🚇
Orta
Orta

💻
Justin Bennett
Justin Bennett

🐛 💻
Alec Larson
Alec Larson

💻
Tyler Krupicka
Tyler Krupicka

💻
Zachary Sherwin
Zachary Sherwin

💻 📖 ⚠️
bnigh
bnigh

💻
su7edja
su7edja

💻
Yogesh Khandlewal
Yogesh Khandlewal

💻
Matt Boulanger
Matt Boulanger

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

Adding a Contributor

To add a contributor run yarn contributors:add, choose "Add new contributor or edit contribution type" and follow the prompts.

License

FOSSA Status