-
Notifications
You must be signed in to change notification settings - Fork 0
148 lines (144 loc) · 4.95 KB
/
check-pr-engine-export-template-debug.yaml
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
name: Check PR - Engine Export Template Debug
on: [pull_request]
env:
SCONS_CACHE_MSVC_CONFIG: true
GODOT_BASE_VERSION: 4.2.0
GODOT_BASE_BRANCH: 4.2.0
concurrency:
group: ci-${{github.actor}}-${{github.head_ref || github.run_number}}-${{github.ref}}-check-pr-engine-export-template-debug
cancel-in-progress: true
jobs:
build-export-debug:
strategy:
matrix:
name: [ Linux, MacOs-x64, MacOs-arm64, Windows, Android-armv7, Android-armv8, Android-x86_64, iOS ]
include:
# always use the oldest still supported LTS version of github actions. See: https://github.com/utopia-rise/godot-kotlin-jvm/issues/224
- name: Linux
os: ubuntu-20.04
platform: x11
arch: x86_64
output_folder: bin/
- name: MacOs-x64
os: macos-latest
platform: macos
arch: x86_64
output_folder: bin/
- name: MacOs-arm64
os: macos-latest
platform: macos
arch: arm64v8
output_folder: bin/
- name: Windows
os: windows-2019
platform: windows
arch: x86_64
output_folder: bin/
- name: Android-armv7
os: ubuntu-latest
platform: android
arch: armv7
output_folder: platform/android/java/lib/libs/debug/armeabi-v7a/
- name: Android-armv8
os: ubuntu-latest
platform: android
arch: arm64v8
output_folder: platform/android/java/lib/libs/debug/arm64-v8a/
- name: Android-x86_64
os: ubuntu-latest
platform: android
arch: x86_64
output_folder: platform/android/java/lib/libs/debug/x86_64/
- name: iOS
os: macos-latest
platform: ios
arch: arm64
output_folder: bin/
runs-on: ${{ matrix.os }}
steps:
- name: Clone Godot Engine
uses: actions/checkout@v2
with:
repository: godotengine/godot
ref: 4.2-stable
# TODO: remove once on godot 4.2.2 or newer!
- name: Cherry pick macos fix
run: |
git fetch -a
git config --global user.email "[email protected]"
git config --global user.name "Super Mario"
git cherry-pick a2c1c01941a3dec3e2a361d9dc21bb0390efcbaf
- name: Clone Godot Isometric Map module.
uses: actions/checkout@v2
with:
path: modules/isometric_maps
submodules: recursive
- name: Setup Godot dependencies
uses: ./.github/actions/godot-deps
- name: Fix scons version
run: |
python -m pip install scons==4.4.0
- name: Setup Vulkan SDK
if: matrix.platform == 'macos'
run: |
sh misc/scripts/install_vulkan_sdk_macos.sh
# Upload cache on completion and check it out now
- name: Setup Godot build cache
uses: ./.github/actions/godot-cache
with:
cache-name: ${{ github.job }}-${{ matrix.platform }}-${{ matrix.arch }}
- name: Set up JDK 11
if: matrix.platform == 'android'
uses: actions/setup-java@v1
with:
java-version: 11
- name: Setup Android SDK
if: matrix.platform == 'android'
uses: android-actions/setup-android@v2
- name: Get number of CPU cores
id: cpu-cores
uses: SimenB/github-actions-cpu-cores@v1
- name: Build debug export template
uses: ./.github/actions/godot-build
with:
sconsflags: arch=${{ matrix.arch }} -j${{ steps.cpu-cores.outputs.count }}
platform: ${{ matrix.platform }}
target: template_debug
- name: Upload android binary
if: matrix.platform == 'android'
uses: actions/upload-artifact@v3
with:
name: android-export-template_debug-binary-${{ matrix.arch }}
path: |
**/${{ matrix.output_folder }}
build-android-export-template:
needs: [ build-export-debug ]
strategy:
matrix:
os: [ ubuntu-latest ]
include:
- os: ubuntu-latest
java-version: 11
runs-on: ${{ matrix.os }}
steps:
- name: Clone Godot Engine
uses: actions/checkout@v2
with:
repository: godotengine/godot
ref: 4.2-stable
# TODO: remove once on godot 4.2.2 or newer!
- name: Cherry pick macos fix
run: |
git fetch -a
git config --global user.email "[email protected]"
git config --global user.name "Super Mario"
git cherry-pick a2c1c01941a3dec3e2a361d9dc21bb0390efcbaf
- name: Clone Godot Isometric Map module.
uses: actions/checkout@v2
with:
path: modules/isometric_maps
submodules: recursive
- name: Build android export template
uses: ./modules/isometric_maps/.github/actions/create-android-export-template
with:
target: template_debug