-
Notifications
You must be signed in to change notification settings - Fork 2
124 lines (118 loc) · 3.63 KB
/
gradle.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
name: Java CI
on:
push:
branches: [ "1.20" ]
pull_request:
branches: [ "1.20" ]
permissions:
contents: read
jobs:
assemble:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
- uses: gradle/actions/wrapper-validation@v3
- name: Setup Java JDK
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '21'
- run: chmod +x ./gradlew
- uses: gradle/actions/setup-gradle@v3
with:
cache-read-only: ${{ github.event_name != 'push' }}
gradle-home-cache-cleanup: true
add-job-summary: 'on-failure'
- run: ./gradlew javaToolchains assemble --scan
- run: ./gradlew checkChangelog
- run: ./gradlew checkReleaseVersion
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: FluidTank2-${{ github.run_number }}
path: "*/build/libs/*.jar"
if-no-files-found: error
retention-days: 7
test:
runs-on: ubuntu-latest
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
# platform: [ common, forge, fabric, neoforge ]
platform: [ common, fabric, neoforge ]
env:
DISABLE_FORGE: ${{ matrix.platform != 'forge' }}
DISABLE_FABRIC: ${{ matrix.platform != 'fabric' }}
DISABLE_NEOFORGE: ${{ matrix.platform != 'neoforge' }}
steps:
- uses: actions/checkout@v4
- uses: gradle/actions/wrapper-validation@v3
- name: Setup Java JDK
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '21'
- run: chmod +x ./gradlew
- uses: gradle/actions/setup-gradle@v3
with:
cache-read-only: ${{ github.event_name != 'push' }}
gradle-home-cache-cleanup: true
add-job-summary: 'on-failure'
- name: ${{ matrix.platform }} JUnit
run: ./gradlew :${{ matrix.platform }}:test
env:
RUN_JUNIT: true
- name: ${{ matrix.platform }} GameTest
if: ${{ matrix.platform != 'common' }}
timeout-minutes: 5
run: ./gradlew :${{ matrix.platform }}:runGameTest
env:
TEST_UTILITY_LOG_ALL_TEST: true
RUN_GAME_TEST: true
fabric-data-gen:
runs-on: ubuntu-latest
env:
DISABLE_FORGE: true
DISABLE_FABRIC: false
DISABLE_NEOFORGE: true
steps:
- uses: actions/checkout@v4
- uses: gradle/actions/wrapper-validation@v3
- name: Setup Java JDK
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '21'
- run: chmod +x ./gradlew
- uses: gradle/actions/setup-gradle@v3
with:
cache-read-only: ${{ github.event_name != 'push' }}
gradle-home-cache-cleanup: true
add-job-summary: 'on-failure'
- name: Compile
run: ./gradlew :fabric:datagenClasses
- name: Prepare Run
run: >-
./gradlew configureClientLaunch downloadAssets ||
(sleep 5 && ./gradlew configureClientLaunch downloadAssets) ||
(sleep 5 && ./gradlew configureClientLaunch downloadAssets)
- name: Forge DataGen
run: ./gradlew :fabric:runData
timeout-minutes: 5
env:
TEST_UTILITY_LOG_ALL_DATA: true
RUN_DATA_GEN: true
- name: Check updated files
run: git status
- name: Check diff
run: git diff
merge-checker:
if: always()
needs:
- assemble
- test
uses: 'Kotori316/common-script/.github/workflows/merge-checker.yaml@main'
with:
needs: ${{ toJSON(needs) }}