Skip to content

Release to CurseForge and Modrinth #33

Release to CurseForge and Modrinth

Release to CurseForge and Modrinth #33

Workflow file for this run

name: Release to CurseForge and Modrinth
on:
release:
types: [created]
jobs:
build-and-release:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'
cache: 'maven'
- name: Build with Maven
run: mvn clean package -DskipTests
- name: Get artifact info
id: artifact
run: |
echo "jar_path=$(find target/ -name 'MinecraftServerAPI-*.jar' | head -n 1)" >> $GITHUB_OUTPUT
echo "version=${GITHUB_REF_NAME#v}" >> $GITHUB_OUTPUT
- name: Upload to Modrinth & Curseforge
uses: Kir-Antipov/mc-publish@v3.3
with:
modrinth-id: H4i6sdRk
modrinth-token: ${{ secrets.MODRINTH_TOKEN }}
curseforge-id: 1101540
curseforge-token: ${{ secrets.CURSEFORGE_TOKEN }}
files: ${{ steps.artifact.outputs.jar_path }}
name: MinecraftServerAPI ${{ github.ref_name }}
version: msa-${{ steps.artifact.outputs.version }}
version-type: release
game-versions: |
>=1.20 <1.21
loaders: |
paper
spigot
bukkit
changelog: |
See [GitHub Release](${{ github.event.release.html_url }}) for changelog.
- name: Upload to release
uses: softprops/action-gh-release@v1
with:
files: target/MinecraftServerAPI-*.jar
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}