Skip to content

Commit df26008

Browse files
committed
Added pinned editor installer files and execution for greater controll over used software
1 parent 6d6277b commit df26008

14 files changed

+128
-0
lines changed

.yamato/code-coverage.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ code_coverage_{{ platform.name }}_{{ editor }}:
3939
variables:
4040
UTR_VERSION: {{ utr_version }}
4141
commands:
42+
{% if platform.name == "win" %}
43+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
44+
{% elif platform.name == "mac" %}
45+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
46+
{% elif platform.name == "ubuntu" %}
47+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
48+
{% endif %}
4249
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor {% if platform.name == "mac" %} --arch arm64 {% endif %} # For macOS we use ARM64 models
4350
- upm-pvp create-test-project test-project --packages "upm-ci~/packages/*.tgz" --unity .Editor
4451
- UnifiedTestRunner --suite=editor --suite=playmode --editor-location=.Editor --testproject=test-project --enable-code-coverage coverage-upload-options="reportsDir:$PWD/test-results/CoverageResults;name:NGOv2_{{ platform.name }}_{{ editor }};flags:NGOv2_{{ platform.name }}_{{ editor }};verbose" --coverage-results-path=$PWD/test-results/CoverageResults --coverage-options="generateHtmlReport;generateAdditionalMetrics;assemblyFilters:+Unity.Netcode.Editor,+Unity.Netcode.Runtime" --extra-editor-arg=--burst-disable-compilation --timeout={{ test_timeout }} --rerun-strategy=Test --retry={{ num_test_retries }} --clean-library-on-rerun --artifacts-path=test-results

.yamato/console-standalone-test.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ console_standalone_build_{{ project.name }}_{{ platform.name }}_{{ editor }}:
5050
model: {{ platform.model }} # This is set only in platforms where we want non-default model to use (more information in project.metafile)
5151
{% endif %}
5252
commands:
53+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
5354
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor -c il2cpp -c {{ platform.name }}
5455
- UnifiedTestRunner --testproject={{ project.path }} --architecture={% if platform.name == "switch" %}arm64{% else %}x64{% endif %} --scripting-backend=il2cpp --suite=playmode --platform={{ platform.standalone }} --editor-location=.Editor --artifacts-path=artifacts --player-save-path=build/players --testfilter="Unity.Netcode.RuntimeTests.*" --extra-editor-arg=-batchmode --extra-editor-arg=-nographics --reruncount=1 --clean-library-on-rerun --build-only --timeout={{ test_timeout}}
5556
variables:
@@ -89,6 +90,7 @@ console_standalone_test_{{ project.name }}_{{ platform.name }}_{{ editor }}:
8990
model: {{ platform.model }} # This is set only in platforms where we want non-default model to use (more information in project.metafile)
9091
{% endif %}
9192
commands:
93+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
9294
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor -c il2cpp -c {{ platform.name }}
9395
- UnifiedTestRunner --suite=playmode --testproject={{ project.path }} --editor-location=.Editor --artifacts-path=test-results --player-load-path=build/players --fail-on-assert --rerun-strategy=Test --retry={{ num_test_retries }} --clean-library-on-rerun --timeout={{ test_timeout }}
9496
variables:

.yamato/desktop-standalone-tests.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,13 @@ desktop_standalone_build_{{ project.name }}_{{ platform.name }}_{{ backend }}_{{
4343
model: {{ platform.model }} # This is set only in platforms where we want non-default model to use (more information in project.metafile)
4444
{% endif %}
4545
commands:
46+
{% if platform.name == "win" %}
47+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
48+
{% elif platform.name == "mac" %}
49+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
50+
{% elif platform.name == "ubuntu" %}
51+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
52+
{% endif %}
4653
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor {% if backend == "il2cpp" %} -c il2cpp {% endif %}
4754
- UnifiedTestRunner --suite=playmode --platform={{ platform.standalone }} --editor-location=.Editor --testproject={{ project.path }} --scripting-backend={{ backend }} --testfilter="Unity.Netcode.RuntimeTests.*" --player-save-path=build/players --artifacts-path=artifacts --extra-editor-arg=-batchmode --extra-editor-arg=-nographics --reruncount=1 --clean-library-on-rerun --build-only --timeout={{ test_timeout }}
4855
artifacts:
@@ -79,6 +86,13 @@ desktop_standalone_test_{{ project.name }}_{{ platform.name }}_{{ backend }}_{{
7986
{% endif %}
8087

8188
commands:
89+
{% if platform.name == "win" %}
90+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
91+
{% elif platform.name == "mac" %}
92+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
93+
{% elif platform.name == "ubuntu" %}
94+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
95+
{% endif %}
8296
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor {% if backend == "il2cpp" %} -c il2cpp {% endif %} {% if platform.name == "mac" %} --arch arm64 {% endif %} # For macOS we use ARM64 models
8397
- UnifiedTestRunner --suite=playmode --player-load-path=build/players --artifacts-path=test-results --testproject={{ project.path }} --editor-location=.Editor --playergraphicsapi=Null --fail-on-assert --rerun-strategy=Test --retry={{ num_test_retries }} --clean-library-on-rerun --timeout={{ test_timeout }}
8498
artifacts:

.yamato/mobile-standalone-test.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,11 @@ mobile_standalone_build_{{ project.name }}_{{ platform.name }}_{{ editor }}:
5454
variables:
5555
UNITY_HANDLEUIINTERRUPTIONS: 1
5656
commands:
57+
{% if platform.base == "win" %}
58+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
59+
{% elif platform.base == "mac" %}
60+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
61+
{% endif %}
5762
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor -c il2cpp {% if platform.base == "mac" %} -c ios {% else %} -c android {% endif %}
5863
- UnifiedTestRunner --suite=playmode --platform={{ platform.standalone }} --testproject={{ project.path }} --architecture={{ platform.architecture }} --scripting-backend=il2cpp --editor-location=.Editor --artifacts-path=artifacts --testfilter="Unity.Netcode.RuntimeTests.*" --player-save-path=build/players --extra-editor-arg=-batchmode --extra-editor-arg=-nographics --reruncount=1 --clean-library-on-rerun --build-only --timeout={{ test_timeout }}
5964
artifacts:
@@ -83,6 +88,11 @@ mobile_standalone_test_{{ project.name }}_{{ platform.name }}_{{ editor }}:
8388
{% endif %}
8489
commands:
8590
# Installing editor. We still need the editor to run tests on standalone build and for that the Editor is required
91+
{% if platform.base == "win" %}
92+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
93+
{% elif platform.base == "mac" %}
94+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
95+
{% endif %}
8696
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor -c il2cpp {% if platform.base == "mac" %} -c ios {% else %} -c android {% endif %}
8797

8898
{% if platform.standalone == "Android" %}

.yamato/package-pack.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,13 @@ package_pack_-_ngo_{{ platform.name }}:
4242
variables:
4343
XRAY_PROFILE: "gold ./pvpExceptions.json"
4444
commands:
45+
{% if platform.name == "win" %}
46+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
47+
{% elif platform.name == "mac" %}
48+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
49+
{% elif platform.name == "ubuntu" %}
50+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
51+
{% endif %}
4552
- upm-pvp pack "com.unity.netcode.gameobjects" --output upm-ci~/packages
4653
- upm-pvp xray --packages "upm-ci~/packages/com.unity.netcode.gameobjects*.tgz" --results pvp-results
4754
- upm-pvp require {% if platform.name == "win" %}"%XRAY_PROFILE%"{% else %}"$XRAY_PROFILE"{% endif %} --results pvp-results --allow-missing

.yamato/package-tests.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ package_test_-_ngo_{{ editor }}_{{ platform.name }}:
3939
XRAY_PROFILE: "gold ./pvpExceptions.json"
4040
UNITY_EXT_LOGGING: 1
4141
commands:
42+
{% if platform.name == "win" %}
43+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
44+
{% elif platform.name == "mac" %}
45+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
46+
{% elif platform.name == "ubuntu" %}
47+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
48+
{% endif %}
4249
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor {% if platform.name == "mac" %} --arch arm64 {% endif %} # For macOS we use ARM64 models.
4350

4451
# Validate PVP checks for package.

.yamato/performance-tests.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,13 @@ performance_editor_tests_-_NGO_{{ platform.name }}_{{ editor }}_no_data_reportin
3535
model: {{ platform.model }} # This is set only in platforms where we want non-default model to use (more information in project.metafile)
3636
{% endif %}
3737
commands:
38+
{% if platform.name == "win" %}
39+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
40+
{% elif platform.name == "mac" %}
41+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
42+
{% elif platform.name == "ubuntu" %}
43+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
44+
{% endif %}
3845
- unity-downloader-cli -u {{ editor }} -c Editor --wait {% if platform.name == "mac" %} --arch arm64 {% endif %} # For macOS we use ARM64 models. Installing basic editor
3946
- UnifiedTestRunner --suite=editor --suite=playmode --testproject={{ project.path }} --editor-location=.Editor --timeout=3600 --artifacts-path=artifacts --extra-editor-arg=-assemblyNames --extra-editor-arg=Unity.NetCode.* --extra-editor-arg=-testCategory --extra-editor-arg=Performance --extra-editor-arg=-enablePackageManagerTraces --rerun-strategy=Test --retry={{ num_test_retries }} --clean-library-on-rerun --dontreportperformancedata
4047
# TODO: when performance tests will be present we need to add actuall execution of this test

.yamato/project-builders/project-builders.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ build_{{ netcodeProject[0] }}_project:
3232
PLATFORM_WIN64_MAC_ANDROID: win64
3333
SAMPLE_BRANCH: {{ netcodeProject[1].defaultBranch }}
3434
commands:
35+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
3536
# Validate inputs passed via Yamato variables
3637
- python Tools/scripts/BuildAutomation/validate_params.py
3738
- echo Building {{ netcodeProject[0] }} project from branch %SAMPLE_BRANCH% with Unity version of %UNITY_VERSION%, Scripting backend %SCRIPTING_BACKEND_IL2CPP_MONO%, Burst %BURST_ON_OFF% for platform %PLATFORM_WIN64_MAC_ANDROID%

.yamato/project-tests.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,13 @@ test_{{ project.name }}_{{ platform.name }}_{{ editor }}:
3939
variables:
4040
UTR_VERSION: {{ utr_version }}
4141
commands:
42+
{% if platform.name == "win" %}
43+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
44+
{% elif platform.name == "mac" %}
45+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
46+
{% elif platform.name == "ubuntu" %}
47+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
48+
{% endif %}
4249
- unity-downloader-cli --fast --wait -u {{ editor }} -c Editor {% if platform.name == "mac" %} --arch arm64 {% endif %} # For macOS we use ARM64 models. Installing basic editor for tests execution
4350
- UnifiedTestRunner --testproject={{ project.path }} --suite=editor --suite=playmode --artifacts-path=test-results --editor-location=.Editor --rerun-strategy=Test --retry={{ num_test_retries }} --clean-library-on-rerun --timeout={{ test_timeout }}
4451
artifacts:

.yamato/project-updated-dependencies-test.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,13 @@ updated-dependencies_{{ project.name }}_NGO_{{ platform.name }}_{{ editor }}:
3535
model: {{ platform.model }} # This is set only in platforms where we want non-default model to use (more information in project.metafile)
3636
{% endif %}
3737
commands:
38+
{% if platform.name == "win" %}
39+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
40+
{% elif platform.name == "mac" %}
41+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
42+
{% elif platform.name == "ubuntu" %}
43+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
44+
{% endif %}
3845
- npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm # upm-ci is not preinstalled on the image so we need to download it
3946
- upm-ci project test -u {{ editor }} --project-path {{ project.path }} --type updated-dependencies-tests --package-filter com.unity.netcode.gameobjects
4047
artifacts:
@@ -59,6 +66,13 @@ project_pack_-_{{ project.name }}_{{ platform.name }}:
5966
image: {{ platform.image }}
6067
flavor: {{ platform.flavor }}
6168
commands:
69+
{% if platform.name == "win" %}
70+
- %GSUDO% pinned-package-installer install -c Tools/CI/ppi-windows.yml
71+
{% elif platform.name == "mac" %}
72+
- pinned-package-installer install -c Tools/CI/ppi-macos.yml
73+
{% elif platform.name == "ubuntu" %}
74+
- pinned-package-installer install -c Tools/CI/ppi-ubuntu.yml
75+
{% endif %}
6276
- npm install upm-ci-utils@stable -g --registry https://artifactory.prd.cds.internal.unity3d.com/artifactory/api/npm/upm-npm # upm-ci is not preinstalled on the image so we need to download it
6377
- upm-ci project pack --project-path {{ project.path }}
6478
artifacts:

0 commit comments

Comments
 (0)