@intuit-auto/maven v6.5.0
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 (
default
when used with binary) - maven - Publish code with maven
- npm - Publish code to npm (
default
when installed throughnpm
)
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:
- A spaced name
- 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.
:rocket: Projects Using auto
:rocket:
:star: Storybookjs design-system - Storybook's official design system
:star: space-kit - Home base for Apollo's design system
:star: react-glider - A react wrapper for glider.js
:star: Ignite - Modern markdown documentation generator
:star: reaction - Artsy’s React Components
:star: emission - Artsy’s React Native Components
:star: webpack-inject-plugin - A webpack plugin to dynamically inject code into the bundle.
:star: html-webpack-insert-text-plugin - Insert text into the head or body of your HTML
:nail_care: auto
Badge :nail_care:
Does your project use auto
? Then use our custom badge!
:art: Prior Art :art:
auto
is inspired by some excellent tech that came before it.
- github-semantic-version - Automated semantic version releases powered by Github Issues.
- lerna-changelog - 📖 PR-based changelog generator with monorepo support
Contributors
Thanks goes to these wonderful people (emoji key):
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
6 years ago
6 years ago
6 years ago
6 years ago