A GitHub Action to test Minecraft Plugins on a Server for a Specific Version
A GitHub Action that sets up a Minecraft Server/Server Proxy to test your plugins on.
Note
By using this GitHub Action you agree to the official Minecraft EULA.
This GitHub Action is not affiliated with Mojang or Microsoft.
Warning
Because of the way the server exists, it is impossible to determine when the server crashes or an error is detected in the server. This is planned to be changed in a future release.
jobs:
test:
# ...
steps:
- uses: actions/checkout@v4
- uses: GamerCoder215/TestMC@v1.0.1
with:
path: 'path/to/plugin.jar'
runtime: 'paper'
version: '1.20.1'
time: 120
Globs are also supported, in which case the first result is used:
jobs:
test:
# ...
steps:
- uses: actions/checkout@v4
- uses: GamerCoder215/TestMC@v1.0.1
with:
path: 'path/to/plugin/myplugin-*.jar'
runtime: 'paper'
version: '1.20.2'
time: 240
Tip
Building a server (especially using buildtools) takes 3-5 minutes, on top of the additional server runtime. It is recommended that you utilize matrix builds to speed up runtime.
jobs:
test:
strategy:
matrix:
runtime: ['paper', 'spigot']
version: ['1.20.1', '1.20.2', '1.20.4']
# ...
steps:
- uses: actions/checkout@v4
- uses: GamerCoder215/TestMC@v1.0.1
with:
path: 'path/to/plugin.jar'
runtime: ${{ matrix.runtime }}
version: ${{ matrix.version }}
time: 120
Option Name | Description | Required | Default Value |
---|---|---|---|
path |
The path to the plugin to test. | true | |
runtime |
The runtime option to use. | true | |
version |
The runtime (Minecraft) version to use. | false | latest version |
time |
How long the server should run for, in seconds. | false | 120 |
build |
Optionally specify a specific build number for your inputted runtime. | false | latest build |
flags |
Additional Flags to pass to the server jar. | false | '' |
experimental |
Whether to allow experimental versions. | false | false |
use-similar-versions |
Whether to find a similar version (determined by its protocol version) to use if the inputted version is not available. | false | true |
Minimum Version: 1.8
Latest Version: 1.20.4 (1-31-2024)
Latest Experimental Version: 1.18-rc3 (1-31-2024)
Warning
The following versions are not guaranteed to be available:
- 1.8.1, 1.8.2, 1.8.9
- 1.9.1, 1.9.3,
- 1.10.1
- 1.16
- CraftBukkit (
craftbukkit
) - SpigotMC (
spigot
) - PaperMC (
paper
) - Purpur (
purpur
)
- Bungeecord (
bungeecord
) - Waterfall (
waterfall
) - Velocity (
velocity
)
This project is licensed under the LGPL-3.0 License, similar to other Bukkit projects.