Remove references to Maui Android testing as the testing for it has moved to the performance repo.
platforms:
- linux_x64
- # run mono and maui android scenarios
+ # run android scenarios
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
runtimeFlavor: mono
platforms:
- windows_x64
- variables:
- - name: mauiVersion
- value: $[ dependencies.Build_ios_arm64_release_MACiOSAndroidMauiNet7.outputs['getMauiVersion.mauiVersion'] ]
jobParameters:
testGroup: perf
runtimeType: AndroidMono
runKind: android_scenarios
runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
logicalmachine: 'perfpixel4a'
- additionalSetupParameters: "-MauiVersion $env:mauiVersion"
# run mono iOS scenarios and maui iOS scenarios
- template: /eng/pipelines/common/platform-matrix.yml
iOSLlvmBuild: True
additionalSetupParameters: "--mauiversion $(mauiVersion)"
- # run maui android scenarios for net6
- - template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/coreclr/templates/perf-job.yml
- buildConfig: release
- runtimeFlavor: mono
- platforms:
- - windows_x64
- variables:
- - name: mauiVersion
- value: $[ dependencies.Build_ios_arm64_release_MACiOSAndroidMauiNet6.outputs['getMauiVersion.mauiVersion'] ]
- jobParameters:
- testGroup: perf
- runtimeType: AndroidMobileNet6
- projectFile: android_scenarios_net6.proj
- runKind: android_scenarios_net6
- runJobTemplate: /eng/pipelines/coreclr/templates/run-scenarios-job.yml
- logicalmachine: 'perfpixel4a'
- additionalSetupParameters: "-MauiVersion $env:mauiVersion"
-
# run maui iOS scenarios for net6 (Maui doesn't need Llmv true build (for net6))
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
displayName: Build MAUI Android
workingDirectory: $(Build.SourcesDirectory)/MauiTesting
- - script: |
- set -x
- pwd
- git clone https://github.com/microsoft/dotnet-podcasts.git -b maui/perf --single-branch
- cd dotnet-podcasts
- cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.props.net6 ./Directory.Build.props
- cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.targets.net6 ./Directory.Build.targets
- displayName: Clone podcast app
- workingDirectory: $(Build.SourcesDirectory)
-
- - script: |
- set -x
- pwd
- chmod -R a+r .
- ../../../dotnet restore Microsoft.NetConf2021.Maui.csproj
- ../../../dotnet publish Microsoft.NetConf2021.Maui.csproj -bl:MauiPodcastAndroid.binlog -r android-arm64 --self-contained --no-restore -f net6.0-android -c Release
- mv ./bin/Release/net6.0-android/android-arm64/com.Microsoft.NetConf2021.Maui-Signed.apk $(Build.SourcesDirectory)/MauiTesting/MauiAndroidPodcast.apk
- displayName: Build MAUI Podcast Android
- workingDirectory: $(Build.SourcesDirectory)/dotnet-podcasts/src/Mobile
-
# This step pulls the product version from the used Microsoft.Maui.dll file properties and saves it for upload with the maui test counter.
# We pull from this file as we did not find another place to reliably get the version information pre or post build.
- powershell: |
workingDirectory: $(Build.SourcesDirectory)/MauiTesting
- script: |
+ set -x
+ pwd
+ git clone https://github.com/microsoft/dotnet-podcasts.git -b maui/perf --single-branch
+ cd dotnet-podcasts
+ cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.props.net6 ./Directory.Build.props
+ cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.targets.net6 ./Directory.Build.targets
+ displayName: Clone podcast app
+ workingDirectory: $(Build.SourcesDirectory)
+
+ - script: |
chmod -R a+r .
# remove net6.0-maccatalyst to work around https://github.com/dotnet/sdk/issues/21877
cp MauiTesting.csproj MauiTesting.csproj.bak
- script: |
chmod -R a+r .
- # Restore is split out because of https://github.com/dotnet/sdk/issues/21877, can be removed with --no-restore once fixed
- ../dotnet restore
- ../dotnet publish -bl:MauiBlazorAndroid.binlog -f net6.0-android -c Release -r android-arm64 --no-restore --self-contained
- mv ./bin/Release/net6.0-android/android-arm64/com.companyname.mauiblazortesting-Signed.apk ./MauiBlazorAndroidDefault.apk
- displayName: Build MAUI Blazor Android
- workingDirectory: $(Build.SourcesDirectory)/MauiBlazorTesting
-
- - script: |
- chmod -R a+r .
# remove net6.0-maccatalyst to work around https://github.com/dotnet/sdk/issues/21877
cp MauiBlazorTesting.csproj MauiBlazorTesting.csproj.bak
sed -i'' -e 's/net6.0-ios;net6.0-maccatalyst/net6.0-ios/g' MauiBlazorTesting.csproj
artifactName: ${{ parameters.artifactName }}
- task: PublishBuildArtifacts@1
- displayName: 'Publish MauiBlazorAndroid binlog'
- condition: always()
- inputs:
- pathtoPublish: $(Build.SourcesDirectory)/MauiBlazorTesting/MauiBlazorAndroid.binlog
- artifactName: ${{ parameters.artifactName }}
-
- - task: PublishBuildArtifacts@1
displayName: 'Publish MauiiOS binlog'
condition: always()
inputs:
artifactName: ${{ parameters.artifactName }}
- task: PublishBuildArtifacts@1
- displayName: 'Publish MauiBlazorAndroid binlog'
- condition: always()
- inputs:
- pathtoPublish: $(Build.SourcesDirectory)/MauiBlazorTesting/MauiBlazorAndroid.binlog
- artifactName: ${{ parameters.artifactName }}
-
- - task: PublishBuildArtifacts@1
displayName: 'Publish MauiBlazoriOS binlog'
condition: always()
inputs:
- template: /eng/pipelines/common/upload-artifact-step.yml
parameters:
- rootFolder: $(Build.SourcesDirectory)/MauiBlazorTesting/MauiBlazorAndroidDefault.apk
- includeRootFolder: true
- displayName: Maui Blazor Android App
- artifactName: MauiBlazorAndroidAppNet6
- archiveExtension: '.tar.gz'
- archiveType: tar
- tarCompression: gz
-
- - template: /eng/pipelines/common/upload-artifact-step.yml
- parameters:
- rootFolder: $(Build.SourcesDirectory)/MauiTesting/MauiAndroidPodcast.apk
- includeRootFolder: true
- displayName: Maui Android Podcast
- artifactName: MauiAndroidPodcastNet6
- archiveExtension: '.tar.gz'
- archiveType: tar
- tarCompression: gz
-
- - template: /eng/pipelines/common/upload-artifact-step.yml
- parameters:
rootFolder: $(Build.SourcesDirectory)/MauiTesting/MauiiOSDefault.ipa
includeRootFolder: true
displayName: Maui iOS IPA
displayName: Build MAUI Android
workingDirectory: $(Build.SourcesDirectory)/MauiTesting
- - script: |
- set -x
- pwd
- git clone https://github.com/microsoft/dotnet-podcasts.git -b net7.0 --single-branch
- cd dotnet-podcasts
- cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.props ./Directory.Build.props
- cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.targets ./Directory.Build.targets
- displayName: Clone podcast app
- workingDirectory: $(Build.SourcesDirectory)
-
- - script: |
- set -x
- pwd
- chmod -R a+r .
- ../../../dotnet restore Microsoft.NetConf2021.Maui.csproj
- ../../../dotnet publish Microsoft.NetConf2021.Maui.csproj -bl:MauiPodcastAndroid.binlog -r android-arm64 --self-contained --no-restore -f net7.0-android -c Release
- mv ./bin/Release/net7.0-android/android-arm64/com.Microsoft.NetConf2021.Maui-Signed.apk $(Build.SourcesDirectory)/MauiTesting/MauiAndroidPodcast.apk
- displayName: Build MAUI Podcast Android
- workingDirectory: $(Build.SourcesDirectory)/dotnet-podcasts/src/Mobile
-
# This step pulls the product version from the used Microsoft.Maui.dll file properties and saves it for upload with the maui test counter.
# We pull from this file as we did not find another place to reliably get the version information pre or post build.
- powershell: |
workingDirectory: $(Build.SourcesDirectory)/MauiTesting
- script: |
+ set -x
+ pwd
+ git clone https://github.com/microsoft/dotnet-podcasts.git -b net7.0 --single-branch
+ cd dotnet-podcasts
+ cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.props ./Directory.Build.props
+ cp $(Build.SourcesDirectory)/src/tests/Common/maui/MauiScenario.targets ./Directory.Build.targets
+ displayName: Clone podcast app
+ workingDirectory: $(Build.SourcesDirectory)
+
+ - script: |
chmod -R a+r .
# remove net7.0-maccatalyst to work around https://github.com/dotnet/sdk/issues/21877
cp MauiTesting.csproj MauiTesting.csproj.bak
- script: |
chmod -R a+r .
- # Restore is split out because of https://github.com/dotnet/sdk/issues/21877, can be removed with --no-restore once fixed
- ../dotnet restore
- ../dotnet publish -bl:MauiBlazorAndroid.binlog -f net7.0-android -c Release -r android-arm64 --no-restore --self-contained
- mv ./bin/Release/net7.0-android/android-arm64/com.companyname.mauiblazortesting-Signed.apk ./MauiBlazorAndroidDefault.apk
- displayName: Build MAUI Blazor Android
- workingDirectory: $(Build.SourcesDirectory)/MauiBlazorTesting
-
- - script: |
- chmod -R a+r .
# remove net7.0-maccatalyst to work around https://github.com/dotnet/sdk/issues/21877
cp MauiBlazorTesting.csproj MauiBlazorTesting.csproj.bak
sed -i'' -e 's/net7.0-ios;net7.0-maccatalyst/net7.0-ios/g' MauiBlazorTesting.csproj
artifactName: ${{ parameters.artifactName }}
- task: PublishBuildArtifacts@1
- displayName: 'Publish MauiBlazorAndroid binlog'
- condition: always()
- inputs:
- pathtoPublish: $(Build.SourcesDirectory)/MauiBlazorTesting/MauiBlazorAndroid.binlog
- artifactName: ${{ parameters.artifactName }}
-
- - task: PublishBuildArtifacts@1
displayName: 'Publish MauiiOS binlog'
condition: always()
inputs:
artifactName: ${{ parameters.artifactName }}
- task: PublishBuildArtifacts@1
- displayName: 'Publish MauiBlazorAndroid binlog'
- condition: always()
- inputs:
- pathtoPublish: $(Build.SourcesDirectory)/MauiBlazorTesting/MauiBlazorAndroid.binlog
- artifactName: ${{ parameters.artifactName }}
-
- - task: PublishBuildArtifacts@1
displayName: 'Publish MauiBlazoriOS binlog'
condition: always()
inputs:
- template: /eng/pipelines/common/upload-artifact-step.yml
parameters:
- rootFolder: $(Build.SourcesDirectory)/MauiTesting/MauiAndroidDefault.apk
- includeRootFolder: true
- displayName: Maui Android App
- artifactName: MauiAndroidApp
- archiveExtension: '.tar.gz'
- archiveType: tar
- tarCompression: gz
-
- - template: /eng/pipelines/common/upload-artifact-step.yml
- parameters:
- rootFolder: $(Build.SourcesDirectory)/MauiBlazorTesting/MauiBlazorAndroidDefault.apk
- includeRootFolder: true
- displayName: Maui Blazor Android App
- artifactName: MauiBlazorAndroidApp
- archiveExtension: '.tar.gz'
- archiveType: tar
- tarCompression: gz
-
- - template: /eng/pipelines/common/upload-artifact-step.yml
- parameters:
- rootFolder: $(Build.SourcesDirectory)/MauiTesting/MauiAndroidPodcast.apk
- includeRootFolder: true
- displayName: Maui Android Podcast
- artifactName: MauiAndroidPodcast
- archiveExtension: '.tar.gz'
- archiveType: tar
- tarCompression: gz
-
- - template: /eng/pipelines/common/upload-artifact-step.yml
- parameters:
rootFolder: $(Build.SourcesDirectory)/MauiTesting/MauiiOSDefault.ipa
includeRootFolder: true
displayName: Maui iOS IPA
# Test job depends on the corresponding build job
${{ if eq(parameters.downloadSpecificBuild.buildId, '') }}:
dependsOn:
- - ${{ if not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'AndroidMobileNet6', 'iOSMobileNet6', 'wasm')) }}:
+ - ${{ if not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'iOSMobileNet6', 'wasm')) }}:
- ${{ format('coreclr_{0}_product_build_{1}{2}_{3}_{4}', parameters.runtimeVariant, parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.buildConfig) }}
- ${{ if and(ne(parameters.liveLibrariesBuildConfig, ''), eq(parameters.skipLiveLibrariesDownload, 'false')) }}:
- ${{ format('libraries_build_{0}{1}_{2}_{3}', parameters.osGroup, parameters.osSubgroup, parameters.archType, parameters.liveLibrariesBuildConfig) }}
- ${{ if eq(parameters.runtimeType, 'AndroidMono')}}:
- ${{ 'build_android_arm64_release_AndroidMono' }}
- ${{ 'Build_ios_arm64_release_MACiOSAndroidMauiNet7' }}
- - ${{ if eq(parameters.runtimeType, 'AndroidMobileNet6')}}:
- - ${{ 'Build_ios_arm64_release_MACiOSAndroidMauiNet6' }}
- ${{ if eq(parameters.runtimeType, 'iOSMono')}}:
- ${{ 'build_ios_arm64_release_iOSMono' }}
- ${{ 'Build_ios_arm64_release_MACiOSAndroidMauiNet7' }}
- ${{ if eq(parameters.runtimeType, 'iOSMobileNet6')}}:
- ${{ 'Build_ios_arm64_release_MACiOSAndroidMauiNet6' }}
- ${{ if and(eq(parameters.osGroup, 'windows'), not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'AndroidMobileNet6', 'iOSMobileNet6'))) }}:
+ ${{ if and(eq(parameters.osGroup, 'windows'), not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'iOSMobileNet6'))) }}:
${{ if eq(parameters.runtimeType, 'mono') }}:
extraSetupParameters: -Architecture ${{ parameters.archType }} -MonoDotnet $(Build.SourcesDirectory)\.dotnet-mono
${{ if eq(parameters.runtimeType, 'coreclr') }}:
extraSetupParameters: -CoreRootDirectory $(Build.SourcesDirectory)\artifacts\tests\coreclr\${{ parameters.osGroup }}.${{ parameters.archType }}.Release\Tests\Core_Root -Architecture ${{ parameters.archType }}
- ${{ if and(ne(parameters.osGroup, 'windows'), not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'AndroidMobileNet6', 'iOSMobileNet6'))) }}:
+ ${{ if and(ne(parameters.osGroup, 'windows'), not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'iOSMobileNet6'))) }}:
${{ if and(eq(parameters.runtimeType, 'mono'), ne(parameters.codeGenType, 'AOT')) }}:
extraSetupParameters: --architecture ${{ parameters.archType }} --monodotnet $(Build.SourcesDirectory)/.dotnet-mono
${{ if and(eq(parameters.runtimeType, 'wasm'), ne(parameters.codeGenType, 'AOT')) }}:
extraSetupParameters: --corerootdirectory $(Build.SourcesDirectory)/artifacts/tests/coreclr/${{ parameters.osGroup }}.${{ parameters.archType }}.Release/Tests/Core_Root --architecture ${{ parameters.archType }}
${{ if and(eq(parameters.runtimeType, 'coreclr'), eq(parameters.osSubGroup, '_musl')) }}:
extraSetupParameters: --corerootdirectory $(Build.SourcesDirectory)/artifacts/tests/coreclr/${{ parameters.osGroup }}.${{ parameters.archType }}.Release/Tests/Core_Root --architecture ${{ parameters.archType }} --alpine
- ${{ if in(parameters.runtimeType, 'AndroidMono', 'AndroidMobileNet6') }}:
+ ${{ if in(parameters.runtimeType, 'AndroidMono') }}:
extraSetupParameters: -Architecture ${{ parameters.archType }} -AndroidMono
${{ if in(parameters.runtimeType, 'iosMono', 'iOSMobileNet6') }}:
extraSetupParameters: --architecture ${{ parameters.archType }} --iosmono --iosllvmbuild ${{ parameters.iOSLlvmBuild }}
displayName: 'live-built libraries'
# Download coreclr
- - ${{ if not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'AndroidMobileNet6', 'iOSMobileNet6', 'wasm')) }}:
+ - ${{ if not(in(parameters.runtimeType, 'AndroidMono', 'iOSMono', 'iOSMobileNet6', 'wasm')) }}:
- template: /eng/pipelines/common/download-artifact-step.yml
parameters:
unpackFolder: $(buildProductRootFolderPath)
- script: "mkdir -p $(librariesDownloadDir)/bin/aot/sgen;mkdir -p $(librariesDownloadDir)/bin/aot/pack;cp -r $(librariesDownloadDir)/LinuxMonoAOT/artifacts/obj/mono/linux.${{ parameters.archType }}.Release/mono/* $(librariesDownloadDir)/bin/aot/sgen;cp -r $(librariesDownloadDir)/LinuxMonoAOT/artifacts/bin/microsoft.netcore.app.runtime.linux-${{ parameters.archType }}/Release/* $(librariesDownloadDir)/bin/aot/pack"
displayName: "Create aot directory (Linux)"
- # Download AndroidMono and MauiAndroid
+ # Download artifacts for Android Testing
- ${{ if eq(parameters.runtimeType, 'AndroidMono')}}:
- template: /eng/pipelines/common/download-artifact-step.yml
parameters:
artifactFileName: 'AndroidMonoarm64.tar.gz'
artifactName: 'AndroidMonoarm64'
displayName: 'Mono Android HelloWorld'
- - template: /eng/pipelines/common/download-artifact-step.yml
- parameters:
- unpackFolder: $(Build.SourcesDirectory)
- cleanUnpackFolder: false
- artifactFileName: 'MauiAndroidApp.tar.gz'
- artifactName: 'MauiAndroidApp'
- displayName: 'Maui Android App'
- - template: /eng/pipelines/common/download-artifact-step.yml
- parameters:
- unpackFolder: $(Build.SourcesDirectory)
- cleanUnpackFolder: false
- artifactFileName: 'MauiAndroidPodcast.tar.gz'
- artifactName: 'MauiAndroidPodcast'
- displayName: 'Maui Android Podcast'
- - template: /eng/pipelines/common/download-artifact-step.yml
- parameters:
- unpackFolder: $(Build.SourcesDirectory)
- cleanUnpackFolder: false
- artifactFileName: 'MauiBlazorAndroidApp.tar.gz'
- artifactName: 'MauiBlazorAndroidApp'
- displayName: 'Maui Blazor Android App'
-
- # Download Maui Android net6 stuff
- - ${{ if eq(parameters.runtimeType, 'AndroidMobileNet6')}}:
- - template: /eng/pipelines/common/download-artifact-step.yml
- parameters:
- unpackFolder: $(Build.SourcesDirectory)
- cleanUnpackFolder: false
- artifactFileName: 'MauiAndroidAppNet6.tar.gz'
- artifactName: 'MauiAndroidAppNet6'
- displayName: 'Maui Android App Net6'
- - template: /eng/pipelines/common/download-artifact-step.yml
- parameters:
- unpackFolder: $(Build.SourcesDirectory)
- cleanUnpackFolder: false
- artifactFileName: 'MauiAndroidPodcastNet6.tar.gz'
- artifactName: 'MauiAndroidPodcastNet6'
- displayName: 'Maui Android Podcast Net6'
- - template: /eng/pipelines/common/download-artifact-step.yml
- parameters:
- unpackFolder: $(Build.SourcesDirectory)
- cleanUnpackFolder: false
- artifactFileName: 'MauiBlazorAndroidAppNet6.tar.gz'
- artifactName: 'MauiBlazorAndroidAppNet6'
- displayName: 'Maui Blazor Android App Net6'
-
+
# Download iOSMono tests and MauiiOS/MacCatalyst
- ${{ if eq(parameters.runtimeType, 'iOSMono') }}:
- template: /eng/pipelines/common/download-artifact-step.yml
# Copy the runtime directory into the testhost folder to include OOBs.
- script: "build.cmd -subset libs.pretest -configuration release -ci -arch $(archType) -testscope innerloop /p:RuntimeArtifactsPath=$(librariesDownloadDir)\\bin\\mono\\$(osGroup).$(archType).$(buildConfigUpper) /p:RuntimeFlavor=mono;xcopy $(Build.SourcesDirectory)\\artifacts\\bin\\runtime\\net8.0-$(osGroup)-$(buildConfigUpper)-$(archType)\\* $(Build.SourcesDirectory)\\artifacts\\bin\\testhost\\net8.0-$(osGroup)-$(buildConfigUpper)-$(archType)\\shared\\Microsoft.NETCore.App\\$(productVersion) /E /I /Y;xcopy $(Build.SourcesDirectory)\\artifacts\\bin\\testhost\\net8.0-$(osGroup)-$(buildConfigUpper)-$(archType)\\* $(Build.SourcesDirectory)\\.dotnet-mono /E /I /Y;copy $(Build.SourcesDirectory)\\artifacts\\bin\\coreclr\\$(osGroup).$(archType).$(buildConfigUpper)\\corerun.exe $(Build.SourcesDirectory)\\.dotnet-mono\\shared\\Microsoft.NETCore.App\\$(productVersion)\\corerun.exe"
displayName: "Create mono dotnet (Windows)"
- condition: and(and(succeeded(), eq(variables.runtimeFlavorName, 'Mono')), eq(variables.osGroup, 'windows'), not(in('${{ parameters.runtimeType }}', 'AndroidMono', 'iOSMono', 'AndroidMobileNet6', 'iOSMobileNet6')))
+ condition: and(and(succeeded(), eq(variables.runtimeFlavorName, 'Mono')), eq(variables.osGroup, 'windows'), not(in('${{ parameters.runtimeType }}', 'AndroidMono', 'iOSMono', 'iOSMobileNet6')))
- script: "mkdir $(Build.SourcesDirectory)/.dotnet-mono;./build.sh -subset libs.pretest -configuration release -ci -arch $(archType) -testscope innerloop /p:RuntimeArtifactsPath=$(librariesDownloadDir)/bin/mono/$(osGroup).$(archType).$(buildConfigUpper) /p:RuntimeFlavor=mono;cp $(Build.SourcesDirectory)/artifacts/bin/runtime/net8.0-$(osGroup)-$(buildConfigUpper)-$(archType)/* $(Build.SourcesDirectory)/artifacts/bin/testhost/net8.0-$(osGroup)-$(buildConfigUpper)-$(archType)/shared/Microsoft.NETCore.App/$(productVersion) -rf;cp $(Build.SourcesDirectory)/artifacts/bin/testhost/net8.0-$(osGroup)-$(buildConfigUpper)-$(archType)/* $(Build.SourcesDirectory)/.dotnet-mono -r;cp $(Build.SourcesDirectory)/artifacts/bin/coreclr/$(osGroup).$(archType).$(buildConfigUpper)/corerun $(Build.SourcesDirectory)/.dotnet-mono/shared/Microsoft.NETCore.App/$(productVersion)/corerun"
displayName: "Create mono dotnet (Linux)"
- condition: and(and(succeeded(), eq(variables.runtimeFlavorName, 'Mono')), ne(variables.osGroup, 'windows'), not(in('${{ parameters.runtimeType }}', 'AndroidMono', 'iOSMono', 'AndroidMobileNet6', 'iOSMobileNet6')))
+ condition: and(and(succeeded(), eq(variables.runtimeFlavorName, 'Mono')), ne(variables.osGroup, 'windows'), not(in('${{ parameters.runtimeType }}', 'AndroidMono', 'iOSMono', 'iOSMobileNet6')))
<Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
<PostCommands>$(Python) post.py</PostCommands>
</HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Android APK Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .; $(Python) pre.py --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Blazor Android APK Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .; $(Python) pre.py --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Android Podcast APK Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .; $(Python) pre.py --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Android Extracted Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .; $(Python) pre.py --unzip --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Blazor Android Extracted Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .; $(Python) pre.py --unzip --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Android Podcast Extracted Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .; $(Python) pre.py --unzip --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
<HelixWorkItem Include="Device Startup - Android Mono HelloWorld">
<PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
<PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)helloandroid;copy %HELIX_CORRELATION_PAYLOAD%\HelloAndroid.apk .;$(Python) pre.py --apk-name HelloAndroid.apk</PreCommands>
<Command>$(Python) test.py devicestartup --device-type android --package-path pub\HelloAndroid.apk --package-name net.dot.HelloAndroid --scenario-name "%(Identity)" --disable-animations</Command>
<PostCommands>$(Python) post.py</PostCommands>
</HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui DefaultTesting">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .;$(Python) pre.py --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidDefault.apk --package-name com.companyname.mauitesting --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Blazor DefaultTesting">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .;$(Python) pre.py --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiBlazorAndroidDefault.apk --package-name com.companyname.mauiblazortesting --scenario-name "%(Identity)" --use-fully-drawn-time --fully-drawn-extra-delay 6</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Podcast">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .;$(Python) pre.py --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidPodcast.apk --package-name com.Microsoft.NetConf2021.Maui --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui DefaultTesting NoAnimation">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .;$(Python) pre.py --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidDefault.apk --package-name com.companyname.mauitesting --scenario-name "%(Identity)" --disable-animations</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Blazor DefaultTesting NoAnimation">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .;$(Python) pre.py --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiBlazorAndroidDefault.apk --package-name com.companyname.mauiblazortesting --scenario-name "%(Identity)" --use-fully-drawn-time --fully-drawn-extra-delay 6 --disable-animations</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Podcast NoAnimation">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .;$(Python) pre.py --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidPodcast.apk --package-name com.Microsoft.NetConf2021.Maui --scenario-name "%(Identity)" --disable-animations</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
</ItemGroup>
</Project>
+++ /dev/null
-<Project Sdk="Microsoft.DotNet.Helix.Sdk" DefaultTargets="Test">
- <PropertyGroup>
- <IncludeXHarnessCli>true</IncludeXHarnessCli>
- <MicrosoftDotNetXHarnessCLIVersion>1.0.0-prerelease.21566.2</MicrosoftDotNetXHarnessCLIVersion>
- <XharnessPath>%HELIX_CORRELATION_PAYLOAD%\microsoft.dotnet.xharness.cli\$(MicrosoftDotNetXHarnessCLIVersion)\tools\net6.0\any\Microsoft.DotNet.XHarness.CLI.dll</XharnessPath>
- </PropertyGroup>
- <PropertyGroup Condition="'$(AGENT_OS)' != 'Windows_NT'">
- <Python>python3</Python>
- <HelixPreCommands>$(HelixPreCommands);chmod +x $HELIX_WORKITEM_PAYLOAD/SOD/SizeOnDisk</HelixPreCommands>
- </PropertyGroup>
-
- <ItemGroup>
- <HelixCorrelationPayload Include="$(CorrelationPayloadDirectory)">
- <PayloadDirectory>%(Identity)</PayloadDirectory>
- </HelixCorrelationPayload>
- </ItemGroup>
-
- <PropertyGroup Condition="'$(AGENT_OS)' == 'Windows_NT'">
- <ScenarioDirectory>%HELIX_CORRELATION_PAYLOAD%\performance\src\scenarios\</ScenarioDirectory>
- </PropertyGroup>
- <PropertyGroup Condition="'$(AGENT_OS)' != 'Windows_NT'">
- <ScenarioDirectory>$HELIX_CORRELATION_PAYLOAD/performance/src/scenarios/</ScenarioDirectory>
- </PropertyGroup>
-
- <ItemGroup>
- <HelixWorkItem Include="SOD - Maui Android APK Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .; $(Python) pre.py --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Blazor Android APK Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .; $(Python) pre.py --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Android Podcast APK Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .; $(Python) pre.py --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Android Extracted Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .; $(Python) pre.py --unzip --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Blazor Android Extracted Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .; $(Python) pre.py --unzip --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="SOD - Maui Android Podcast Extracted Size">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .; $(Python) pre.py --unzip --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py sod --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui DefaultTesting">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .;$(Python) pre.py --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidDefault.apk --package-name com.companyname.mauitesting --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Blazor DefaultTesting">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .;$(Python) pre.py --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiBlazorAndroidDefault.apk --package-name com.companyname.mauiblazortesting --scenario-name "%(Identity)" --use-fully-drawn-time --fully-drawn-extra-delay 6</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Podcast">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .;$(Python) pre.py --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidPodcast.apk --package-name com.Microsoft.NetConf2021.Maui --scenario-name "%(Identity)"</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui DefaultTesting NoAnimation">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidDefault.apk .;$(Python) pre.py --apk-name MauiAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidDefault.apk --package-name com.companyname.mauitesting --scenario-name "%(Identity)" --disable-animations</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Blazor DefaultTesting NoAnimation">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiblazorandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiBlazorAndroidDefault.apk .;$(Python) pre.py --apk-name MauiBlazorAndroidDefault.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiBlazorAndroidDefault.apk --package-name com.companyname.mauiblazortesting --scenario-name "%(Identity)" --use-fully-drawn-time --fully-drawn-extra-delay 6 --disable-animations</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- <HelixWorkItem Include="Device Startup - Android Maui Podcast NoAnimation">
- <PayloadDirectory>$(WorkItemDirectory)</PayloadDirectory>
- <PreCommands>echo on;set XHARNESSPATH=$(XharnessPath);cd $(ScenarioDirectory)mauiandroid;copy %HELIX_CORRELATION_PAYLOAD%\MauiAndroidPodcast.apk .;$(Python) pre.py --apk-name MauiAndroidPodcast.apk</PreCommands>
- <Command>$(Python) test.py devicestartup --device-type android --package-path pub\MauiAndroidPodcast.apk --package-name com.Microsoft.NetConf2021.Maui --scenario-name "%(Identity)" --disable-animations</Command>
- <PostCommands>$(Python) post.py</PostCommands>
- </HelixWorkItem>
- </ItemGroup>
-</Project>
{
mkdir $WorkItemDirectory
}
- if($Kind -ne "android_scenarios_net6")
- {
- Copy-Item -path "$SourceDirectory\androidHelloWorld\HelloAndroid.apk" $PayloadDirectory -Verbose
- }
- Copy-Item -path "$SourceDirectory\MauiAndroidDefault.apk" $PayloadDirectory -Verbose
- Copy-Item -path "$SourceDirectory\MauiBlazorAndroidDefault.apk" $PayloadDirectory -Verbose
- Copy-Item -path "$SourceDirectory\MauiAndroidPodcast.apk" $PayloadDirectory -Verbose
-
+ Copy-Item -path "$SourceDirectory\androidHelloWorld\HelloAndroid.apk" $PayloadDirectory -Verbose
$SetupArguments = $SetupArguments -replace $Architecture, 'arm64'
}