Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix Pipeline first run.
  • Loading branch information
LoopedBard3 committed Mar 16, 2023
commit bf990124f66f241dc04e6e65b0369f601fdfbcce
1 change: 1 addition & 0 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
<!--Package versions-->
<PropertyGroup>
<MicrosoftDotnetSdkInternalPackageVersion>5.0.104-servicing.21213.7</MicrosoftDotnetSdkInternalPackageVersion>
<MicrosoftDotNetXHarnessCLIVersion>1.0.0-prerelease.23157.1</MicrosoftDotNetXHarnessCLIVersion>
<MicrosoftNETCoreAppRuntimewinx64PackageVersion>5.0.4</MicrosoftNETCoreAppRuntimewinx64PackageVersion>
<MicrosoftNETSdkInternalPackageVersion>
</MicrosoftNETSdkInternalPackageVersion>
Expand Down
21 changes: 11 additions & 10 deletions eng/performance/maui_scenarios_ios.proj
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@
<MAUIiOSScenario Include="Maui iOS Default">
<ScenarioDirectoryName>mauiios</ScenarioDirectoryName>
<PayloadDirectory>$(ScenariosDir)%(ScenarioDirectoryName)</PayloadDirectory>
<IPAName>HelloiOS</IPAName>
<PackageName>net.dot.HelloiOS</PackageName>
<IPAName>MauiiOSDefault</IPAName>
<PackageName>net.dot.mauitesting</PackageName>
</MAUIiOSScenario>
<!-- MessagingCenter was removed: https://github.com/dotnet/maui/pull/12582, needs to be replaced likely with something like: https://github.com/dotnet/maui/commit/762e07e04d1fdf8fca3edd948bab294c8762cd2c -->
<!-- <MAUIiOSScenario Include="Maui iOS Podcast">
Expand All @@ -47,31 +47,32 @@

<ItemGroup>
<PreparePayloadWorkItem Include="@(MAUIiOSScenario)">
<Command>$(Python) pre.py publish -f $(PERFLAB_Framework)-ios --self-contained -c Release /p:_RequireCodeSigning=false /p:ApplicationId=net.dot.mauitesting -o $(PreparePayloadWorkItemBaseDirectory)%(PreparePayloadWorkItem.ScenarioDirectoryName)</Command>
<Command>$(Python) pre.py publish -f $(PERFLAB_Framework)-ios --self-contained -c Release -r ios-arm64 -o $(PreparePayloadWorkItemBaseDirectory)%(PreparePayloadWorkItem.ScenarioDirectoryName)</Command>
<WorkingDirectory>%(PreparePayloadWorkItem.PayloadDirectory)</WorkingDirectory>
</PreparePayloadWorkItem>
</ItemGroup>

<ItemGroup>
<HelixWorkItem Include="@(MAUIiOSenario -> 'SOD - %(Identity) IPA Size')">
<PreCommands>echo on; xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName) %HELIX_WORKITEM_ROOT%\pub\ /E /I /Y</PreCommands>
<HelixWorkItem Include="@(MAUIiOSScenario -> 'SOD - %(Identity) IPA Size')">
<PreCommands>cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName) $HELIX_WORKITEM_ROOT/pub</PreCommands>
<Command>$(Python) test.py sod --scenario-name &quot;%(Identity)&quot;</Command>
</HelixWorkItem>
<HelixWorkItem Include="@(MAUIiOSenario -> 'SOD - %(Identity) Unzipped')">
<PreCommands>echo on; xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName) %HELIX_WORKITEM_ROOT%\pub\ /E /I /Y; ren %HELIX_WORKITEM_ROOT%\pub\%(HelixWorkItem.IPAName).ipa %(HelixWorkItem.ApkName).zip; powershell.exe -nologo -noprofile -command "&amp; {Expand-Archive %HELIX_WORKITEM_ROOT%\pub\%(HelixWorkItem.IPAName).zip -DestinationPath %HELIX_WORKITEM_ROOT%\pub\}"; del %HELIX_WORKITEM_ROOT%\pub\%(HelixWorkItem.IPAName).zip</PreCommands>
<HelixWorkItem Include="@(MAUIiOSScenario -> 'SOD - %(Identity) Unzipped')">
<PreCommands>cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName) $HELIX_WORKITEM_ROOT/pub; mv $HELIX_WORKITEM_ROOT/pub/%(HelixWorkItem.IPAName).ipa $HELIX_WORKITEM_ROOT/pub/%(HelixWorkItem.IPAName).zip; unzip -d $HELIX_WORKITEM_ROOT/pub $HELIX_WORKITEM_ROOT/pub/%(HelixWorkItem.IPAName).zip; rm $HELIX_WORKITEM_ROOT/pub/%(HelixWorkItem.IPAName).zip</PreCommands>
<Command>$(Python) test.py sod --scenario-name &quot;%(Identity)&quot;</Command>
</HelixWorkItem>
</ItemGroup>

//////////////////////////////////
<Import Project="PreparePayloadWorkItems.targets" />

<!--
This target is to work around the XHarness command that depend on scripts in ORIGPYPATH
being run before we get to run our normal Post commands. AddXHarnessCLI is the XHarness
Target so we just make sure we add this after that.
-->
<Target Name="ResetPYTHONPATHBeforeXHarnessCommand" AfterTargets="AddXHarnessCLI">
<!-- <Target Name="ResetPYTHONPATHBeforeXHarnessCommand" AfterTargets="AddXHarnessCLI">
<PropertyGroup>
<HelixPostCommands>export PYTHONPATH=$ORIGPYPATH;$(HelixPostCommands)</HelixPostCommands>
</PropertyGroup>
</Target>
</Target> -->
</Project>
29 changes: 28 additions & 1 deletion eng/performance/scenarios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,34 @@ jobs:
displayName: Delete old dotnet
- script: xcopy tools\dotnet\arm64\* $(CorrelationStaging)dotnet\/E /I /Y
displayName: Copy Arm64 Dotnet to Correlation Payload
- ${{ if ne(parameters.osName, 'windows') }}:
- ${{ if eq(parameters.osName, 'osx') }}:
- script: cp ./NuGet.config $(CorrelationStaging);cp -r ./scripts $(CorrelationStaging)scripts;cp -r ./src/scenarios/shared $(CorrelationStaging)shared;cp -r ./src/scenarios/staticdeps $(CorrelationStaging)staticdeps
displayName: Copy python libraries and NuGet.config
- script: $(CorrelationStaging)dotnet/dotnet publish -c Release -o $(CorrelationStaging)startup -f $(PERFLAB_Framework) -r osx-${{parameters.architecture}} --self-contained $(Build.SourcesDirectory)/src/tools/ScenarioMeasurement/Startup/Startup.csproj -p:DisableTransitiveFrameworkReferenceDownloads=true
displayName: Build startup tool
env:
PERFLAB_TARGET_FRAMEWORKS: $(PERFLAB_Framework)
- script: $(CorrelationStaging)dotnet/dotnet publish -c Release -o $(CorrelationStaging)SOD -f $(PERFLAB_Framework) -r osx-${{parameters.architecture}} --self-contained $(Build.SourcesDirectory)/src/tools/ScenarioMeasurement/SizeOnDisk/SizeOnDisk.csproj -p:DisableTransitiveFrameworkReferenceDownloads=true
displayName: Build SOD tool
env:
PERFLAB_TARGET_FRAMEWORKS: $(PERFLAB_Framework)
- script: $(CorrelationStaging)dotnet/dotnet publish -c Release -o $(CorrelationStaging)MemoryConsumption -f $(PERFLAB_Framework) -r osx-${{parameters.architecture}} --self-contained $(Build.SourcesDirectory)/src/tools/ScenarioMeasurement/MemoryConsumption/MemoryConsumption.csproj -p:DisableTransitiveFrameworkReferenceDownloads=true
displayName: Build MemoryConsumption tool
env:
PERFLAB_TARGET_FRAMEWORKS: $(PERFLAB_Framework)
- script: |
$(Python) -m pip install --user --upgrade pip
$(Python) -m pip install --user requests
. ./src/scenarios/init.sh -dotnetdir $(CorrelationStaging)dotnet
dotnet msbuild ./eng/performance/${{ parameters.projectFile }} /restore /t:PreparePayloadWorkItems /bl:./artifacts/log/$(_BuildConfig)/PrepareWorkItemPayloads.binlog
displayName: Prepare scenarios
env:
CorrelationPayloadDirectory: $(CorrelationStaging)
Architecture: ${{ parameters.architecture }}
TargetsWindows: 'false'
WorkItemDirectory: $(Build.SourcesDirectory)
HelixTargetQueues: ${{ parameters.queue }}
- ${{ if and(ne(parameters.osName, 'windows'), ne(parameters.osName, 'osx')) }}:
- script: cp ./NuGet.config $(CorrelationStaging);cp -r ./scripts $(CorrelationStaging)scripts;cp -r ./src/scenarios/shared $(CorrelationStaging)shared;cp -r ./src/scenarios/staticdeps $(CorrelationStaging)staticdeps
displayName: Copy python libraries and NuGet.config
- script: $(CorrelationStaging)dotnet/dotnet publish -c Release -o $(CorrelationStaging)startup -f $(PERFLAB_Framework) -r linux-${{parameters.architecture}} --self-contained $(Build.SourcesDirectory)/src/tools/ScenarioMeasurement/Startup/Startup.csproj -p:DisableTransitiveFrameworkReferenceDownloads=true
Expand Down
5 changes: 3 additions & 2 deletions src/scenarios/mauiblazorios/pre.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,9 @@
mainActivityFile.write(line)

# Build the APK
shutil.copy('./MauiNuGet.config', './app/Nuget.config')
precommands.execute([])
# NuGet.config file cannot be in the build directory currently due to https://github.com/dotnet/aspnetcore/issues/41397
# shutil.copy('./MauiNuGet.config', './app/Nuget.config')
precommands.execute(['/p:_RequireCodeSigning=false', '/p:ApplicationId=net.dot.mauiblazortesting'])

output_dir = const.PUBDIR
if precommands.output:
Expand Down
2 changes: 1 addition & 1 deletion src/scenarios/mauiios/pre.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@

# Build the APK
shutil.copy('./MauiNuGet.config', './app/Nuget.config')
precommands.execute([])
precommands.execute(['/p:_RequireCodeSigning=false', '/p:ApplicationId=net.dot.mauitesting'])

# Remove the aab files as we don't need them, this saves space
output_dir = const.PUBDIR
Expand Down
2 changes: 1 addition & 1 deletion src/scenarios/mauiiospodcast/pre.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
precommands.existing(projectdir='./dotnet-podcasts', projectfile='./src/Mobile/Microsoft.NetConf2021.Maui.csproj')

# Build the APK
precommands.execute([])
precommands.execute(['/p:_RequireCodeSigning=false', '/p:ApplicationId=net.dot.netconf2021.maui'])

# Remove the aab files as we don't need them, this saves space
output_dir = const.PUBDIR
Expand Down