|
6 | 6 | - 'v*' |
7 | 7 | workflow_dispatch: |
8 | 8 |
|
| 9 | +permissions: |
| 10 | + contents: write # 需要写权限来创建 release |
| 11 | + |
9 | 12 | jobs: |
10 | | - Release: |
| 13 | + release: |
11 | 14 | runs-on: ubuntu-latest |
12 | 15 |
|
13 | 16 | steps: |
14 | | - - uses: actions/checkout@v4 |
| 17 | + - name: Checkout repository |
| 18 | + uses: actions/checkout@v4 |
15 | 19 | with: |
16 | 20 | submodules: recursive |
17 | | - - uses: oven-sh/setup-bun@v2 |
| 21 | + |
| 22 | + - name: Setup Bun |
| 23 | + uses: oven-sh/setup-bun@v2 |
18 | 24 | with: |
19 | 25 | bun-version: latest |
20 | | - - name: Generate Changelog |
| 26 | + |
| 27 | + - name: Generate changelog |
21 | 28 | id: changelog |
22 | 29 | run: bun run .github/actions/changelog.ts |
23 | 30 | env: |
24 | 31 | INPUT_TOKEN: ${{ github.token }} |
25 | 32 |
|
26 | | - - uses: actions/cache@v4 |
| 33 | + - name: Validate Gradle wrapper |
| 34 | + uses: gradle/actions/wrapper-validation@v4 |
| 35 | + |
| 36 | + - name: Setup Java |
| 37 | + uses: actions/setup-java@v4 |
27 | 38 | with: |
28 | | - path: | |
29 | | - ~/.gradle/caches |
30 | | - ~/.gradle/wrapper |
31 | | - key: deps-${{ hashFiles('build.gradle.kts', '**/gradle-wrapper.properties') }} |
32 | | - restore-keys: | |
33 | | - deps- |
34 | | - - uses: actions/cache@v4 |
| 39 | + distribution: 'temurin' |
| 40 | + java-version: '21' |
| 41 | + |
| 42 | + - name: Setup Gradle |
| 43 | + uses: gradle/actions/setup-gradle@v4 |
| 44 | + |
| 45 | + # 保留自定义的 libs 缓存 |
| 46 | + - name: Cache libs directory |
| 47 | + uses: actions/cache@v4 |
35 | 48 | with: |
36 | 49 | path: libs |
37 | 50 | key: sa-deps-${{ hashFiles('scripts/build.gradle.kts') }} |
38 | 51 | restore-keys: | |
39 | 52 | sa-deps- |
40 | 53 |
|
41 | | - - name: Run unit tests and build JAR |
| 54 | + - name: Build release artifacts |
42 | 55 | run: ./gradlew buildPlugin precompileZip allInOneJar |
43 | 56 |
|
44 | | - - name: upload artifacts |
45 | | - uses: softprops/action-gh-release@v1 |
| 57 | + - name: Create GitHub Release |
| 58 | + uses: softprops/action-gh-release@v2 |
46 | 59 | with: |
47 | 60 | prerelease: true |
48 | | - name: "${{github.ref_name}}" |
49 | | - body: ${{steps.changelog.outputs.releaseBody}} |
| 61 | + name: ${{ github.ref_name }} |
| 62 | + body: ${{ steps.changelog.outputs.releaseBody }} |
50 | 63 | files: | |
51 | 64 | build/distributions/* |
52 | 65 | build/libs/* |
0 commit comments