From 27463f4ef4ee446a17f54173396432810722ff38 Mon Sep 17 00:00:00 2001 From: OrlinVasilev Date: Fri, 1 Apr 2022 11:24:53 +0300 Subject: [PATCH] Add release.yml to automate release notes #16633 Use github autogeneration release notes and add action to check if the PR has labels Complete and more readable relase notes https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes Signed-off-by: OrlinVasilev --- .github/release.yml | 36 ++++++++++++++++++++++++++++++ .github/workflows/label_check.yaml | 23 +++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 .github/release.yml create mode 100644 .github/workflows/label_check.yaml diff --git a/.github/release.yml b/.github/release.yml new file mode 100644 index 000000000..0cd23c92a --- /dev/null +++ b/.github/release.yml @@ -0,0 +1,36 @@ +# .github/release.yml + +changelog: + exclude: + labels: + - release-note/ignore-for-release + authors: + - octocat + categories: + - title: Exciting New Features 🎉 + labels: + - release-note/new-feature + - title: Enhancement 🚀 + labels: + - release-note/enhancement + - title: Component updates ⬆️ + labels: + - release-note/update + - title: Docs update 🗄️ + labels: + - release-note/docs + - title: Community update 🧑🏻‍🤝‍🧑🏾 + labels: + - release-note/community + + - title: Breaking Changes 🛠 + labels: + - release-note/breaking-change + + - title: Deprecations ❌ + labels: + - release-note/deprecation + + - title: Other Changes + labels: + - "*" \ No newline at end of file diff --git a/.github/workflows/label_check.yaml b/.github/workflows/label_check.yaml new file mode 100644 index 000000000..90f87ab12 --- /dev/null +++ b/.github/workflows/label_check.yaml @@ -0,0 +1,23 @@ +name: Release Note Label Check + +# Trigger the workflow on pull requests only +on: + pull_request: + types: [opened, labeled, unlabeled, synchronize] + +env: + GOPROXY: https://proxy.golang.org/ + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} +jobs: + # Ensures correct release-note labels are set: + # - At least one label + # - At most one two the main category labels + check-label: + name: Check release-note label set + runs-on: ubuntu-latest + steps: + - uses: mheap/github-action-required-labels@v1 + with: + mode: minimum + count: 1 + labels: "release-note/ignore-for-release, release-note/new-feature, release-note/update, release-note/enhancement, release-note/community, release-note/breaking-change, release-note/docs, release-note/infra, release-note/deprecation"