{% metadata_file .yamato/package.metafile -%} # This job emulates a package verification. # UnityEditorTests.TestEditorTestsLinuxEditorIsolatedPackagesVerified1804 # - lin_18.04_bokken # UnityEditorTests.TestEditorTestsMacEditorIsolatedPackagesVerified1014 # - mac_test_10.14 # UnityEditorTests.TestEditorTestsWindowsEditorIsolatedPackagesVerified # - win10_test # UnityIntegrationTests.TestIntegrationTestsiOSiPhoneSE # - mac_iphone_se # UnityPlaymodeTests.TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1604 # - lin_test_ubuntu16.04 # UnityPlaymodeTests.TestPlaymodeTestsMacEditorIsolatedPackagesVerified1014 # - mac_test_10.14 # UnityPlaymodeTests.TestPlaymodeTestsWindowsEditorIsolatedPackagesVerified # - win10_test # UnityEditorTests.TestEditorTestsLinuxEditorIsolatedPackagesVerified1604 # - lin_test_ubuntu16.04 # UnityEditorTests.TestEditorTestsMacEditorIsolatedPackagesVerified # - mac_test_10.13 platforms: - name: Ubuntu 18.04 agent: lin_18.04_bokken type: Unity::VM image: katana-to-yamato/desktop-ubuntu-18.04-desktop-katana-git:v1.8-auto flavor: b1.large group: linux - name: macOS 10.14 agent: mac_test_10.14 type: Unity::VM::osx image: katana-to-yamato/automation-tooling-macos-10.14-katana-git:v1.9-auto flavor: m1.mac group: macos - name: Windows 10 agent: win10_test type: Unity::VM image: katana-to-yamato/test-platform-win10-katana-git:v1.9-auto flavor: b1.large group: windows - name: iOS agent: mac_iphone_se type: Unity::mobile::iPhone image: katana-to-yamato/mobile-ios-macos-11-katana-se-git:v1.4-auto flavor: m1.mac group: ios - name: Ubuntu 16.04 agent: lin_test_ubuntu16.04 type: Unity::VM image: katana-to-yamato/test-platform-ubuntu16.04-katana-git:v1.9-auto flavor: b1.large group: linux - name: macOS 10.13 agent: mac_test_10.13 type: Unity::VM::osx image: katana-to-yamato/test-platform-macos-10.13-katana-git:v1.10-auto flavor: m1.mac group: macos tests: - name: Editor Tests on Ubuntu 18.04 id: TestEditorTestsLinuxEditorIsolatedPackagesVerified1804 suite: editor agent: lin_18.04_bokken - name: Editor Tests on macOS 10.14 id: TestEditorTestsMacEditorIsolatedPackagesVerified1014 suite: editor agent: mac_test_10.14 - name: Editor Tests on Windows 10 id: TestEditorTestsWindowsEditorIsolatedPackagesVerified suite: editor agent: win10_test - name: Integration Tests on iPhone SE id: TestIntegrationTestsiOSiPhoneSE suite: playmode agent: mac_iphone_se - name: Playmode Tests on Ubuntu 16.04 id: TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1604 suite: playmode agent: lin_test_ubuntu16.04 - name: Playmode Tests on Ubuntu 18.04 id: TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1804 suite: playmode agent: lin_18.04_bokken - name: Playmode Tests on macOS 10.04 id: TestPlaymodeTestsMacEditorIsolatedPackagesVerified1014 suite: playmode agent: mac_test_10.14 - name: Playmode Tests on Windows 10 id: TestPlaymodeTestsWindowsEditorIsolatedPackagesVerified suite: playmode agent: win10_test - name: Editor Tests on Ubuntu 16.04 id: TestEditorTestsLinuxEditorIsolatedPackagesVerified1604 suite: editor agent: lin_test_ubuntu16.04 - name: Editor Tests on macOS 10.13 id: TestEditorTestsMacEditorIsolatedPackagesVerified suite: editor agent: mac_test_10.13 - name: Playmode Tests on macOS 10.13 id: TestPlaymodeTestsMacEditorIsolatedPackagesVerified suite: playmode agent: mac_test_10.13 # todo:: APV requires that the package works well on Ubuntu 16.04. However, # unity-downloader-cli doesn't support Ubuntu 16.04. Therefore, there is no way # to install Unity Editor to the test environments. # Added tests on Ubuntu 18.04 instead of Ubuntu 16.04 for the reasons above. test_editors: - version: trunk tests: - TestEditorTestsLinuxEditorIsolatedPackagesVerified1804 - TestEditorTestsMacEditorIsolatedPackagesVerified1014 - TestEditorTestsWindowsEditorIsolatedPackagesVerified - TestIntegrationTestsiOSiPhoneSE - TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1804 - TestPlaymodeTestsMacEditorIsolatedPackagesVerified1014 - TestPlaymodeTestsWindowsEditorIsolatedPackagesVerified - version: 2022.1 tests: - TestEditorTestsLinuxEditorIsolatedPackagesVerified1804 - TestEditorTestsMacEditorIsolatedPackagesVerified - TestEditorTestsWindowsEditorIsolatedPackagesVerified - TestIntegrationTestsiOSiPhoneSE - TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1804 - TestPlaymodeTestsMacEditorIsolatedPackagesVerified - TestPlaymodeTestsWindowsEditorIsolatedPackagesVerified - version: 2021.3 tests: - TestEditorTestsLinuxEditorIsolatedPackagesVerified1804 - TestEditorTestsMacEditorIsolatedPackagesVerified - TestEditorTestsWindowsEditorIsolatedPackagesVerified - TestIntegrationTestsiOSiPhoneSE - TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1804 - TestPlaymodeTestsMacEditorIsolatedPackagesVerified - TestPlaymodeTestsWindowsEditorIsolatedPackagesVerified - version: 2020.3 tests: - TestEditorTestsLinuxEditorIsolatedPackagesVerified1804 - TestEditorTestsMacEditorIsolatedPackagesVerified - TestEditorTestsWindowsEditorIsolatedPackagesVerified - TestIntegrationTestsiOSiPhoneSE - TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1804 - TestPlaymodeTestsMacEditorIsolatedPackagesVerified - TestPlaymodeTestsWindowsEditorIsolatedPackagesVerified - version: 2019.4 tests: - TestEditorTestsLinuxEditorIsolatedPackagesVerified1804 - TestEditorTestsMacEditorIsolatedPackagesVerified - TestEditorTestsWindowsEditorIsolatedPackagesVerified - TestPlaymodeTestsLinuxEditorIsolatedPackagesVerified1804 - TestPlaymodeTestsMacEditorIsolatedPackagesVerified - TestPlaymodeTestsWindowsEditorIsolatedPackagesVerified --- {% for editor in test_editors %} verificationtest_{{ editor.version }}: name : Verification Test on Unity Editor {{ editor.version }} dependencies: {% for id in editor.tests %} - .yamato/verification.yml#verificationtest_{{ id }}_{{ editor.version }} {% endfor %} {% endfor %} {% for editor in test_editors %} {% for id in editor.tests %} {% assign test = tests | where: "id", id | first %} {% assign platform = platforms | where: "agent", test.agent | first %} verificationtest_{{ id }}_{{ editor.version }}: name : Verification Test {{ test.name }} on Unity Editor {{ editor.version }} agent: type: {{ platform.type }} image: {{ platform.image }} flavor: {{ platform.flavor }} commands: {% if platform.group == "linux" %} #install utr - curl -s https://artifactory.prd.it.unity3d.com/artifactory/unity-tools/utr-standalone/utr --output utr - chmod a+x ./utr # install unity-downloader-cli - curl -L https://artifactory.prd.it.unity3d.com/artifactory/api/gpg/key/public | sudo apt-key add - - sudo sh -c "echo 'deb https://artifactory.prd.it.unity3d.com/artifactory/unity-apt-local bionic main' > /etc/apt/sources.list.d/unity.list" - sudo apt update - sudo apt install unity-downloader-cli -y - unity-downloader-cli -u {{ editor.version }} -c editor --fast --wait # run utr - ./utr --suite={{ test.suite }} --editor-location=.Editor --testproject=WebRTC~ --reruncount=2 --timeout=3600 {% elsif platform.group == "macos" %} #install utr - curl -s https://artifactory.prd.it.unity3d.com/artifactory/unity-tools/utr-standalone/utr --output utr; chmod a+x ./utr - chmod a+x ./utr # install unity-downloader-cli - pip3 install unity-downloader-cli --index-url https://artifactory.prd.it.unity3d.com/artifactory/api/pypi/pypi/simple - unity-downloader-cli -u {{ editor.version }} -c editor --fast --wait # run utr - ./utr --suite={{ test.suite }} --editor-location=.Editor --testproject=WebRTC~ --reruncount=2 --timeout=3600 {% elsif platform.group == "windows" %} #install utr - curl -s https://artifactory.prd.it.unity3d.com/artifactory/unity-tools/utr-standalone/utr.bat > utr.bat # install unity-downloader-cli - pip install unity-downloader-cli --index-url https://artifactory.prd.it.unity3d.com/artifactory/api/pypi/pypi/simple - unity-downloader-cli -u {{ editor.version }} -c editor --fast --wait # run utr - git config --local core.symlinks true - gsudo git checkout -f --detach FETCH_HEAD - utr --suite={{ test.suite }} --editor-location=.Editor --testproject=./WebRTC~ --reruncount=2 --timeout=3600 {% elsif platform.group == "ios" %} #install utr - curl -s https://artifactory.prd.it.unity3d.com/artifactory/unity-tools/utr-standalone/utr --output utr; chmod a+x ./utr - chmod a+x ./utr # install unity-downloader-cli - pip3 install unity-downloader-cli --index-url https://artifactory.prd.it.unity3d.com/artifactory/api/pypi/pypi/simple - unity-downloader-cli -u {{ editor.version }} -c editor -c iOS --fast --wait # run utr - ./utr --suite={{ test.suite }} --platform=iOS --build-only --editor-location=.Editor --testproject=WebRTC~ --player-save-path=players --reruncount=2 --timeout=3600 - ./utr --suite={{ test.suite }} --platform=iOS --platform=iOS --player-load-path=players --reruncount=2 --timeout=3600 {% endif %} artifacts: {{ id }}_{{ editor.version }}_results: paths: - "upm-ci~/test-results/**/*" # dependencies: # - .yamato/upm-ci-webrtc-packages.yml#pack_webrtc {% endfor %} {% endfor %}