|
19 | 19 | should-release: ${{ steps.check.outputs.should-release }} |
20 | 20 | version: ${{ steps.check.outputs.version }} |
21 | 21 | tag: ${{ steps.check.outputs.tag }} |
| 22 | + latest_tag: ${{ steps.check.outputs.latest_tag }} |
22 | 23 | steps: |
23 | 24 | - name: Checkout code |
24 | 25 | uses: actions/checkout@v4 |
|
43 | 44 | exit 0 |
44 | 45 | fi |
45 | 46 |
|
| 47 | + IFS='.' read -r MAJOR MINOR PATCH <<< "${{ github.ref_name }}" |
| 48 | +
|
| 49 | + if [[ -z "$MAJOR" || -z "$MINOR" || -z "$PATCH" ]]; then |
| 50 | + LATEST_TAG=null |
| 51 | + else |
| 52 | + LATEST_TAG=$(git tag --list "${MAJOR}.${MINOR}.*" | sort -V | tail -n 1) |
| 53 | + fi |
| 54 | +
|
46 | 55 | echo "should-release=true" >> $GITHUB_OUTPUT |
| 56 | + echo "latest_tag=$LATEST_TAG" >> $GITHUB_OUTPUT |
47 | 57 | echo "version=${{ github.ref_name }}" >> $GITHUB_OUTPUT |
48 | 58 | echo "tag=${{ github.ref_name }}" >> $GITHUB_OUTPUT |
49 | 59 |
|
|
61 | 71 | id: generate_notes |
62 | 72 | run: | |
63 | 73 | # Get the latest tag |
64 | | - LATEST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "") |
| 74 | + LATEST_TAG="${{ needs.check-for-release.outputs.latest_tag }}" |
65 | 75 |
|
66 | 76 | if [ -z "$LATEST_TAG" ]; then |
67 | 77 | # If no previous tag, get all commits |
|
83 | 93 | elif echo "$commit" | grep -qE "^- feat"; then |
84 | 94 | FEATURES="$FEATURES$commit"$'\n' |
85 | 95 | elif echo "$commit" | grep -qE "^- fix"; then |
| 96 | + # Skip "Fix styling" commits |
| 97 | + if echo "$commit" | grep -qE "Fix styling"; then |
| 98 | + continue |
| 99 | + fi |
86 | 100 | FIXES="$FIXES$commit"$'\n' |
87 | 101 | else |
88 | 102 | OTHER="$OTHER$commit"$'\n' |
@@ -114,9 +128,6 @@ jobs: |
114 | 128 | RELEASE_NOTES="$RELEASE_NOTES""composer require solution-forest/inspirecms-core:^${{ needs.check-for-release.outputs.version }}"$'\n' |
115 | 129 | RELEASE_NOTES="$RELEASE_NOTES\`\`\`"$'\n\n' |
116 | 130 |
|
117 | | - # Save to file for GitHub release |
118 | | - echo "$RELEASE_NOTES" > release_notes.md |
119 | | -
|
120 | 131 | # Output for GitHub (escape newlines) |
121 | 132 | echo "notes<<EOF" >> $GITHUB_OUTPUT |
122 | 133 | echo "$RELEASE_NOTES" >> $GITHUB_OUTPUT |
|
0 commit comments