runner.yml 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. name: 🔗 GHA
  2. on: [push, pull_request, merge_group]
  3. concurrency:
  4. group: ci-${{ github.actor }}-${{ github.head_ref || github.run_number }}-${{ github.ref }}-runner
  5. cancel-in-progress: true
  6. jobs:
  7. # First stage: Only static checks, fast and prevent expensive builds from running.
  8. static-checks:
  9. if: '!vars.DISABLE_GODOT_CI'
  10. name: 📊 Static checks
  11. uses: ./.github/workflows/static_checks.yml
  12. # Second stage: Run all the builds and some of the tests.
  13. android-build:
  14. name: 🤖 Android
  15. needs: static-checks
  16. uses: ./.github/workflows/android_builds.yml
  17. ios-build:
  18. name: 🍏 iOS
  19. needs: static-checks
  20. uses: ./.github/workflows/ios_builds.yml
  21. linux-build:
  22. name: 🐧 Linux
  23. needs: static-checks
  24. uses: ./.github/workflows/linux_builds.yml
  25. macos-build:
  26. name: 🍎 macOS
  27. needs: static-checks
  28. uses: ./.github/workflows/macos_builds.yml
  29. windows-build:
  30. name: 🏁 Windows
  31. needs: static-checks
  32. uses: ./.github/workflows/windows_builds.yml
  33. web-build:
  34. name: 🌐 Web
  35. needs: static-checks
  36. uses: ./.github/workflows/web_builds.yml
  37. # Third stage: Run auxiliary tests using build artifacts from previous jobs.
  38. # Can be turned off for PRs that intentionally break compat with godot-cpp,
  39. # until both the upstream PR and the matching godot-cpp changes are merged.
  40. godot-cpp-test:
  41. name: 🪲 Godot CPP
  42. # This can be changed to depend on another platform, if we decide to use it for
  43. # godot-cpp instead. Make sure to move the .github/actions/godot-api-dump step
  44. # appropriately.
  45. needs: linux-build
  46. uses: ./.github/workflows/godot_cpp_test.yml