fabric/.github/workflows/build.yml

80 lines
2.2 KiB
YAML
Raw Normal View History

name: Build
on: [push, pull_request, merge_group]
jobs:
build:
strategy:
matrix:
2024-04-03 10:46:52 -04:00
java: [21-ubuntu]
runs-on: ubuntu-22.04
container:
image: mcr.microsoft.com/openjdk/jdk:${{ matrix.java }}
options: --user root
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
2024-04-03 10:22:00 -04:00
- uses: gradle/wrapper-validation-action@v2
- run: ./gradlew check build publishToMavenLocal --stacktrace
- uses: Juuxel/publish-checkstyle-report@v1
if: ${{ failure() }}
with:
reports: |
**/build/reports/checkstyle/*.xml
2024-04-03 10:22:00 -04:00
- uses: actions/upload-artifact@v4
with:
2024-04-03 10:22:00 -04:00
name: Artifacts ${{ matrix.java }}
path: |
build/libs/
./*/build/libs/
build/publishMods/
- uses: actions/upload-artifact@v4
with:
2024-04-03 10:22:00 -04:00
name: Maven Local ${{ matrix.java }}
path: /root/.m2/repository/net/fabricmc/
client_test:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
2024-04-03 10:22:00 -04:00
- uses: actions/setup-java@v4
with:
distribution: 'microsoft'
java-version: '21'
- name: Run Auto test Client
uses: modmuss50/xvfb-action@v1
with:
run: ./gradlew runProductionAutoTestClient --stacktrace --warning-mode=fail
2024-04-03 10:22:00 -04:00
- uses: actions/upload-artifact@v4
if: always()
with:
name: Test Screenshots
path: run/screenshots
server_test:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
2024-04-03 10:22:00 -04:00
- uses: actions/setup-java@v4
with:
distribution: 'microsoft'
java-version: '21'
- run: mkdir run && echo "eula=true" >> run/eula.txt
- run: ./gradlew runProductionAutoTestServer --stacktrace --warning-mode=fail
check_resources:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
2024-04-03 10:22:00 -04:00
- uses: actions/setup-java@v4
with:
distribution: 'microsoft'
java-version: '21'
- run: ./gradlew generateResources --stacktrace --warning-mode=fail
- run: if [ -n "$(git status --porcelain)" ]; then exit 1; fi