1
mirror of https://github.com/StarWishsama/Slimefun4.git synced 2024-09-20 03:35:51 +00:00
Slimefun4/.github/workflows/e2e-testing.yml

78 lines
2.2 KiB
YAML
Raw Normal View History

name: End to End Testing
2023-06-30 21:59:50 +00:00
2023-07-16 21:20:49 +00:00
on:
workflow_call:
inputs:
artifact-name:
description: 'Slimefun artifact name'
2023-07-16 21:20:49 +00:00
required: true
type: string
2023-06-30 21:59:50 +00:00
jobs:
e2e-testing:
name: End to End Testing
runs-on: ubuntu-latest
timeout-minutes: 5
2023-07-02 11:09:51 +00:00
strategy:
matrix:
include:
- mcVersion: '1.16.5'
javaVersion: '16'
- mcVersion: '1.17.1'
javaVersion: '17'
- mcVersion: '1.18.2'
javaVersion: '18'
- mcVersion: '1.19.4'
javaVersion: '19'
2023-12-05 21:50:22 +00:00
- mcVersion: 'latest'
2023-07-02 11:09:51 +00:00
javaVersion: '20'
2023-06-30 21:59:50 +00:00
steps:
- name: Checkout repository
uses: actions/checkout@v4
2023-06-30 21:59:50 +00:00
- name: Set up JDK
uses: actions/setup-java@v4.0.0
2023-06-30 21:59:50 +00:00
with:
2023-07-02 11:09:51 +00:00
distribution: temurin
java-version: ${{ matrix.javaVersion }}
2023-06-30 21:59:50 +00:00
java-package: jdk
architecture: x64
2023-07-16 21:20:49 +00:00
- name: Setup server
run: |
echo 'eula=true' > eula.txt
mkdir plugins
2023-07-02 11:09:51 +00:00
- name: Download ${{ matrix.mcVersion }} Paper
2023-06-30 21:59:50 +00:00
run: |
2023-07-02 11:09:51 +00:00
VERSION="${{ matrix.mcVersion }}"
2023-12-05 21:50:22 +00:00
if [ "$VERSION" == "latest" ]; then
VERSION=$(curl https://api.papermc.io/v2/projects/paper/ -s | jq -r '.versions[-1]')
fi
2023-07-02 11:09:51 +00:00
BUILD_JAR=$(curl -s "https://api.papermc.io/v2/projects/paper/versions/$VERSION/builds" \
| jq '.builds[-1] | "\(.build) \(.downloads.application.name)"' -r)
2023-06-30 21:59:50 +00:00
BUILD=$(echo "$BUILD_JAR" | awk '{print $1}')
JAR_FILE=$(echo "$BUILD_JAR" | awk '{print $2}')
2023-12-05 21:50:22 +00:00
echo "Downloading... https://api.papermc.io/v2/projects/paper/versions/$VERSION/builds/$BUILD/downloads/$JAR_FILE"
2023-07-02 11:09:51 +00:00
curl -o paper.jar \
"https://api.papermc.io/v2/projects/paper/versions/$VERSION/builds/$BUILD/downloads/$JAR_FILE"
2023-06-30 21:59:50 +00:00
2023-07-16 21:20:49 +00:00
- name: Download Slimefun
uses: actions/download-artifact@v3
with:
name: ${{ inputs.artifact-name }}
path: plugins/
2023-07-04 22:48:44 +00:00
2023-07-16 21:20:49 +00:00
- name: Download e2e-tester
2023-06-30 21:59:50 +00:00
run: |
2023-07-16 21:20:49 +00:00
curl -o e2e-tester.jar https://preview-builds.walshy.dev/download/e2e-tester/main/latest
2023-07-04 22:48:44 +00:00
mv e2e-tester.jar plugins/e2e-tester.jar
2023-06-30 21:59:50 +00:00
- name: Run server
run: |
java -jar paper.jar --nogui