From 5f4dbc3100e29b8b4f9acb4911d946f2a9d173e4 Mon Sep 17 00:00:00 2001 From: Chris Hennick <hennickc@amazon.com> Date: Mon, 22 Apr 2024 19:03:45 -0700 Subject: [PATCH] build: configure release-plz --- .github/dependabot.yml | 4 ++-- .github/workflows/ci.yaml | 8 -------- cliff.toml | 4 ++-- release-plz.toml | 25 +++++++++++++++++++++++++ 4 files changed, 29 insertions(+), 12 deletions(-) create mode 100644 release-plz.toml diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 347e19a0..4d493b8a 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -6,8 +6,8 @@ updates: interval: daily open-pull-requests-limit: 10 commit-message: - prefix: "chore" - prefix-development: "test" + prefix: "chore(deps)" + prefix-development: "test(deps)" include: "scope" - package-ecosystem: "github-actions" # See documentation for possible values directory: "/" # Location of package manifests diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index b7119593..8b111765 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -268,14 +268,6 @@ jobs: release-plz: name: Release-plz - needs: - - build_and_test - - clippy - - check_fmt_and_docs - - fuzz_read - - fuzz_read_with_no_features - - fuzz_write - - fuzz_write_with_no_features runs-on: ubuntu-latest steps: - name: Checkout repository diff --git a/cliff.toml b/cliff.toml index 464fdc01..753d01cf 100644 --- a/cliff.toml +++ b/cliff.toml @@ -65,7 +65,7 @@ commit_parsers = [ { message = "^test", skip = true }, { message = "^build", skip = true }, { message = "^ci", skip = true }, - { message = "^chore\\(release\\): prepare for", skip = true }, + { message = "^chore\\(release\\)", skip = true }, { message = "^chore\\(deps.*\\)", skip = true }, { message = "^chore\\(pr\\)", skip = true }, { message = "^chore\\(pull\\)", skip = true }, @@ -74,7 +74,7 @@ commit_parsers = [ { message = "^revert", group = "<!-- 9 -->◀️ Revert" }, ] # protect breaking changes from being skipped due to matching a skipping commit_parser -protect_breaking_commits = false +protect_breaking_commits = true # filter out the commits that are not matched by commit parsers filter_commits = false # regex for matching git tags diff --git a/release-plz.toml b/release-plz.toml new file mode 100644 index 00000000..e471eee6 --- /dev/null +++ b/release-plz.toml @@ -0,0 +1,25 @@ +[workspace] +dependencies_update = true # update dependencies with `cargo update` +pr_labels = ["release"] # add the `release` label to the release Pull Request +release_commits = "^(feat|fix|perf|refactor):" # prepare release only if at least one commit matches a regex +git_release_type = "auto" + +[changelog] +protect_breaking_commits = true +commit_parsers = [ + { message = "^feat", group = "<!-- 0 -->🚀 Features" }, + { message = "^fix", group = "<!-- 1 -->🐛 Bug Fixes" }, + { message = "^perf", group = "<!-- 4 -->⚡ Performance" }, + { message = "^refactor", group = "<!-- 2 -->🚜 Refactor" }, + { message = "^style", skip = true }, + { message = "^test", skip = true }, + { message = "^build", skip = true }, + { message = "^ci", skip = true }, + { message = "^chore\\(release\\)", skip = true }, + { message = "^chore\\(deps.*\\)", skip = true }, + { message = "^chore\\(pr\\)", skip = true }, + { message = "^chore\\(pull\\)", skip = true }, + { message = "^chore", group = "<!-- 7 -->⚙️ Miscellaneous Tasks" }, + { body = ".*security", group = "<!-- 8 -->🛡️ Security" }, + { message = "^revert", group = "<!-- 9 -->◀️ Revert" }, +] \ No newline at end of file