diff --git a/.github/release-drafter.yml b/.github/release-drafter.yml index a4dce4c2b..5613d9471 100644 --- a/.github/release-drafter.yml +++ b/.github/release-drafter.yml @@ -1,4 +1,49 @@ +change-template: "- #$NUMBER $TITLE @$AUTHOR" +sort-direction: ascending + +categories: + - title: ":boom: Breaking Changes" + label: "breaking-change" + + - title: ":wrench: Build" + label: "build" + + - title: ":boar: Chore" + label: "chore" + + - title: ":sparkles: New Features" + label: "new-feature" + + - title: ":zap: Performance" + label: "performance" + + - title: ":recycle: Refactor" + label: "refactor" + + - title: ":green_heart: CI" + label: "ci" + + - title: ":bug: Bug Fixes" + label: "bugfix" + + - title: ":white_check_mark: Test" + label: "test" + + - title: ":arrow_up: Dependency Updates" + label: "dependencies" + +include-labels: + - "breaking-change" + - "build" + - "chore" + - "performance" + - "refactor" + - "new-feature" + - "bugfix" + - "dependencies" + - "test" + - "ci" + template: | - ## What's Changed $CHANGES diff --git a/.github/workflows/release-drafter.yml b/.github/workflows/release-drafter.yml index 5b27fd671..2f3586020 100644 --- a/.github/workflows/release-drafter.yml +++ b/.github/workflows/release-drafter.yml @@ -2,14 +2,43 @@ name: Release Drafter on: push: - # branches to consider in the event; optional, defaults to all branches: - main jobs: update_release_draft: runs-on: ubuntu-latest + name: Release Drafter steps: - - uses: release-drafter/release-drafter@v5 + - name: Checkout the repository + uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Find Next Version + id: version + run: | + declare -i newpost + latest=$(git describe --tags $(git rev-list --tags --max-count=1)) + latestpre=$(echo "$latest" | awk '{split($0,a,"."); print a[1] "." a[2]}') + datepre=$(date --utc '+%Y.%m') + + + if [[ "$latestpre" == "$datepre" ]]; then + latestpost=$(echo "$latest" | awk '{split($0,a,"."); print a[3]}') + newpost=$latestpost+1 + else + newpost=0 + fi + + echo Current version: $latest + echo New target version: $datepre.$newpost + echo "::set-output name=version::$datepre.$newpost" + + - name: Run Release Drafter + uses: release-drafter/release-drafter@v5 + with: + tag: ${{ steps.version.outputs.version }} + name: ${{ steps.version.outputs.version }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}