Skip to content

Work on reproducible builds #17

Work on reproducible builds

Work on reproducible builds #17

Workflow file for this run

# This workflow will build a Java project with Gradle
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle
name: fabric-1.20 - Draft release
on:
push:
# Sequence of patterns matched against refs/tags
tags: 'v*-1.20' # Push events to matching v*-1.20
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 17
- name: Install advancecomp
run: sudo apt-get install advancecomp
- name: Install strip-nondeterminism
run: sudo apt-get install strip-nondeterminism
- name: Install jq
run: sudo apt-get install jq
- name: Validate Gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Build with Gradle
env:
BUILD_RELEASE: ${{ github.event.release.prerelease == false }}
uses: gradle/gradle-build-action@v2
with:
gradle-version: wrapper
cache-disabled: true
arguments: build --stacktrace --warning-mode all
- name: Rezip mod .jar files to remove directory entries
run: bash removeDirectoryEntries.sh
- name: Run strip-nondeterminism on built .jar files
run: strip-nondeterminism build/libs/*.jar
- name: Run advzip (-i 99999) on built .jar files
run: advzip --shrink-insane -kzi 99999 -p build/libs/*.jar
- name: Run ECT on built .jar files
run: for file in ./build/libs/*.jar; do ./ci-tools/ect-ubuntu-x86-64 --disable-png --disable-jpg -strip -zip $file; done
- name: Run ECT (-9) on built .jar files
run: for file in ./build/libs/*.jar; do ./ci-tools/ect-ubuntu-x86-64 -9 --disable-png --disable-jpg -strip -zip $file; done
- name: Run ECT (-99) on built .jar files
run: for file in ./build/libs/*.jar; do ./ci-tools/ect-ubuntu-x86-64 -99 --disable-png --disable-jpg -strip -zip $file; done
- name: Run ECT (-999) on built .jar files
run: for file in ./build/libs/*.jar; do ./ci-tools/ect-ubuntu-x86-64 -999 --disable-png --disable-jpg -strip -zip $file; done
- name: Run ECT (-30060) on built .jar files
run: for file in ./build/libs/*.jar; do ./ci-tools/ect-ubuntu-x86-64 -30060 --disable-png --disable-jpg -strip -zip $file; done
- name: Run ECT (-90032) on built .jar files
run: for file in ./build/libs/*.jar; do ./ci-tools/ect-ubuntu-x86-64 -90032 --disable-png --disable-jpg -strip -zip $file; done
- name: Run ECT (-9999) on built .jar files
run: for file in ./build/libs/*.jar; do ./ci-tools/ect-ubuntu-x86-64 -9999 --disable-png --disable-jpg -strip -zip $file; done
- name: Draft release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ github.ref }}
name: Draft release ${{ github.ref }}
body: Replace this text with the description of this release!
draft: true
prerelease: false
files: build/libs/*.jar