Skip to content

Commit 2d65dd3

Browse files
committed
fix: Split release and publish in two workflows
1 parent 40c0ffd commit 2d65dd3

File tree

2 files changed

+77
-72
lines changed

2 files changed

+77
-72
lines changed

.github/workflows/publish.yaml

Lines changed: 2 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,12 @@
11
name: Release Gradle Plugin
22

33
on:
4-
workflow_dispatch:
5-
6-
jobs:
7-
test:
8-
runs-on: ubuntu-latest
9-
steps:
10-
- uses: actions/checkout@v4
11-
- uses: actions/setup-java@v4
12-
with:
13-
distribution: temurin
14-
java-version: 21
15-
- uses: gradle/actions/wrapper-validation@v4
16-
- uses: gradle/actions/setup-gradle@v4
17-
- run: ./gradlew test
18-
19-
determine-version:
20-
runs-on: ubuntu-latest
21-
steps:
22-
- uses: actions/checkout@v4
23-
with:
24-
fetch-depth: 0
25-
26-
- id: semantic_version
27-
uses: paulhatch/semantic-version@v5.4.0
28-
outputs:
29-
version: ${{ steps.semantic_version.outputs.version }}
30-
previous_version: ${{ steps.semantic_version.outputs.previous_version }}
31-
version_type: ${{ steps.semantic_version.outputs.version_type }}
32-
334
release:
34-
runs-on: ubuntu-latest
35-
needs: [ test, determine-version ]
36-
if: needs.determine-version.outputs.version_type != 'none'
37-
permissions:
38-
contents: write
39-
steps:
40-
- uses: actions/checkout@v4
41-
with:
42-
fetch-depth: 0
43-
44-
- name: Create new tagged release
45-
run: |
46-
# Set up Git user
47-
git config --global user.name "github-actions[bot]"
48-
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
49-
50-
# Update version in build.gradle.kts
51-
sed -i 's/version = ".*"/version = "${{ needs.determine-version.outputs.version }}"/' plugin/build.gradle.kts
52-
git add plugin/build.gradle.kts
53-
git commit -m "chore: bump version to ${{ needs.determine-version.outputs.version }}"
54-
git push origin main
55-
56-
# Create a new tag
57-
git tag v${{ needs.determine-version.outputs.version }}
58-
git push origin v${{ needs.determine-version.outputs.version }}
59-
60-
- name: Update CHANGELOG
61-
id: changelog
62-
uses: requarks/changelog-action@v1
63-
with:
64-
token: ${{ secrets.GITHUB_TOKEN }}
65-
fromTag: v${{ needs.determine-version.outputs.version }}
66-
toTag: v${{ needs.determine-version.outputs.previous_version }}
67-
writeToFile: false
68-
69-
- name: Generate GitHub Release Notes
70-
uses: ncipollo/release-action@v1
71-
with:
72-
generateReleaseNotes: true
73-
tag: v${{ needs.determine-version.outputs.version }}
74-
body: ${{ steps.changelog.outputs.changes }}
75-
token: ${{ secrets.GITHUB_TOKEN }}
5+
types: [ published ]
766

7+
jobs:
778
publish:
789
runs-on: ubuntu-latest
79-
needs: [ release ]
8010
permissions:
8111
contents: read
8212
steps:

.github/workflows/release.yaml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: Release Gradle Plugin
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
test:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v4
11+
- uses: actions/setup-java@v4
12+
with:
13+
distribution: temurin
14+
java-version: 21
15+
- uses: gradle/actions/wrapper-validation@v4
16+
- uses: gradle/actions/setup-gradle@v4
17+
- run: ./gradlew test
18+
19+
determine-version:
20+
runs-on: ubuntu-latest
21+
steps:
22+
- uses: actions/checkout@v4
23+
with:
24+
fetch-depth: 0
25+
26+
- id: semantic_version
27+
uses: paulhatch/semantic-version@v5.4.0
28+
outputs:
29+
version: ${{ steps.semantic_version.outputs.version }}
30+
previous_version: ${{ steps.semantic_version.outputs.previous_version }}
31+
version_type: ${{ steps.semantic_version.outputs.version_type }}
32+
33+
release:
34+
runs-on: ubuntu-latest
35+
needs: [ test, determine-version ]
36+
if: needs.determine-version.outputs.version_type != 'none'
37+
permissions:
38+
contents: write
39+
steps:
40+
- uses: actions/checkout@v4
41+
with:
42+
fetch-depth: 0
43+
44+
- name: Create new tagged release
45+
run: |
46+
# Set up Git user
47+
git config --global user.name "github-actions[bot]"
48+
git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
49+
50+
# Update version in build.gradle.kts
51+
sed -i 's/version = ".*"/version = "${{ needs.determine-version.outputs.version }}"/' plugin/build.gradle.kts
52+
git add plugin/build.gradle.kts
53+
git commit -m "chore: bump version to ${{ needs.determine-version.outputs.version }}"
54+
git push origin main
55+
56+
# Create a new tag
57+
git tag v${{ needs.determine-version.outputs.version }}
58+
git push origin v${{ needs.determine-version.outputs.version }}
59+
60+
- name: Update CHANGELOG
61+
id: changelog
62+
uses: requarks/changelog-action@v1
63+
with:
64+
token: ${{ secrets.GITHUB_TOKEN }}
65+
fromTag: v${{ needs.determine-version.outputs.version }}
66+
toTag: v${{ needs.determine-version.outputs.previous_version }}
67+
writeToFile: false
68+
69+
- name: Generate GitHub Release Notes
70+
uses: ncipollo/release-action@v1
71+
with:
72+
generateReleaseNotes: true
73+
tag: v${{ needs.determine-version.outputs.version }}
74+
body: ${{ steps.changelog.outputs.changes }}
75+
token: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)