Skip to content

Merge pull request #1855 from warblgarbl/main #998

Merge pull request #1855 from warblgarbl/main

Merge pull request #1855 from warblgarbl/main #998

Workflow file for this run

# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a package using Gradle and then publish it to GitHub packages when a release is created
# For more information see: https://github.com/actions/setup-java/blob/main/docs/advanced-usage.md#Publishing-using-gradle
name: Gradle Package
on:
push:
branches:
- main
jobs:
build-linux:
runs-on: ubuntu-latest
permissions:
contents: write
packages: write
steps:
- name: Clone repo
uses: actions/checkout@v3
- name: Replace build number
run: sed -i "s/SNAPSHOT/${{ github.run_number }}/g" ./src/main/java/legend/core/Version.java
- name: Replace commit hash
run: sed -i "s/COMMIT/${{ github.sha }}/g" ./src/main/java/legend/core/Version.java
- name: Set up JDK 21
uses: actions/setup-java@v3
with:
java-version: '21'
distribution: 'temurin'
cache: gradle
- name: Publish to maven local
run: ./gradlew publishToMavenLocal
- name: Clone meta scraper
uses: actions/checkout@v4
with:
repository: Legend-of-Dragoon-Modding/Severed-Chains-Metadata-Utility
path: meta
- name: Build meta scraper
working-directory: ./meta
run: ./gradlew build
- name: Run meta scraper
env:
HOST: ${{ secrets.META_HOST }}
USERNAME: ${{ secrets.META_USERNAME }}
PASSWORD: ${{ secrets.META_PASSWORD }}
working-directory: ./patches/meta
run: java --add-exports java.base/jdk.internal.access=ALL-UNNAMED --add-opens java.base/jdk.internal.access=ALL-UNNAMED --add-exports java.base/jdk.internal.reflect=ALL-UNNAMED -jar ../../meta/build/libs/sc-meta-scraper-1.0.jar --host "$HOST" --username "$USERNAME" --password "$PASSWORD"
- name: Build Windows x64 with Gradle
run: ./gradlew build -Pos=windows -Parch=x86_64
- name: Write ISOs help file
run: mkdir ./build/libs/isos && echo "Place your ISOs or BINs in this folder" > ./build/libs/isos/help.txt
- name: ZIP Windows x64 Build
uses: thedoctor0/zip-release@main
with:
type: 'zip'
filename: '../Severed_Chains_Windows.zip'
directory: 'build/libs'
exclusions: '*.zip* *.tar.gz*'
- name: Clean up Windows x64
run: 'rm build/libs/launch.bat'
- name: Build Steam Deck x64 with Gradle
run: ./gradlew build -Pos=linux -Parch=x86_64 -Psteamdeck=true
- name: ZIP Steam Deck x64 Build
uses: thedoctor0/zip-release@main
with:
type: 'tar'
filename: '../Severed_Chains_Steam_Deck.tar.gz'
directory: 'build/libs'
exclusions: '*.zip* *.tar.gz*'
- name: Clean up Steam Deck x64
run: 'rm build/libs/launch build/libs/download-java'
- name: Build Linux x64 with Gradle
run: ./gradlew build -Pos=linux -Parch=x86_64
- name: ZIP Linux x64 Build
uses: thedoctor0/zip-release@main
with:
type: 'tar'
filename: '../Severed_Chains_Linux.tar.gz'
directory: 'build/libs'
exclusions: '*.zip* *.tar.gz*'
- name: Clean up Linux x64
run: 'rm build/libs/launch build/libs/download-java'
- name: Build Linux ARM64 with Gradle
run: ./gradlew build -Pos=linux -Parch=aarch64
- name: ZIP Linux ARM64 Build
uses: thedoctor0/zip-release@main
with:
type: 'tar'
filename: '../Severed_Chains_Linux_ARM64.tar.gz'
directory: 'build/libs'
exclusions: '*.zip* *.tar.gz*'
- name: Clean up Linux ARM64
run: 'rm build/libs/launch build/libs/download-java'
- name: Build MacOS x64 with Gradle
run: ./gradlew build -Pos=osx -Parch=x86_64
- name: ZIP MacOS x64 Build
uses: thedoctor0/zip-release@main
with:
type: 'tar'
filename: '../Severed_Chains_MacOS_Intel.tar.gz'
directory: 'build/libs'
exclusions: '*.zip* *.tar.gz*'
- name: Clean up MacOS x64
run: 'rm build/libs/launch build/libs/download-java'
- name: Build MacOS ARM64 with Gradle
run: ./gradlew build -Pos=osx -Parch=aarch64
- name: ZIP MacOS ARM64 Build
uses: thedoctor0/zip-release@main
with:
type: 'tar'
filename: '../Severed_Chains_MacOS_M1.tar.gz'
directory: 'build/libs'
exclusions: '*.zip* *.tar.gz*'
- name: Clean up MacOS ARM64 x64
run: 'rm build/libs/launch build/libs/download-java'
- name: Delete Tag and Release
uses: dev-drprasad/[email protected]
with:
delete_release: 'true'
tag_name: 'devbuild'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload Release
uses: ncipollo/release-action@v1
with:
artifacts: 'build/*.zip,build/*.tar.gz'
token: ${{ secrets.GITHUB_TOKEN }}
commit: ${{ github.sha }}
name: 'Latest Development Build'
allowUpdates: 'true'
prerelease: 'true'
tag: 'devbuild'