trigger_build #127
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: 🔗 GHA | |
on: | |
repository_dispatch: | |
types: [trigger_build] | |
env: | |
BASE_NAME: Blazium_v | |
GODOT_BASE_BRANCH: blazium-dev | |
concurrency: | |
group: ci-${{ github.actor }}-${{ github.event.client_payload.type || 'nightly' }}-runner | |
cancel-in-progress: true | |
jobs: | |
get-latest-sha: | |
name: 🔍 Get Latest SHA | |
runs-on: ubuntu-latest | |
outputs: | |
build_sha: ${{ steps.get_sha.outputs.sha }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
repository: blazium-engine/blazium | |
ref: ${{ github.event.client_payload.branch || env.GODOT_BASE_BRANCH }} | |
fetch-depth: 1 | |
- name: Get Latest Commit SHA | |
id: get_sha | |
run: echo "sha=$(git rev-parse HEAD)" >> $GITHUB_OUTPUT | |
static-checks: | |
name: 📊 Static checks | |
needs: get-latest-sha | |
uses: ./.github/workflows/static_checks.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
web-build: | |
name: 🌐 Web | |
needs: [get-latest-sha, static-checks] | |
if: contains(github.event.client_payload.build, 'web') | |
uses: ./.github/workflows/web_builds.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
monoglue-build: | |
name: Mono Glue | |
needs: [get-latest-sha, static-checks] | |
if: contains(github.event.client_payload.build, 'monoglue') | |
uses: ./.github/workflows/mono_glue_build.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
android-build: | |
name: 🤖 Android | |
needs: [monoglue-build] | |
if: contains(github.event.client_payload.build, 'android') | |
uses: ./.github/workflows/android_builds.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
ios-build: | |
name: 🍏 iOS | |
needs: [monoglue-build] | |
if: contains(github.event.client_payload.build, 'ios') | |
uses: ./.github/workflows/ios_builds.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
linux-build: | |
name: 🐧 Linux | |
needs: [monoglue-build] | |
if: contains(github.event.client_payload.build, 'linux') | |
uses: ./.github/workflows/linux_builds.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
macos-build: | |
name: 🍎 macOS | |
needs: [monoglue-build] | |
if: contains(github.event.client_payload.build, 'macos') | |
uses: ./.github/workflows/macos_builds.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
windows-build: | |
name: 🏁 Windows | |
needs: [monoglue-build] | |
if: contains(github.event.client_payload.build, 'windows') | |
uses: ./.github/workflows/windows_builds.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
deploy: | |
name: Deploy | |
needs: [monoglue-build, windows-build, macos-build, linux-build, android-build, ios-build] | |
if: always() | |
uses: ./.github/workflows/deploy_all.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
monoglue-build: ${{ needs.monoglue-build.result }} | |
windows-build: ${{ needs.windows-build.result }} | |
macos-build: ${{ needs.macos-build.result }} | |
linux-build: ${{ needs.linux-build.result }} | |
android-build: ${{ needs.android-build.result }} | |
ios-build: ${{ needs.ios-build.result }} | |
cleanup: | |
name: Clean Up | |
needs: [monoglue-build, windows-build, macos-build, linux-build, android-build, ios-build] | |
if: always() && (failure() || cancelled()) | |
uses: ./.github/workflows/clean_up.yml | |
secrets: inherit | |
with: | |
build_sha: ${{ needs.get-latest-sha.outputs.build_sha }} | |
runner_id: ${{ github.run_id }} | |
monoglue-build: ${{ needs.monoglue-build.result }} | |
windows-build: ${{ needs.windows-build.result }} | |
macos-build: ${{ needs.macos-build.result }} | |
linux-build: ${{ needs.linux-build.result }} | |
android-build: ${{ needs.android-build.result }} | |
ios-build: ${{ needs.ios-build.result }} |