2.0.0
release.
#1728
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Testing | |
on: | |
push: | |
branches: main | |
paths-ignore: | |
- '.github/workflows/format.yml' | |
- '.github/workflows/libs-building.yml' | |
- '.github/workflows/pages.yml' | |
- 'docs/**' | |
- 'project/vlc/scripts/**' | |
- 'LICENSE' | |
- 'README.md' | |
- 'TODO.md' | |
- 'haxelib.json' | |
- 'hxformat.json' | |
pull_request: | |
workflow_dispatch: | |
jobs: | |
Desktop: | |
runs-on: ${{matrix.os}}-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [windows, macos, ubuntu] | |
sample: [flixel, openfl] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@main | |
- name: Setup Haxe | |
uses: krdlab/setup-haxe@master | |
with: | |
haxe-version: 4.3.6 | |
- name: Install Dependencies | |
if: matrix.os == 'ubuntu' | |
run: sudo apt-get update && sudo apt-get install libvlc-dev libvlccore-dev vlc-bin vlc | |
- name: Install Haxe Libraries | |
run: | | |
haxelib install lime --quiet --never --skip-dependencies | |
haxelib install openfl --quiet --never --skip-dependencies | |
haxelib dev hxvlc . | |
- name: Setup Flixel Libraries | |
if: matrix.sample == 'flixel' | |
run: | | |
haxelib install flixel --quiet --never --skip-dependencies | |
haxelib install hscript --quiet --never --skip-dependencies | |
- name: Setup hxcpp Library | |
run: haxelib git hxcpp https://github.com/HaxeFoundation/hxcpp.git --quiet --never --skip-dependencies && haxelib run lime rebuild hxcpp | |
- name: List Installed Haxe Libraries | |
run: haxelib list | |
- name: Build Windows | |
if: matrix.os == 'windows' | |
run: cd samples/${{matrix.sample}} && haxelib run lime build windows | |
- name: Upload Windows Artifact | |
if: matrix.os == 'windows' | |
uses: actions/upload-artifact@main | |
with: | |
name: windowsBuild-${{matrix.sample}} | |
path: samples/${{matrix.sample}}/export/windows/bin | |
if-no-files-found: warn | |
- name: Build MacOS | |
if: matrix.os == 'macos' | |
run: cd samples/${{matrix.sample}} && haxelib run lime build mac && tar -zcf build.tar.gz -C export/macos/bin . | |
- name: Upload MacOS Artifact | |
if: matrix.os == 'macos' | |
uses: actions/upload-artifact@main | |
with: | |
name: macBuild-${{matrix.sample}} | |
path: samples/${{matrix.sample}}/build.tar.gz | |
if-no-files-found: warn | |
- name: Build Linux | |
if: matrix.os == 'ubuntu' | |
run: cd samples/${{matrix.sample}} && haxelib run lime build linux && tar -zcf build.tar.gz -C export/linux/bin . | |
- name: Upload Linux Artifact | |
if: matrix.os == 'ubuntu' | |
uses: actions/upload-artifact@main | |
with: | |
name: linuxBuild-${{matrix.sample}} | |
path: samples/${{matrix.sample}}/build.tar.gz | |
if-no-files-found: warn | |
Mobile: | |
runs-on: macos-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [android, ios] | |
sample: [flixel, openfl] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@main | |
- name: Setup Haxe | |
uses: krdlab/setup-haxe@master | |
with: | |
haxe-version: 4.3.6 | |
- name: Install Haxe Libraries | |
run: | | |
haxelib install lime --quiet --never --skip-dependencies | |
haxelib install openfl --quiet --never --skip-dependencies | |
haxelib install extension-androidtools --quiet --never --skip-dependencies | |
haxelib dev hxvlc . | |
- name: Setup Flixel Libraries | |
if: matrix.sample == 'flixel' | |
run: | | |
haxelib install flixel --quiet --never --skip-dependencies | |
haxelib install hscript --quiet --never --skip-dependencies | |
- name: Setup hxcpp Library | |
run: haxelib git hxcpp https://github.com/HaxeFoundation/hxcpp.git --quiet --never --skip-dependencies && haxelib run lime rebuild hxcpp | |
- name: List Installed Haxe Libraries | |
run: haxelib list | |
- name: Configure Android Environment | |
if: matrix.os == 'android' | |
run: | | |
haxelib run lime config ANDROID_SDK $ANDROID_HOME | |
haxelib run lime config ANDROID_NDK_ROOT $ANDROID_NDK_LATEST_HOME | |
haxelib run lime config JAVA_HOME $JAVA_HOME_11_arm64 | |
haxelib run lime config ANDROID_SETUP true | |
- name: Build Android | |
if: matrix.os == 'android' | |
run: cd samples/${{matrix.sample}} && haxelib run lime build android | |
- name: Upload Android Artifact | |
if: matrix.os == 'android' | |
uses: actions/upload-artifact@main | |
with: | |
name: androidBuild-${{matrix.sample}} | |
path: samples/${{matrix.sample}}/export/android/bin/app/build/outputs/apk/debug | |
if-no-files-found: warn | |
- name: Build iOS | |
if: matrix.os == 'ios' | |
run: cd samples/${{matrix.sample}} && haxelib run lime build ios -nosign | |
- name: Create iOS IPA | |
if: matrix.os == 'ios' | |
run: cd samples/${{matrix.sample}}/export/ios/build/Release-iphoneos && mkdir Payload && mv *.app Payload && zip -r Sample.ipa Payload | |
- name: Upload iOS Artifact | |
if: matrix.os == 'ios' | |
uses: actions/upload-artifact@main | |
with: | |
name: iOSBuild-${{matrix.sample}} | |
path: samples/${{matrix.sample}}/export/ios/build/Release-iphoneos/Sample.ipa | |
if-no-files-found: warn |