← 全部工具

auto

热度 65 更新于 开发与构建

CLI tools to help facilitate semantic versioning based on GitHub PR labels

npmauto-collected

安装

npm
npm install -g auto

通过 npm 安装。

<div align="center" <img src="docs/public/readme-logo.png" alt="Auto Logo" width="300px" padding="40px" / <br / <br / <pGenerate releases based on semantic version labels on pull requests</p </div

---

<div align="center"<a href="https://circleci.com/gh/intuit/auto"<img src="https://img.shields.io/circleci/project/github/intuit/auto/main.svg?style=flat-square&logo=circleci" alt="CircleCI" /</a <a href="https://codecov.io/gh/intuit/auto"<img src="https://img.shields.io/codecov/c/github/intuit/auto.svg?style=flat-square&logo=codecov" alt="Codecov" /</a <a href="https://www.npmjs.com/package/auto"<img src="https://img.shields.io/npm/v/auto.svg?style=flat-square&logo=npm" alt="npm" /</a <a href="#contributors"<img src="https://img.shields.io/badge/allcontributors-30-orange.svg?style=flat-square&logo=github" alt="All Contributors" /</a <a href="https://www.npmjs.com/package/auto"<img src="https://img.shields.io/npm/dt/auto.svg?style=flat-square&logo=npm" alt="npm" /</a <a href="https://github.com/intuit/auto"<img src="https://img.shields.io/badge/release-auto.svg?style=flat-square&colorA=888888&amp;colorB=9B065A&amp;label=auto&amp;logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAACzElEQVR4AYXBW2iVBQAA4O+/nLlLO9NM7JSXasko2ASZMaKyhRKEDH2ohxHVWy6EiIiiLOgiZG9CtdgG0VNQoJEXRogVgZYylI1skiKVITPTTtnv3M7+v8UvnG3M+r7APLIRxStn69qzqeBBrMYyBDiL4SD0VeFmRwtrkrI5IjP0F7rjzrSjvbTqwubiLZffySrhRrSghBJa8EBYY0NyLJt8bDBOtzbEY72TldQ1kRm6otana8JK3/kzN/3V/NBPU6HsNnNlZAz/ukOalb0RBJKeQnykd7LiX5Fp/YXuQlfUuhXbg8Di5GL9jbXFq/tLa86PpxPhAPrwCYaiorS8L/uuPJh1hZFbcR8mewrx0d7JShr3F7pNW4vX0GRakKWVk7taDq7uPvFWw8YkMcPVb+vfvfRZ1i7zqFwjtmFouL72y6C/0L0Ie3GvaQXRyYVB3YZNE32/+A/D9bVLcRB3yw3hkRCdaDUtFl6Ykr20aaLvKoqIXUdbMj6GFzAmdxfWx9iIRrkDr1f27cFONGMUo/gRI/jNbIMYxJOoR1cY0OGaVPb5z9mlKbyJP/EsdmIXvsFmM7Ql42nEblX3xI1BbYbTkXCqRnxUbgzPo4T7sQBNeBG7zbAiDI8nWfZDhQWYCG4PFr+HMBQ6l5VPJybeRyJXwsdYJ/cRnlJV0yB4ZlUYtFQIkMZnst8fRrPcKezHCblz2IInMIkPzbbyb9mW42nWInc2xmE0y61AJ06oGsXL5rcOK1UdCbEXiVwNXsEy/6+EbaiVG8eeEAfxvaoSBnCH61uOD7BS1Ul8ESHBKWxCrdyd6EYNKihgEVrwOAbQruoytuBYIFfAc3gVN6iawhjKyNCEpYhVJXgbOzARyaU4hCtYizq5EI1YgiUoIlT1B7ZjByqmRWYbwtdYjoWoN7+LOIQefIqKawLzK6ID69GGpQgwhhEcwGGUzfEPAiPqsCXadFsAAAAASUVORK5CYII=" alt="Auto Release" /</a <a href="https://app.snyk.io/org/hipstersmoothie/project/f32a03c3-9884-4fc9-9ac5-525c48799d4c"<img src="https://img.shields.io/snyk/vulnerabilities/github/intuit/auto/package.json.svg?style=flat-square&logo=snyk&logoColor=lightgrey" alt="" /</a <a href="https://app.fossa.io/projects/git%2Bgithub.com%2Fintuit%2Fauto?ref=badgeshield" alt="FOSSA Status"<img src="https://app.fossa.io/api/projects/git%2Bgithub.com%2Fintuit%2Fauto.svg?type=shield"/</a <a href="https://github.com/prettier/prettier"<img src="https://img.shields.io/badge/codestyle-prettier-ff69b4.svg?style=flat-square&logo=producthunt" alt="code style: prettier" /</a</div

<br /

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.

:pushpin: Plugins :pushpin:

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

Package Managers:

  • brew - Automate the creation of Homebrew formulae
  • chrome - Publish code to Chrome Web Store
  • cocoapods - Version your CocoaPod, and push to your specs repository!
  • crates - Publish Rust crates
  • docker - Publish images with Docker
  • gem - Publish ruby gems
  • git-tag - Manage your projects version through just a git tag (default when used with binary)
  • gradle - Publish code with gradle
  • maven - Publish code with maven
  • npm - Publish code to npm (default when installed through npm)
  • sbt - Publish Scala projects with sbt
  • vscode - Publish code to the VSCode extension marketplace

Extra Functionality:

  • all-contributors - Automatically add contributors as changelogs are produced using all-contributors-cli
  • conventional-commits - Parse conventional commit messages for version bumps
  • exec - Tap into hooks and run scripts on the terminal
  • first-time-contributor - Thank first time contributors for their work right in your release notes.
  • gh-pages - Automate publishing to your gh-pages documentation website
  • jira - Include Jira story links in the changelog
  • magic-zero - A plugin that closely adheres to semver versioning for 0.0.x and 0.x.y releases
  • microsoft-teams - Post your release notes to a Microsoft teams channel
  • omit-commits - Ignore commits base on name, email, subject, labels, and username
  • omit-release-notes - Ignore release notes in PRs made by certain accounts
  • pr-body-labels - Allow outside contributors to indicate what semver label should be applied to the Pull Request
  • released - Add a released label to published PRs, comment with the version it's included in and comment on the issues the PR closes