Skip to content

CI export and test (#57) #71

CI export and test (#57)

CI export and test (#57) #71

Workflow file for this run

name: Addon
on:
push:
branches: [master, godot-3]
workflow_dispatch:
env:
GODOT_MAJOR: 4
TARGET: template_release
GODOT_REF: 4.1.2-stable
LIBRARY_PATH: addons/godot-wasm/bin
jobs:
build-addon:
name: Build Addon
strategy:
fail-fast: false
matrix:
platform: [linux, macos, windows]
include:
- platform: linux
os: ubuntu-latest
- platform: macos
os: macos-11
- platform: windows
os: windows-latest
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive
- name: Install Dependencies
uses: ./.github/actions/install-deps
- name: Build Godot CPP
uses: ./.github/actions/godot-cpp
with:
platform: ${{ matrix.platform }}
target: ${{ env.TARGET }}
- name: Build Addon
uses: ./.github/actions/scons-build
with:
platform: ${{ matrix.platform }}
target: ${{ env.TARGET }}
godot-major: ${{ env.GODOT_MAJOR }}
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.platform }}
path: ${{ github.workspace }}/${{ env.LIBRARY_PATH }}/${{ matrix.platform }}
if-no-files-found: error
test-editor:
needs: build-addon
name: Test Addon Editor
strategy:
fail-fast: false
matrix:
platform: [linux, macos, windows]
include:
- platform: linux
os: ubuntu-latest
- platform: macos
os: macos-11
- platform: windows
os: windows-latest
runs-on: ${{ matrix.os }}
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Download Godot
id: download-godot
uses: ./.github/actions/download-godot
with:
version: ${{ env.GODOT_REF }}
- name: Download Addon
uses: actions/download-artifact@v3
with:
name: ${{ matrix.platform }}
path: ${{ github.workspace }}/${{ env.LIBRARY_PATH }}/${{ matrix.platform }}
- name: Run Tests
uses: ./.github/actions/run-tests
with:
executable: ${{ steps.download-godot.outputs.executable }}
test-export:
needs: build-addon
name: Test Addon Export
strategy:
fail-fast: false
matrix:
platform: [linux, macos, windows]
include:
- platform: linux
os: ubuntu-latest
- platform: macos
os: macos-11
- platform: windows
os: windows-latest
runs-on: ${{ matrix.os }}
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Download Godot
id: download-godot
uses: ./.github/actions/download-godot
with:
version: ${{ env.GODOT_REF }}
- name: Download Addon
uses: actions/download-artifact@v3
with:
name: ${{ matrix.platform }}
path: ${{ github.workspace }}/${{ env.LIBRARY_PATH }}/${{ matrix.platform }}
- name: Export Tests
uses: ./.github/actions/export-tests
with:
executable: ${{ steps.download-godot.outputs.executable }}
godot-major: ${{ env.GODOT_MAJOR }}