Skip to content

Release

Release #10

Workflow file for this run

name: Release
on: workflow_dispatch
permissions:
contents: write
discussions: write
env:
PROJECT_NAME: ShadowEngine
jobs:
build:
name: ${{ matrix.name }}
strategy:
matrix:
include:
- name: Windows x86_64
os: windows-2025
buildArgs: "windows -final -D officialBuild"
assetType: S3TC
artifactName: windowsBuild-x86_64
artifactPath: export\release\windows\bin\*
- name: Linux x86_64
os: ubuntu-22.04
buildArgs: "linux -final -D officialBuild"
assetType: S3TC
artifactName: linuxBuild-x86_64
artifactPath: export/release/linux/bin/*
- name: Linux ARM64
os: ubuntu-22.04-arm
buildArgs: "linux -arm64 -final -D HXCPP_ARM64 -D officialBuild"
assetType: ASTC
artifactName: linuxBuild-arm64
artifactPath: export/release/linux/bin/*
- name: macOS x86_64
os: macos-15
buildArgs: "mac -final -64 -D HXCPP_M64 -D officialBuild"
assetType: S3TC
artifactName: macOSBuild-x86_64
artifactPath: export/release/macos/bin/*
- name: macOS ARM64
os: macos-15
buildArgs: "mac -final -arm64 -D HXCPP_ARM64 -D officialBuild"
assetType: S3TC
artifactName: macOSBuild-arm64
artifactPath: export/release/macos/bin/*
- name: Android
os: macos-15
buildArgs: "android -final -D officialBuild"
assetType: ASTC
artifactName: androidBuild
artifactPath: "export/release/android/bin/app/build/outputs/apk/release/*.apk"
- name: iOS
os: macos-15
buildArgs: "ios -eval -final -nosign -D officialBuild"
assetType: ASTC
artifactName: iOSBuild
artifactPath: "export/release/ios/build/Release-iphoneos/*.ipa"
uses: ./.github/workflows/build.yml
with:
name: ${{ matrix.name }}
os: ${{ matrix.os }}
buildArgs: ${{ matrix.buildArgs }}
assetType: ${{ matrix.assetType }}
artifactName: ${{ matrix.artifactName }}
artifactPath: ${{ matrix.artifactPath }}
Releaser:
needs: [build]
runs-on: ubuntu-latest
permissions: write-all
steps:
- name: Download Android Build
uses: actions/download-artifact@main
with:
name: androidBuild-ASTC
path: /home/runner
- name: Move Android File
run: mv /home/runner/${{ env.PROJECT_NAME }}-release.apk /home/runner/${{ env.PROJECT_NAME }}-ASTC-Android.apk
- name: Download iOS Build
uses: actions/download-artifact@main
with:
name: iOSBuild-ASTC
path: ${{ github.workspace }}
- name: Move iOS File
run: mv ${{ github.workspace }}/${{ env.PROJECT_NAME }}.ipa /home/runner/${{ env.PROJECT_NAME }}-ASTC-iOS.ipa
- name: Download Linux x86_64 Build
uses: actions/download-artifact@main
with:
name: linuxBuild-x86_64-S3TC
path: /home/runner/linuxBuild-x86_64
- name: Tar Linux x86_64 Build For Release
run: |
cd /home/runner/linuxBuild-x86_64
tar czf "/home/runner/${{ env.PROJECT_NAME }}-S3TC-linux-x86_64.tar" .
- name: Download Linux ARM64 Build
uses: actions/download-artifact@main
with:
name: linuxBuild-arm64-ASTC
path: /home/runner/linuxBuild-arm64
- name: Tar Linux ARM64 Build For Release
run: |
cd /home/runner/linuxBuild-arm64
tar czf "/home/runner/${{ env.PROJECT_NAME }}-ASTC-linux-arm64.tar" .
- name: Download macOS ARM64 Build
uses: actions/download-artifact@main
with:
name: macOSBuild-arm64-S3TC
path: /home/runner/macOSBuild-arm64
- name: Tar macOS ARM64 Build For Release
run: |
cd /home/runner/macOSBuild-arm64
tar czf "/home/runner/${{ env.PROJECT_NAME }}-macOS-arm64.tar" .
- name: Download macOS x86_64 Build
uses: actions/download-artifact@main
with:
name: macOSBuild-x86_64-S3TC
path: /home/runner/macOSBuild-x86_64
- name: Tar macOS x86_64 Build For Release
run: |
cd /home/runner/macOSBuild-x86_64
tar czf "/home/runner/${{ env.PROJECT_NAME }}-macOS-x86_64.tar" .
- name: Download Windows x86_64 Build
uses: actions/download-artifact@main
with:
name: windowsBuild-x86_64-S3TC
path: /home/runner/windowsBuild-x86_64
- name: Zip Windows x86_64 Build For Release
run: |
cd /home/runner/windowsBuild-x86_64
zip -r "/home/runner/${{ env.PROJECT_NAME }}-S3TC-windows-x86_64.zip" .
- name: Publish The Release
uses: softprops/action-gh-release@v2
with:
name: "0.2.1"
tag_name: "0.2.1"
prerelease: false
files: |
/home/runner/*.apk
/home/runner/*.ipa
/home/runner/*.tar
/home/runner/*.zip