Server integrations / paper (push) Successful in 4m4s
CI / Rust, web and container (push) Failing after 13s
CI / Real Minecraft installs (manual) (push) Skipped
CI / Windows launcher (push) Failing after 13s
Server integrations / Fabric and Forge / 1.21.1 (push) Failing after 16m9s
Server integrations / Fabric and Forge / 1.20.1 (push) Failing after 20m49s
Server integrations / Fabric and Forge / 26.1.2 (push) Failing after 10m46s
Server integrations / Fabric and Forge / 26.2 (push) Failing after 14m6s
Server integrations / Fabric and Forge / 26.3 (push) Failing after 10m30s
87 lines
3.3 KiB
YAML
87 lines
3.3 KiB
YAML
name: Server integrations
|
|
on:
|
|
push:
|
|
branches: ['**']
|
|
paths: ['integrations/**', '.gitea/workflows/integrations.yml']
|
|
pull_request:
|
|
paths: ['integrations/**', '.gitea/workflows/integrations.yml']
|
|
workflow_dispatch:
|
|
workflow_call:
|
|
inputs:
|
|
version:
|
|
type: string
|
|
default: '0.5.0'
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
paper:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- uses: actions/setup-java@v4
|
|
with:
|
|
distribution: temurin
|
|
java-version: '21'
|
|
- name: Verify integration runner
|
|
run: |
|
|
set -eu
|
|
test "$(uname -s)" = Linux
|
|
command -v java
|
|
java -version 2>&1 | grep -q '21\.' || { echo 'Paper needs Java 21'; exit 1; }
|
|
- name: Build Paper with Gradle 8.10.2
|
|
run: |
|
|
sed -i 's/gradle-9.6.0-bin.zip/gradle-8.10.2-bin.zip/' integrations/gradle/wrapper/gradle-wrapper.properties
|
|
integrations/gradlew -p integrations :common:test :paper:build -PreleaseVersion="${{ inputs.version || '0.5.0' }}"
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: server-paper
|
|
path: integrations/paper/build/libs/scopenet-paper-*.jar
|
|
if-no-files-found: error
|
|
- uses: actions/upload-artifact@v4
|
|
if: failure()
|
|
with:
|
|
name: integration-test-reports
|
|
path: integrations/common/build/reports/tests/
|
|
|
|
mods:
|
|
name: Fabric and Forge / ${{ matrix.mc.version }}
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
mc:
|
|
- { version: '1.20.1', java: '21', gradle: '8.10.2' }
|
|
- { version: '1.21.1', java: '21', gradle: '8.10.2' }
|
|
- { version: '26.1.2', java: '25', gradle: '9.6.0' }
|
|
- { version: '26.2', java: '25', gradle: '9.6.0' }
|
|
- { version: '26.3', java: '25', gradle: '9.6.0' }
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- uses: actions/setup-java@v4
|
|
with:
|
|
distribution: temurin
|
|
java-version: ${{ matrix.mc.java }}
|
|
- name: Verify integration runner
|
|
run: |
|
|
set -eu
|
|
test "$(uname -s)" = Linux
|
|
command -v java
|
|
java -version 2>&1 | grep -q '${{ matrix.mc.java }}\.' || { echo 'Wrong Java version for this matrix entry'; exit 1; }
|
|
- name: Build both loaders
|
|
run: |
|
|
sed -i 's/gradle-9.6.0-bin.zip/gradle-${{ matrix.mc.gradle }}-bin.zip/' integrations/gradle/wrapper/gradle-wrapper.properties
|
|
for loader in fabric forge; do
|
|
integrations/gradlew -p integrations -Ploader="$loader" -PmcVersion=${{ matrix.mc.version }} -PreleaseVersion="${{ inputs.version || '0.5.0' }}" :"$loader":build
|
|
done
|
|
- name: Audit Fabric startup hooks
|
|
run: integrations/gradlew -p integrations -Ploader=fabric -PmcVersion=${{ matrix.mc.version }} -PreleaseVersion="${{ inputs.version || '0.5.0' }}" -PverifyMixins=true :fabric:runServer
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: server-mods-${{ matrix.mc.version }}
|
|
path: |
|
|
integrations/fabric/build/libs/scopenet-fabric-${{ matrix.mc.version }}-*.jar
|
|
integrations/forge/build/libs/scopenet-forge-${{ matrix.mc.version }}-*.jar
|
|
if-no-files-found: error
|