Skip to content

Merge branch 'main' into ms6 #3285

Merge branch 'main' into ms6

Merge branch 'main' into ms6 #3285

Workflow file for this run

name: Test
on:
push:
pull_request:
workflow_dispatch:
jobs:
jar-and-media:
strategy:
matrix:
# and run on both Linux and Windows
os: [ ubuntu-latest, windows-latest, macos-latest ]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/[email protected]
- name: Get branch name
id: branch-name
uses: tj-actions/[email protected]
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '21'
check-latest: true
cache: 'gradle'
- name: Grant execute permission for gradlew
if: ${{ runner.os != 'Windows' }}
run: chmod +x gradlew
- uses: gradle/actions/setup-gradle@v3
with:
gradle-version: wrapper
- uses: luangong/setup-install4j@v1
with:
version: 10.0.7
license: ${{ secrets.INSTALL4J_LICENSE }}
- name: Build with Gradle
run: |
./gradlew -Pversion=${{ steps.branch-name.outputs.current_branch }} generateLicenseReport --info --full-stacktrace
./gradlew -Pversion=${{ steps.branch-name.outputs.current_branch }} build media --info --full-stacktrace
- uses: actions/upload-artifact@v4
if: ${{ always() }}
with:
name: jar-and-media-${{ matrix.os }}
path: |
media
build
buildSrc/build
serverpackcreator-api/build
serverpackcreator-app/build
serverpackcreator-cli/build
serverpackcreator-web/build
serverpackcreator-updater/build
serverpackcreator-web-frontend/dist
serverpackcreator-plugin-example/build
if-no-files-found: warn # 'warn' or 'ignore' are also available, defaults to `warn`
appimage:
runs-on: ubuntu-latest
steps:
# GET THE LATEST CODE
- name: Checkout latest code
uses: actions/[email protected]
with:
fetch-depth: 0
# BUILD PROJECT AND PUBLISH
- name: Set up JDK 21
id: java
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '21'
check-latest: true
cache: 'gradle'
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- uses: gradle/actions/setup-gradle@v3
with:
gradle-version: wrapper
- name: Prepare
env:
GITHUB_ACTOR: ${{ secrets.GITHUB_ACTOR }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
./gradlew -Pversion=${{ steps.branch-name.outputs.current_branch }} generateLicenseReport --info --full-stacktrace
./gradlew build --info --full-stacktrace
- name: Build Image
run: |
jpackage \
--app-version "6.6.6" \
--copyright "Copyright (C) 2024 Griefed" \
--description "Create server packs from Minecraft Forge, NeoForge, Fabric, Quilt or LegacyFabric modpacks." \
--dest serverpackcreator-app/build/dist \
--icon serverpackcreator-app/jpackagerResources/app.png \
--input serverpackcreator-app/build/libs \
--java-options "-Dfile.encoding=UTF-8" \
--java-options "-Dlog4j2.formatMsgNoLookups=true" \
--main-class org.springframework.boot.loader.launch.JarLauncher \
--main-jar serverpackcreator-app-dev.jar \
--name ServerPackCreator \
--resource-dir serverpackcreator-app/jpackagerResources \
--runtime-image $JAVA_HOME \
--temp serverpackcreator-app/build/tmp/jpackager \
--type "app-image" \
--vendor "griefed.de" \
--verbose
- name: List
if: ${{ always() }}
run: ls -ahl serverpackcreator-app/build/dist
- name: Create AppImage
run: |
mkdir -p serverpackcreator-app/build/dist/ServerPackCreator.AppDir/usr/share/applications && \
mkdir -p serverpackcreator-app/build/dist/ServerPackCreator.AppDir/usr/icons/hicolor/512x512 && \
mkdir -p serverpackcreator-app/build/dist/ServerPackCreator.AppDir/usr/icons/hicolor/scalable && \
cp -rf serverpackcreator-app/build/dist/ServerPackCreator/* \
serverpackcreator-app/build/dist/ServerPackCreator.AppDir && \
cp serverpackcreator-app/jpackagerResources/appimage.desktop \
serverpackcreator-app/build/dist/ServerPackCreator.AppDir/usr/share/applications/ServerPackCreator.desktop && \
cp serverpackcreator-app/jpackagerResources/appimage.png \
serverpackcreator-app/build/dist/ServerPackCreator.AppDir/usr/icons/hicolor/512x512/ServerPackCreator.png && \
cp serverpackcreator-app/jpackagerResources/appimage.svg \
serverpackcreator-app/build/dist/ServerPackCreator.AppDir/usr/icons/hicolor/scalable/ServerPackCreator.svg && \
cd serverpackcreator-app/build/dist/ServerPackCreator.AppDir && \
ln -s bin/ServerPackCreator \
AppRun && \
ln -s usr/share/applications/ServerPackCreator.desktop \
ServerPackCreator.desktop && \
ln -s usr/icons/hicolor/512x512/ServerPackCreator.png \
ServerPackCreator.png && \
ln -s usr/icons/hicolor/scalable/ServerPackCreator.svg \
ServerPackCreator.svg && \
cd .. && \
curl \
-L https://github.com/AppImage/AppImageKit/releases/download/13/appimagetool-x86_64.AppImage \
-o appimagetool.AppImage && \
chmod +x appimagetool.AppImage && \
./appimagetool.AppImage --appimage-extract && \
export PATH=./squashfs-root/usr/bin:${PATH} && \
appimagetool \
ServerPackCreator.AppDir \
ServerPackCreator-Portable-Linux-x86_64.AppImage
# UPLOAD OS-SPECIFICS
- name: Upload
uses: actions/upload-artifact@v4
if: ${{ always() }}
with:
name: appimage
path: |
serverpackcreator-app/build/dist/ServerPackCreator-Portable-Linux-x86_64.AppImage
if-no-files-found: warn # 'warn' or 'ignore' are also available, defaults to `warn`