Skip to content

Release Builds

Release Builds #60

Workflow file for this run

# This Action will build the SDK and if this succeeds, create a GitHub release
name: Release Builds
on:
push:
tags:
- "*"
jobs:
# -------------------------------
# 1. Build + bundle (Linux only)
# -------------------------------
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Build the SDK
uses: ./.github/actions/build-sdk
with:
tag: ${{ github.ref_name }}
createBundle: true
- name: Prepare installers
uses: ./.github/actions/prepare-installers
- name: Upload distributable ZIP bundle
uses: actions/upload-artifact@v7
with:
name: bundle
path: dist/jmonkeyplatform.zip
compression-level: 0
if-no-files-found: error
- name: Upload NBPackage
uses: actions/upload-artifact@v7
with:
name: nbpackage
path: installers/nbpackage/
compression-level: 9
# -------------------------------
# 2. Native installer packaging (matrix)
# -------------------------------
package:
needs: build
strategy:
matrix:
os: [ ubuntu-latest, ubuntu-24.04-arm, windows-latest, macos-latest, macos-26-intel ]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v6
- name: Download bundle
uses: actions/download-artifact@v8
with:
name: bundle
path: dist
- name: Download NBPackage
uses: actions/download-artifact@v8
with:
name: nbpackage
path: installers/nbpackage
- name: Build installers
uses: ./.github/actions/build-installers
with:
tag: ${{ github.ref_name }}
os: ${{ runner.os }}
arch: ${{ runner.arch }}
- name: Upload installers
uses: actions/upload-artifact@v7
with:
name: installers-${{ matrix.os }}
path: dist/installers/**
# -------------------------------
# 3. Release
# -------------------------------
release:
needs: package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Publish release
uses: ./.github/actions/publish-release
with:
tag: ${{ github.ref }}
# - name: Download JDKs for the installers
# run: bash download-jdks.sh
# working-directory: installers
# - name: Build the installers
# run: bash build-installers.sh ${{ github.ref_name }} headless
# working-directory: installers
# - name: Create Release
# uses: softprops/action-gh-release@v1
#
# with:
# files: |
# dist/jmonkeyplatform*.*
# dist/jmonkeyengine-sdk*.*
# dist/jMonkeyEngine-SDK*.*
# tag_name: ${{ github.ref }}
# name: Release ${{ github.ref }}
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}