|
1 | 1 | name: "CI" |
2 | 2 | on: [push, pull_request] |
| 3 | + |
| 4 | +env: |
| 5 | + DEFAULT_JAVA_VERSION: 17 |
| 6 | + |
3 | 7 | jobs: |
4 | 8 | build: |
5 | | - name: Build |
| 9 | + name: Build for Java ${{ matrix.java }} |
6 | 10 | runs-on: ubuntu-latest |
| 11 | + strategy: |
| 12 | + fail-fast: false |
| 13 | + matrix: |
| 14 | + java: |
| 15 | + - 17 |
| 16 | + - 18 |
| 17 | + - 19 |
| 18 | + - 20 |
| 19 | + - 21 |
| 20 | + - 22 |
| 21 | + - 23 |
7 | 22 | steps: |
8 | 23 | - name: 'Checkout' |
9 | 24 | uses: actions/checkout@v2 |
|
21 | 36 | - name: 'Setup Java' |
22 | 37 | uses: actions/setup-java@v1 |
23 | 38 | with: |
24 | | - java-version: 17 |
| 39 | + java-version: ${{ matrix.java }} |
25 | 40 | java-package: jdk |
26 | 41 | - name: 'Mark tag as release' |
27 | 42 | if: startsWith(github.ref, 'refs/tags/') |
@@ -60,28 +75,28 @@ jobs: |
60 | 75 | CURSEFORGE_KEY_SECRET: ${{ secrets.CURSEFORGE_KEY_SECRET }} |
61 | 76 | run: ./gradlew curseforge |
62 | 77 | - name: 'Deploy to Modrinth' |
63 | | - if: startsWith(github.ref, 'refs/tags/') |
| 78 | + if: startsWith(github.ref, 'refs/tags/') && startsWith(matrix.java, env.DEFAULT_JAVA_VERSION) |
64 | 79 | env: |
65 | 80 | MODRINTH_KEY_SECRET: ${{ secrets.MODRINTH_KEY_SECRET }} |
66 | 81 | run: ./gradlew modrinth |
67 | 82 | - name: 'Create GitHub release' |
68 | 83 | id: create_release |
69 | | - if: startsWith(github.ref, 'refs/tags/') |
| 84 | + if: startsWith(github.ref, 'refs/tags/') && startsWith(matrix.java, env.DEFAULT_JAVA_VERSION) |
70 | 85 | uses: actions/create-release@v1 |
71 | 86 | env: |
72 | 87 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
73 | 88 | with: |
74 | 89 | tag_name: ${{ github.ref }} |
75 | 90 | release_name: ${{ github.ref }} |
76 | 91 | - name: 'Deploy to Maven' |
77 | | - if: startsWith(github.ref, 'refs/heads/master') |
| 92 | + if: startsWith(github.ref, 'refs/heads/master') && startsWith(matrix.java, env.DEFAULT_JAVA_VERSION) |
78 | 93 | env: |
79 | 94 | MAVEN_URL: ${{ secrets.MAVEN_URL }} |
80 | 95 | MAVEN_USERNAME: ${{ secrets.MAVEN_USERNAME }} |
81 | 96 | MAVEN_KEY: ${{ secrets.MAVEN_KEY }} |
82 | 97 | run: ./gradlew publish |
83 | 98 | - name: 'Deploy JavaDoc to GitHub Pages' |
84 | | - if: startsWith(github.ref, 'refs/heads/master') |
| 99 | + if: startsWith(github.ref, 'refs/heads/master') && startsWith(matrix.java, env.DEFAULT_JAVA_VERSION) |
85 | 100 | |
86 | 101 | with: |
87 | 102 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
|
0 commit comments