aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/build-and-test.yml
blob: 56a1ad52cc3e503bbef3539808daf039917d4421 (plain)
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
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle

name: Build and test

on:
  pull_request:
    branches: [ master, main ]
  push:
    branches: [ master, main ]

jobs:
  build-and-test:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
      with:
        fetch-depth: 0

    - name: Set up JDK 8
      uses: actions/setup-java@v2
      with:
        java-version: '8'
        distribution: 'adopt'
        cache: gradle

    - name: Grant execute permission for gradlew
      run: chmod +x gradlew

    - name: Setup the workspace
      run: ./gradlew setupCIWorkspace

    - name: Build the mod
      run: ./gradlew build

    - name: Run server for 1.5 minutes
      run: |
        mkdir run
        echo "eula=true" > run/eula.txt
        timeout 90 ./gradlew runServer 2>&1 | tee -a server.log || true

    - name: Test no errors reported during server run
      run: |
        chmod +x .github/scripts/test_no_error_reports
        .github/scripts/test_no_error_reports