Skip to content

ci: More jvm stuff #808

ci: More jvm stuff

ci: More jvm stuff #808

Workflow file for this run

name: build
on: [pull_request, push]
jobs:
build:
name: Build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: gradle/wrapper-validation-action@v2
- name: NeoForge Kits Cache
uses: actions/cache@v4
with:
path: ~/Kits
key: ${{ runner.os }}-Kits-${{ hashFiles('snapshot_version') }}
restore-keys: |
${{ runner.os }}-Kits-${{ hashFiles('snapshot_version') }}
- name: Compile NeoForge snapshot
run: |
./.scripts/compile_kits.sh
- name: Setup JDK21
run: |
# REF: https://github.com/actions/runner-images/blob/07d23cf/images/ubuntu/Ubuntu2204-Readme.md#java
echo "JAVA_HOME=$(echo $JAVA_HOME_21_X64)" >> "$GITHUB_ENV"
- name: Setup build environment
run: |
chmod +x ./gradlew
echo "org.gradle.java.installations.fromEnv=JAVA_HOME_8_X64,JAVA_HOME_17_X64,JAVA_HOME_21_X64" >> gradle.properties
echo "org.gradle.jvmargs=-Xms2G -Xmx6G -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:MaxHeapSize=256m" >> gradle.properties
echo "org.gradle.parallel=true" >> gradle.properties
echo "org.gradle.cache.cleanup=false" >> gradle.properties
echo "org.gradle.daemon=false" >> gradle.properties
echo "org.gradle.configureondemand=true" >> gradle.properties
- name: Gradle Cache
uses: actions/cache@v4
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', 'gradle.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Build with Gradle
run: ./gradlew build --stacktrace
- name: Archive build results
run: tar -I zstd -cf build.tar.zst versions/*/build/libs
- name: Upload build folder
uses: actions/upload-artifact@v4
with:
name: build-artifacts
path: build.tar.zst
if-no-files-found: error
retention-days: 3