Skip to content

Merge pull request #58 from sa-shiro/dependabot/gradle/master/net.neo… #121

Merge pull request #58 from sa-shiro/dependabot/gradle/master/net.neo…

Merge pull request #58 from sa-shiro/dependabot/gradle/master/net.neo… #121

Workflow file for this run

#file: noinspection SpellCheckingInspection
name: Build
on:
push:
paths-ignore:
- '**/*.md'
- '**/*.txt'
- '**/update.json'
pull_request:
paths-ignore:
- '**/*.md'
- '**/*.txt'
- '**/update.json'
workflow_dispatch:
permissions:
pull-requests: write
issues: write
jobs:
build:
strategy:
matrix:
java: [ 21 ]
os: [ ubuntu-latest, windows-latest ]
# Matrix removed as data generation currently non-functional or only partially functional
#loader: [ fabric, neoforge, forge ]
#name: "${{ matrix.loader }} (Java ${{ matrix.java }} on ${{ matrix.os }})"
name: "Build (Java ${{ matrix.java }} on ${{ matrix.os }})"
runs-on: ${{ matrix.os }}
steps:
- name: "Checkout repository"
uses: actions/checkout@v4
- name: "Cache Gradle dependencies"
uses: actions/cache@v4
id: cache-gradle-dependencies
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: "${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}"
restore-keys: |
${{ runner.os }}-gradle-
- name: "Validate gradle wrapper"
uses: gradle/actions/wrapper-validation@v4
- name: "Setup jdk ${{ matrix.java }}"
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'temurin'
- name: "Make gradle wrapper executable"
if: ${{ runner.os != 'Windows' }}
run: chmod +x ./gradlew
#- name: "Run gradle task: (${{ matrix.loader }}) -> loader (Linux)"
# if: ${{ runner.os != 'Windows' }}
# continue-on-error: true
# run: |
# if [[ "${{ matrix.loader }}" == "forge" ]]; then
# ./gradlew :${{ matrix.loader }}:Data
# elif [[ "${{ matrix.loader }}" == "fabric" ]]; then
# ./gradlew :${{ matrix.loader }}:loader
# else
# ./gradlew :${{ matrix.loader }}:runData
# fi
#- name: "Run gradle task: (${{ matrix.loader }}) -> loader (Windows)"
# if: ${{ runner.os == 'Windows' }}
# shell: pwsh
# continue-on-error: true
# run: |
# if ("${{ matrix.loader }}" -eq "forge") {
# ./gradlew :${{ matrix.loader }}:Data
# }
# elseif ("${{ matrix.loader }}" -eq "fabric") {
# ./gradlew :${{ matrix.loader }}:loader
# }
# else {
# ./gradlew :${{ matrix.loader }}:runData
# }
- name: "Build project"
run: ./gradlew build
- name: "Capture build artifacts"
if: ${{ runner.os == 'Windows' && matrix.java == '21' }}
uses: actions/upload-artifact@v4
with:
name: Artifacts-${{ runner.os }}-${{ matrix.loader }}
path: |
forge/build/libs/
neoforge/build/libs/
fabric/build/libs/