-
-
Notifications
You must be signed in to change notification settings - Fork 44
100 lines (90 loc) · 2.36 KB
/
runner.yml
File metadata and controls
100 lines (90 loc) · 2.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
name: 🔗 GHA
# Only run pipeline on open pull_requests and main + releases
# we don't need it on every push and some parameters are not available for push only
on:
pull_request:
push:
branches:
- "main"
release:
types: [ published ]
concurrency:
group: ${{ github.workflow }}|${{ github.ref_name }}
cancel-in-progress: true
jobs:
environment:
name: 🌳 Set Environment
uses: ./.github/workflows/misc_environment.yml
lint:
name: 🫷 Lint
uses: ./.github/workflows/misc_lint.yml
changesets:
if: github.event_name != 'release' && github.event_name != 'pull_request'
permissions:
contents: write
pull-requests: write
name: 🔄 Changesets
uses: ./.github/workflows/misc_changesets.yml
engine-version-build:
name: ⚙️ Build Godot Version with GodotJS
needs: [environment, lint]
strategy:
fail-fast: false
matrix:
include:
- version: 4.4
version_ref: 4.4
- version: 4.5
version_ref: 4.5
uses: ./.github/workflows/build_engine_version.yml
with:
version: ${{ matrix.version }}
version_ref: ${{ matrix.version_ref }}
release: ${{ github.event_name == 'release' }}
test-project:
name: 🔬 Test project
needs: [engine-version-build]
uses: ./.github/workflows/test_project.yml
strategy:
fail-fast: false
matrix:
include:
- version: 4.4
- version: 4.5
with:
version: ${{ matrix.version }}
builds-done:
name: 🏁 Builds Done
needs: [test-project]
runs-on: ubuntu-latest
steps:
- name: 🏁 Check if all builds are done
run: |
echo "🏁 All builds done"
shell: bash
release:
name: 🦅 Release
needs: [changesets, builds-done]
if: needs.changesets.outputs.publish == 'true'
permissions:
contents: write
uses: ./.github/workflows/misc_release.yml
secrets: inherit
with:
versions: '4.4, 4.5'
upload-assets:
name: 📁 Upload Assets
needs: [builds-done]
if: github.event_name == 'release'
permissions:
contents: write
uses: ./.github/workflows/misc_upload_assets.yml
secrets: inherit
strategy:
fail-fast: true
matrix:
include:
- version: 4.4
- version: 4.5
with:
version: ${{ matrix.version }}