Skip to content

Commit 215dda2

Browse files
ci: [Backport] NGO CI update and rewrite [1.X] (#3193) (#3283)
* build: NGO CI update and rewrite [2.X] (#3193) * Refactor of CI setup, jobs and triggers * Disabling some tests which failing on mobile devices * Setting up Renovate bot configuration (same as already present in develop branch) * Added pvpExceptions file --------- Co-authored-by: NoelStephensUnity <[email protected]> * Updated pvpExceptions file and moved it to proper location * Added pvpExceptions file into package folder * Updated editor coverage * Updated pvpExceptions meta file * Corrected pvpExceptions meta * Fixed Standard check error saying "'NetworkDriver.RemoteEndPoint(NetworkConnection)' is obsolete: 'RemoteEndPoint has been renamed to GetRemoteEndpoint. (UnityUpgradable) -> GetRemoteEndpoint(*)'" * Revert "Fixed Standard check error saying "'NetworkDriver.RemoteEndPoint(NetworkConnection)' is obsolete: 'RemoteEndPoint has been renamed to GetRemoteEndpoint. (UnityUpgradable) -> GetRemoteEndpoint(*)'"" This reverts commit 7ccdd89. * fix NGO v1.x compatibility for UTP v2.x * fix Minor adjustment for the legacy NetworkEndPoint name. * fix More UTP v2x related (collections etc.) defines required. * fix Missed one of the files * Corrected trigger branch for nightly and weekly jobs * Added testing coverage on minimal supported editor (2021.3) * Corrected typo in runAll configurtation * Corrected platform name in webgl definition * Added missing tests coverage for project-updated-dependencies * Corrected coverage * update Updating some integration tests and some additional areas that were problematic to IL2CPP integration tests. * test - fix This resolves the trunk failures due to updates in collections. * Changed PR trigger to use mono for 2021 build * Added libssl install step * Updated libssl version * Changed build for 2021.3 editor to win --------- Co-authored-by: NoelStephensUnity <[email protected]>
1 parent 6af906a commit 215dda2

39 files changed

+2202
-3743
lines changed

.github/renovate.json5

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"baseBranches": ["develop", "develop-2.0.0"],
33
"dependencyDashboard": true,
4-
4+
55
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
66
"extends": [
77
"local>Unity-Technologies/unity-renovate-config"
@@ -15,6 +15,7 @@
1515
"**/*~/**"
1616
],
1717
"packageRules": [
18+
1819
// Run unity-upm-project and unity-upm-package only on weekends to reduce PR noise
1920
// Also ensure dependencies won't be downgraded when they don't exist in the public repositories
2021
{

.yamato/_run-all.yml

Lines changed: 181 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -1,161 +1,241 @@
11
{% metadata_file .yamato/project.metafile %}
22
---
3-
run_all_tests:
4-
name: Run All Package and Project Tests
5-
dependencies:
6-
# Pull in package and validate jobs through the badges job
7-
- .yamato/_triggers.yml#badges_test_trigger
8-
- .yamato/mobile-build-and-test.yml#run_{{ projects.first.name }}_tests_{{ mobile_validation_editor }}_iOS
9-
- .yamato/mobile-build-and-test.yml#run_{{ projects.first.name }}_tests_{{ mobile_validation_editor }}_android
10-
# - .yamato/_run-all.yml#all_project_tests_standalone
11-
{% for project in projects -%}
12-
{% if project.name == "testproject" -%}
13-
{% for editor in project.test_editors -%}
14-
- .yamato/webgl-build.yml#build_{{ project.name }}_tests_{{ editor }}_webgl
3+
4+
# Runs all package tests
5+
run_all_package_tests:
6+
name: Run All Package Tests
7+
dependencies:
8+
{% for platform in test_platforms.desktop -%}
9+
{% for editor in validation_editors.all -%}
10+
- .yamato/package-tests.yml#package_test_-_ngo_{{ editor }}_{{ platform.name }}
1511
{% endfor -%}
16-
{% endif -%}
1712
{% endfor -%}
1813

19-
{% for platform in test_platforms -%}
20-
{% for project in projects -%}
21-
{% for editor in project.test_editors -%}
22-
{% if editor != "trunk" -%}
23-
{% for package in project.packages -%}
24-
- .yamato/package-tests.yml#test_{{ project.name}}_{{ package.name }}_{{ editor }}_{{ platform.name }}
14+
15+
# Runs all package tests on trunk editor
16+
run_all_package_tests_trunk:
17+
name: Run All Package Tests [Trunk only]
18+
dependencies:
19+
{% for platform in test_platforms.desktop -%}
20+
{% for editor in validation_editors.default -%}
21+
- .yamato/package-tests.yml#package_test_-_ngo_{{ editor }}_{{ platform.name }}
2522
{% endfor -%}
26-
- .yamato/project-tests.yml#test_{{ project.name }}_{{ editor }}_{{ platform.name }}
27-
{% endif -%}
2823
{% endfor -%}
2924

30-
## Test minimal project with different versions of dependencies
31-
{% if project.name == "minimalproject" -%}
32-
{% for dependency in dependencies -%}
33-
{% for depeditor in dependency.test_editors -%}
34-
{% if depeditor != "trunk" -%}
35-
- .yamato/package-tests.yml#test_compatibility_{{ project.name }}_{{ project.packages.first.name }}_with_{{ dependency.name }}@{{ dependency.version }}_{{ depeditor }}_{{ platform.name }}
36-
{% endif -%}
25+
# Runs all package tests on mimimum supported editor (2021.3 in case of NGOv1.X)
26+
run_all_package_tests_2021:
27+
name: Run All Package Tests [2021.3]
28+
dependencies:
29+
{% for platform in test_platforms.desktop -%}
30+
- .yamato/package-tests.yml#package_test_-_ngo_trunk_{{ platform.name }}
31+
- .yamato/package-tests.yml#package_test_-_ngo_2021.3_{{ platform.name }}
3732
{% endfor -%}
33+
34+
35+
# Runs all projects tests
36+
run_all_project_tests:
37+
name: Run All Project Tests
38+
dependencies:
39+
{% for project in projects.all -%}
40+
{% if project.has_tests == "true" -%}
41+
{% for platform in test_platforms.desktop -%}
42+
{% for editor in validation_editors.all -%}
43+
- .yamato/project-tests.yml#test_{{ project.name }}_{{ platform.name }}_{{ editor }}
3844
{% endfor -%}
39-
{% endif -%}
4045
{% endfor -%}
46+
{% endif -%}
4147
{% endfor -%}
4248

43-
run_all_tests_trunk:
44-
name: Run All Package and Project Tests [Trunk]
49+
50+
# Runs all projects tests on trunk editor
51+
run_all_project_tests_trunk:
52+
name: Run All Project Tests [Trunk only]
4553
dependencies:
46-
{% for platform in test_platforms -%}
47-
{% for project in projects -%}
48-
{% for editor in project.test_editors -%}
49-
{% if editor == "trunk" -%}
50-
{% for package in project.packages -%}
51-
- .yamato/package-tests.yml#test_{{ project.name}}_{{ package.name }}_{{ editor }}_{{ platform.name }}
54+
{% for project in projects.all -%}
55+
{% if project.has_tests == "true" -%}
56+
{% for platform in test_platforms.desktop -%}
57+
{% for editor in validation_editors.default -%}
58+
- .yamato/project-tests.yml#test_{{ project.name }}_{{ platform.name }}_{{ editor }}
59+
{% endfor -%}
5260
{% endfor -%}
53-
- .yamato/project-tests.yml#test_{{ project.name }}_{{ editor }}_{{ platform.name }}
5461
{% endif -%}
5562
{% endfor -%}
5663

57-
## Test minimal project with different versions of dependencies on trunk
58-
{% if project.name == "minimalproject" -%}
59-
{% for dependency in dependencies -%}
60-
{% for depeditor in dependency.test_editors -%}
61-
{% if depeditor == "trunk" -%}
62-
- .yamato/package-tests.yml#test_compatibility_{{ project.name }}_{{ project.packages.first.name }}_with_{{ dependency.name }}@{{ dependency.version }}_{{ depeditor }}_{{ platform.name }}
64+
# Runs all projects tests on mimimum supported editor (2021.3 in case of NGOv1.X)
65+
run_all_project_tests_2021:
66+
name: Run All Project Tests [2021.3]
67+
dependencies:
68+
{% for project in projects.all -%}
69+
{% if project.has_tests == "true" -%}
70+
{% for platform in test_platforms.desktop -%}
71+
- .yamato/project-tests.yml#test_{{ project.name }}_{{ platform.name }}_trunk
72+
- .yamato/project-tests.yml#test_{{ project.name }}_{{ platform.name }}_2021.3
73+
{% endfor -%}
6374
{% endif -%}
6475
{% endfor -%}
76+
77+
78+
# Runs all project standards check
79+
run_all_projects_standards:
80+
name: Run All Projects Standards
81+
dependencies:
82+
{% for platform in test_platforms.default -%}
83+
{% for project in projects.all -%}
84+
{% for editor in validation_editors.default -%}
85+
- .yamato/project-standards.yml#standards_{{ platform.name }}_{{ project.name }}_{{ editor }}
6586
{% endfor -%}
66-
{% endif -%}
6787
{% endfor -%}
6888
{% endfor -%}
6989

70-
all_project_tests:
71-
name: Run All Project Tests
90+
91+
# Runs all WebGL builds
92+
run_all_webgl_builds:
93+
name: Run All WebGl Build
7294
dependencies:
73-
- .yamato/_triggers.yml#badges_test_trigger
74-
{% for platform in test_platforms -%}
75-
{% for project in projects -%}
76-
{% for editor in project.test_editors -%}
77-
- .yamato/project-tests.yml#test_{{ projects.first.name }}_{{ editor }}_{{ platform.name }}
95+
{% for project in projects.default -%}
96+
{% for platform in test_platforms.desktop -%}
97+
{% for editor in validation_editors.all -%}
98+
- .yamato/webgl-build.yml#webgl_build_{{ project.name }}_{{ platform.name }}_{{ editor }}
7899
{% endfor -%}
79100
{% endfor -%}
80101
{% endfor -%}
81102

82-
all_package_tests:
83-
name: Run All Package Tests
103+
104+
# Runs all WebGL builds on trunk editor
105+
run_all_webgl_builds_trunk:
106+
name: Run All WebGl Build [Trunk only]
84107
dependencies:
85-
- .yamato/_triggers.yml#badges_test_trigger
86-
{% for platform in test_platforms -%}
87-
{% for project in projects -%}
88-
{% for editor in project.test_editors -%}
89-
{% for package in project.packages -%}
90-
- .yamato/package-tests.yml#test_{{ project.name}}_{{ package.name }}_{{ editor }}_{{ platform.name }}
108+
{% for project in projects.default -%}
109+
{% for platform in test_platforms.desktop -%}
110+
{% for editor in validation_editors.default -%}
111+
- .yamato/webgl-build.yml#webgl_build_{{ project.name }}_{{ platform.name }}_{{ editor }}
112+
{% endfor -%}
91113
{% endfor -%}
92114
{% endfor -%}
115+
116+
# Runs all WebGL builds on 2021.3 editor
117+
run_all_webgl_builds_2021:
118+
name: Run All WebGl Build [2021.3]
119+
dependencies:
120+
{% for project in projects.default -%}
121+
{% for platform in test_platforms.desktop -%}
122+
- .yamato/webgl-build.yml#webgl_build_{{ project.name }}_{{ platform.name }}_trunk
123+
- .yamato/webgl-build.yml#webgl_build_{{ project.name }}_{{ platform.name }}_2021.3
93124
{% endfor -%}
94125
{% endfor -%}
95126

96-
# Test minimal project with different versions of dependencies
97-
all_compatibility_tests:
98-
name: Run All Compatibility Tests
127+
128+
# Runs all Desktop tests
129+
run_all_project_tests_desktop_standalone:
130+
name: Run All Standalone Tests - Desktop
99131
dependencies:
100-
{% for platform in test_platforms -%}
101-
{% for project in projects -%}
102-
{% if project.name == "minimalproject" -%}
103-
{% for dependency in dependencies -%}
104-
{% for editor in dependency.test_editors -%}
105-
- .yamato/package-tests.yml#test_compatibility_{{ project.name }}_{{ project.packages.first.name }}_with_{{ dependency.name }}@{{ dependency.version }}_{{ editor }}_{{ platform.name }}
132+
{% for project in projects.default -%}
133+
{% for platform in test_platforms.desktop -%}
134+
{% for editor in validation_editors.all -%}
135+
{% for backend in scripting_backends -%}
136+
- .yamato/desktop-standalone-tests.yml#desktop_standalone_test_{{ project.name }}_{{ platform.name }}_{{ backend }}_{{ editor }}
106137
{% endfor -%}
107138
{% endfor -%}
108-
{% endif -%}
109139
{% endfor -%}
110140
{% endfor -%}
111141

112-
all_singlenode_multiprocess_tests:
113-
name: Run All Multiprocess Tests - Single Node
142+
143+
# Runs all Desktop tests on trunk editor
144+
run_all_project_tests_desktop_standalone_trunk:
145+
name: Run All Standalone Tests - Desktop [Trunk only]
114146
dependencies:
115-
{% for platform in test_platforms -%}
116-
{% for project in projects -%}
117-
{% for editor in project.test_editors -%}
118-
{% if editor != "trunk" %}
119-
- .yamato/multiprocess-project-tests.yml#singlenode_multiprocess_test_testproject_{{ editor }}_{{ platform.name }}
120-
{% endif %}
147+
{% for project in projects.default -%}
148+
{% for platform in test_platforms.desktop -%}
149+
{% for editor in validation_editors.default -%}
150+
{% for backend in scripting_backends -%}
151+
- .yamato/desktop-standalone-tests.yml#desktop_standalone_test_{{ project.name }}_{{ platform.name }}_{{ backend }}_{{ editor }}
152+
{% endfor -%}
121153
{% endfor -%}
122154
{% endfor -%}
123155
{% endfor -%}
124156

125-
all_project_tests_standalone:
126-
name: Run All Project Tests - Standalone
157+
# Runs all Desktop tests on mimimum supported editor (2021.3 in case of NGOv1.X)
158+
run_all_project_tests_desktop_standalone_2021:
159+
name: Run All Standalone Tests - Desktop [2021.3]
127160
dependencies:
128-
{% for platform in test_platforms -%}
129-
{% for project in projects -%}
130-
{% if project.has_tests == "true" -%}
131-
{% for editor in project.test_editors -%}
161+
{% for project in projects.default -%}
162+
{% for platform in test_platforms.desktop -%}
132163
{% for backend in scripting_backends -%}
133-
- .yamato/standalone-project-tests.yml#standalone_tests_{{ project.name }}_{{ backend }}_{{ editor }}_{{ platform.name }}
164+
- .yamato/desktop-standalone-tests.yml#desktop_standalone_test_{{ project.name }}_{{ platform.name }}_{{ backend }}_trunk
165+
- .yamato/desktop-standalone-tests.yml#desktop_standalone_test_{{ project.name }}_{{ platform.name }}_{{ backend }}_2021.3
134166
{% endfor -%}
135167
{% endfor -%}
136-
{% endif -%}
168+
{% endfor -%}
169+
170+
# Runs all Mobile tests
171+
run_all_project_tests_mobile_standalone:
172+
name: Run All Standalone Tests - Mobile
173+
dependencies:
174+
{% for project in projects.default -%}
175+
{% for platform in test_platforms.mobile_test -%}
176+
{% for editor in validation_editors.all -%}
177+
- .yamato/mobile-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_{{ editor }}
178+
{% endfor -%}
137179
{% endfor -%}
138180
{% endfor -%}
139181

140-
all_project_tests_mobile:
141-
name: Run All Project Tests - Mobile
182+
183+
# Runs all Mobile tests on trunk editor
184+
run_all_project_tests_mobile_standalone_trunk:
185+
name: Run All Standalone Tests - Mobile [Trunk only]
142186
dependencies:
143-
{% for project in projects -%}
144-
{% if project.name == "testproject" -%}
145-
{% for editor in project.test_editors -%}
146-
- .yamato/mobile-build-and-test.yml#run_{{ project.name }}_tests_{{ editor }}_android
147-
- .yamato/mobile-build-and-test.yml#run_{{ project.name }}_tests_{{ editor }}_iOS
187+
{% for project in projects.default -%}
188+
{% for platform in test_platforms.mobile_test -%}
189+
{% for editor in validation_editors.default -%}
190+
- .yamato/mobile-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_{{ editor }}
191+
{% endfor -%}
148192
{% endfor -%}
149-
{% endif -%}
150193
{% endfor -%}
151194

152-
all_project_tests_webgl:
153-
name: Build All Project Tests - WebGL
195+
# Runs all Mobile tests on mimimum supported editor (2021.3 in case of NGOv1.X)
196+
run_all_project_tests_mobile_standalone_2021:
197+
name: Run All Standalone Tests - Mobile [2021.3]
154198
dependencies:
155-
{% for project in projects -%}
156-
{% if project.name == "testproject" -%}
157-
{% for editor in project.test_editors -%}
158-
- .yamato/webgl-build.yml#build_{{ project.name }}_tests_{{ editor }}_webgl
199+
{% for project in projects.default -%}
200+
{% for platform in test_platforms.mobile_test -%}
201+
- .yamato/mobile-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_trunk
202+
- .yamato/mobile-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_2021.3
203+
{% endfor -%}
204+
{% endfor -%}
205+
206+
207+
# Runs all Console tests
208+
run_all_project_tests_console_standalone:
209+
name: Run All Standalone Tests - Console
210+
dependencies:
211+
{% for project in projects.default -%}
212+
{% for platform in test_platforms.console_test -%}
213+
{% for editor in validation_editors.all -%}
214+
- .yamato/console-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_{{ editor }}
215+
{% endfor -%}
216+
{% endfor -%}
217+
{% endfor -%}
218+
219+
220+
# Runs all Console tests on trunk editor
221+
run_all_project_tests_console_standalone_trunk:
222+
name: Run All Standalone Tests - Console [Trunk only]
223+
dependencies:
224+
{% for project in projects.default -%}
225+
{% for platform in test_platforms.console_test -%}
226+
{% for editor in validation_editors.default -%}
227+
- .yamato/console-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_{{ editor }}
228+
{% endfor -%}
229+
{% endfor -%}
230+
{% endfor -%}
231+
232+
# Runs all Console tests on mimimum supported editor (2021.3 in case of NGOv1.X)
233+
run_all_project_tests_console_standalone_2021:
234+
name: Run All Standalone Tests - Console [2021.3]
235+
dependencies:
236+
{% for project in projects.default -%}
237+
{% for platform in test_platforms.console_test -%}
238+
- .yamato/console-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_trunk
239+
- .yamato/console-standalone-test.yml#run_{{ project.name }}_tests_{{ platform.name }}_2021.3
159240
{% endfor -%}
160-
{% endif -%}
161241
{% endfor -%}

0 commit comments

Comments
 (0)