Skip to content

Maven

Maven #8

Workflow file for this run

name: Maven
on:
push:
tags:
- "*.*"
workflow_dispatch:
env:
JAVA_8_LIST: '["forge-1.16.5"]'
JAVA_17_LIST: '["fabric-1.16.5","fabric-1.18.2","fabric-1.19.1","fabric-1.19.2","fabric-1.19.3","fabric-1.19.4","fabric-1.20","fabric-1.20.3","forge-1.18.2","forge-1.19","forge-1.20","forge-1.20.2","forge-1.20.3"]'
JAVA_21_LIST: '["fabric-1.20.5","fabric-1.21","fabric-1.21.2","fabric-1.21.4","neoforge-1.20.2","neoforge-1.20.3","neoforge-1.20.4","neoforge-1.20.5","neoforge-1.21.0","neoforge-1.21.2","neoforge-1.21.4"]'
permissions:
contents: write
jobs:
generate-matrix:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- name: Generate Matrix
id: set-matrix
run: |
chmod 777 matrix.sh && ./matrix.sh -path "fabric,forge,neoforge"
maven:
runs-on: ubuntu-latest
needs: generate-matrix
strategy:
matrix: ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- name: Chose JDK 8
uses: actions/setup-java@v4
if: contains(env.JAVA_8_LIST, format('{0}-{1}', matrix.config.mc-loader,matrix.config.mc-version))
with:
java-version: '8'
distribution: 'temurin'
- name: Chose JDK 17
uses: actions/setup-java@v4
if: contains(env.JAVA_17_LIST, format('{0}-{1}', matrix.config.mc-loader,matrix.config.mc-version))
with:
java-version: '17'
distribution: 'temurin'
- name: Chose JDK 21
uses: actions/setup-java@v4
if: contains(env.JAVA_21_LIST, format('{0}-{1}', matrix.config.mc-loader,matrix.config.mc-version))
with:
java-version: '21'
distribution: 'temurin'
- name: Read version.txt and save to variable
run: |
mod_version=$(cat version.txt)
echo "Version: $mod_version"
echo "MOD_VERSION=$mod_version" >> "$GITHUB_ENV"
- name: Init Files
run: |
chmod 777 init.sh && ./init.sh
- name: Build And Publish Maven
run: |
cd ${{ matrix.config.mc-loader }}/${{ matrix.config.mc-loader }}-${{ matrix.config.mc-version }}
chmod 777 gradlew && ./gradlew clean build
./gradlew publish
env:
KITUIN_USERNAME: ${{ secrets.KITUIN_USERNAME }}
KITUIN_PASSWORD: ${{ secrets.KITUIN_PASSWORD }}
continue-on-error: true