diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml new file mode 100644 index 0000000..6bc044c --- /dev/null +++ b/.github/release-drafter.yml @@ -0,0 +1,132 @@ +category-template: '## $TITLE' +name-template: 'v$RESOLVED_VERSION' +tag-template: 'v$RESOLVED_VERSION' +tag-prefix: '' +version-template: $MAJOR.$MINOR.$PATCH +change-template: '* $TITLE (#$NUMBER) by @$AUTHOR' +change-title-escapes: '' +no-changes-template: 'No changes were made in this version. Stay tuned for upcoming updates!' +categories: + - title: '⚑ Breaking Changes' + labels: + - 'breaking-change' + - title: '🌟New features and non-breaking changes' + labels: + - 'feature' + - title: '🌟 Minor Changes' + labels: + - 'enhancement' + - title: 'πŸ“œ Documentation updates' + labels: + - 'documentation' + - title: 'πŸ› Bug and hot fixes' + labels: + - 'bug' + - 'bugfix' + - 'fix' + - title: 'πŸš’ Deprecations' + labels: + - 'deprecation' + - title: 'πŸ”§ Maintenance' + labels: + - 'chore' + - 'internal' + - title: 'πŸ“¦ Dependency updates' + collapse-after: 10 + labels: + - 'dependencies' +version-resolver: + major: + labels: + - 'major' + - 'breaking-change' + minor: + labels: + - 'minor' + - 'feature' + - 'enhancement' + - 'deprecation' + patch: + labels: + - 'patch' + - 'documentation' + - 'bug' + - 'bugfix' + - 'fix' + - 'chore' + - 'internal' + - 'dependencies' + default: patch +autolabeler: + - label: 'breaking-change' + branch: + - '/.*!:.*/' + - label: 'feature' + branch: + - '/feature\/.+/i' + - '/feat\/.+/i' + title: + - '/feature.*: /i' + - '/feat.*: /i' + - label: 'improvement' + branch: + - '/improvement\/.+/i' + title: + - '/improvement.*: /i' + - label: 'bug' + branch: + - '/fix\/.+/i' + - '/bugfix\/.+/i' + - '/bug\/.+/i' + - '/hotfix\/.+/i' + title: + - '/fix.*: /i' + - '/bugfix.*: /i' + - '/bug.*: /i' + - '/hotfix.*: /i' + - label: 'dependencies' + branch: + - '/dependabot\/.*/' + - label: 'documentation' + files: + - '*.md' + branch: + - '/docs{0,1}\/.+/' + title: + - '/docs.*: /i' + - label: 'deprecation' + branch: + - '/deprecation\/.+/i' + title: + - '/deprecation.*: .*/i' + + + - label: 'chore' + files: + - '*.md' + branch: + - '/docs{0,1}\/.+/' + - label: 'bug' + branch: + - '/fix\/.+/' + title: + - '/fix/i' + - label: 'enhancement' + branch: + - '/feature\/.+/' + body: + - '/JIRA-[0-9]{1,4}/' +exclude-labels: + - 'skip-changelog' +template: | + ## Summary + + **[Human readable summary of changes]** + + ## Changes + + $CHANGES + + ## This release was made possible by the following contributors: + + $CONTRIBUTORS diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml new file mode 100644 index 0000000..aad01aa --- /dev/null +++ b/.github/workflows/release-drafter.yml @@ -0,0 +1,41 @@ +name: Release Drafter + +on: + push: + # branches to consider in the event; optional, defaults to all + branches: + - main + # pull_request event is required only for autolabeler + pull_request: + # Only following types are handled by the action, but one can default to all as well + types: [opened, reopened, synchronize] + # pull_request_target event is required for autolabeler to support PRs from forks + # pull_request_target: + # types: [opened, reopened, synchronize] + +permissions: + contents: read + +jobs: + update_release_draft: + permissions: + # write permission is required to create a github release + contents: write + # write permission is required for autolabeler + # otherwise, read permission is required at least + pull-requests: write + runs-on: ubuntu-latest + steps: + # (Optional) GitHub Enterprise requires GHE_HOST variable set + #- name: Set GHE_HOST + # run: | + # echo "GHE_HOST=${GITHUB_SERVER_URL##https:\/\/}" >> $GITHUB_ENV + + # Drafts your next Release notes as Pull Requests are merged into "master" + - uses: release-drafter/release-drafter@v6 + # (Optional) specify config name to use, relative to .github/. Default: release-drafter.yml + # with: + # config-name: my-config.yml + # disable-autolabeler: true + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} \ No newline at end of file