Skip to content

Commit 0ad00dc

Browse files
committed
Update scenarios.proj to use the prepare scenarios properly.
1 parent bcd5e3c commit 0ad00dc

File tree

2 files changed

+68
-37
lines changed

2 files changed

+68
-37
lines changed

eng/performance/scenarios.proj

Lines changed: 65 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -20,89 +20,121 @@
2020
</PropertyGroup>
2121

2222
<ItemDefinitionGroup>
23-
<HelixWorkItem>
23+
<HelixWorkItem>
2424
<Timeout>4:00</Timeout>
2525
</HelixWorkItem>
2626
</ItemDefinitionGroup>
27-
27+
28+
<PropertyGroup>
29+
<AfterPreparePayloadWorkItemCommand>$(Python) post.py</AfterPreparePayloadWorkItemCommand>
30+
<PreparePayloadOutDirectoryName>scenarios_out</PreparePayloadOutDirectoryName>
31+
<PreparePayloadWorkItemBaseDirectory Condition="'$(TargetsWindows)' == 'true'">$(CorrelationPayloadDirectory)$(PreparePayloadOutDirectoryName)\</PreparePayloadWorkItemBaseDirectory>
32+
<PreparePayloadWorkItemBaseDirectory Condition="'$(TargetsWindows)' != 'true'">$(CorrelationPayloadDirectory)$(PreparePayloadOutDirectoryName)/</PreparePayloadWorkItemBaseDirectory>
33+
</PropertyGroup>
34+
2835

2936
<ItemGroup>
3037
<Scenario Include="Static Console Template">
31-
<PayloadDirectory>$(ScenariosDir)staticconsoletemplate</PayloadDirectory>
38+
<ScenarioDirectoryName>staticconsoletemplate</ScenarioDirectoryName>
39+
<PayloadDirectory>$(ScenariosDir)%(ScenarioDirectoryName)</PayloadDirectory>
3240
</Scenario>
3341
<Scenario Include="Static VB Console Template">
34-
<PayloadDirectory>$(ScenariosDir)staticvbconsoletemplate</PayloadDirectory>
42+
<ScenarioDirectoryName>staticvbconsoletemplate</ScenarioDirectoryName>
43+
<PayloadDirectory>$(ScenariosDir)%(ScenarioDirectoryName)</PayloadDirectory>
3544
</Scenario>
36-
<!-- <Scenario Include="Static Winforms Template" Condition="'$(_Framework)' != 'netcoreapp5.0'">
37-
<PayloadDirectory>$(ScenariosDir)staticwinformstemplate</PayloadDirectory>
38-
</Scenario> -->
3945
<Scenario Include="New Console Template">
40-
<PayloadDirectory>$(ScenariosDir)emptyconsoletemplate</PayloadDirectory>
46+
<ScenarioDirectoryName>emptyconsoletemplate</ScenarioDirectoryName>
47+
<PayloadDirectory>$(ScenariosDir)%(ScenarioDirectoryName)</PayloadDirectory>
4148
</Scenario>
4249
<Scenario Include="New VB Console Template">
43-
<PayloadDirectory>$(ScenariosDir)emptyvbconsoletemplate</PayloadDirectory>
50+
<ScenarioDirectoryName>emptyvbconsoletemplate</ScenarioDirectoryName>
51+
<PayloadDirectory>$(ScenariosDir)%(ScenarioDirectoryName)</PayloadDirectory>
4452
</Scenario>
53+
54+
<MAUIScenario Include="Desktop Maui" Condition="'$(TargetsWindows)' == 'true' And '$(Architecture)' != 'arm64' And '$(Architecture)' != 'arm'">
55+
<ScenarioDirectoryName>mauidesktop</ScenarioDirectoryName>
56+
<PayloadDirectory>$(ScenariosDir)%(ScenarioDirectoryName)</PayloadDirectory>
57+
</MAUIScenario>
58+
<MAUIScenario Include="Desktop Maui Blazor" Condition="'$(TargetsWindows)' == 'true' And '$(Architecture)' != 'arm64' And '$(Architecture)' != 'arm'">
59+
<ScenarioDirectoryName>mauiblazordesktop</ScenarioDirectoryName>
60+
<PayloadDirectory>$(ScenariosDir)%(ScenarioDirectoryName)</PayloadDirectory>
61+
</MAUIScenario>
62+
</ItemGroup>
63+
64+
65+
<ItemGroup>
66+
<PreparePayloadWorkItem Include="@(Scenario)">
67+
<Command>$(Python) pre.py publish -f $(_Framework) -c Release -o $(PreparePayloadWorkItemBaseDirectory)%(PreparePayloadWorkItem.ScenarioDirectoryName)_fdd</Command>
68+
<WorkingDirectory>%(PreparePayloadWorkItem.PayloadDirectory)</WorkingDirectory>
69+
</PreparePayloadWorkItem>
70+
<PreparePayloadWorkItem Include="@(Scenario)">
71+
<Command>$(Python) pre.py publish -f $(_Framework) -c Release -r $(RID) -o $(PreparePayloadWorkItemBaseDirectory)%(PreparePayloadWorkItem.ScenarioDirectoryName)_scd</Command>
72+
<WorkingDirectory>%(PreparePayloadWorkItem.PayloadDirectory)</WorkingDirectory>
73+
</PreparePayloadWorkItem>
74+
<PreparePayloadWorkItem Include="@(Scenario)">
75+
<Command>$(Python) pre.py build -c Release -f $(_Framework) -o $(PreparePayloadWorkItemBaseDirectory)%(PreparePayloadWorkItem.ScenarioDirectoryName)_build</Command>
76+
<WorkingDirectory>%(PreparePayloadWorkItem.PayloadDirectory)</WorkingDirectory>
77+
</PreparePayloadWorkItem>
78+
<PreparePayloadWorkItem Include="@(MAUIScenario)">
79+
<Command>$(Python) pre.py publish -c Release -f $(_Framework)-windows10.0.19041.0 -o $(PreparePayloadWorkItemBaseDirectory)%(PreparePayloadWorkItem.ScenarioDirectoryName)_fdd</Command>
80+
<WorkingDirectory>%(PreparePayloadWorkItem.PayloadDirectory)</WorkingDirectory>
81+
</PreparePayloadWorkItem>
4582
</ItemGroup>
4683

84+
4785
<!-- Startup FDD publish -->
4886
<ItemGroup>
4987
<HelixWorkItem Include="@(Scenario -> 'Startup - %(Identity) - FDD Publish')">
50-
<PreCommands>$(Python) pre.py publish -f $(_Framework) -c Release</PreCommands>
88+
<PreCommands Condition="'$(TargetsWindows)' == 'true'">xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName)_fdd %HELIX_WORKITEM_ROOT%\pub /E /I /Y</PreCommands>
89+
<PreCommands Condition="'$(TargetsWindows)' != 'true'">cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName)_fdd $HELIX_WORKITEM_ROOT/pub</PreCommands>
5190
<Command>$(Python) test.py startup --scenario-name &quot;%(Identity)&quot;</Command>
5291
</HelixWorkItem>
5392
</ItemGroup>
5493

5594
<!-- SOD FDD publish -->
5695
<ItemGroup>
5796
<HelixWorkItem Include="@(Scenario -> 'SOD - %(Identity) - FDD Publish')">
58-
<PreCommands>$(Python) pre.py publish -f $(_Framework) -c Release</PreCommands>
97+
<PreCommands Condition="'$(TargetsWindows)' == 'true'">xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName)_fdd %HELIX_WORKITEM_ROOT%\pub /E /I /Y</PreCommands>
98+
<PreCommands Condition="'$(TargetsWindows)' != 'true'">cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName)_fdd $HELIX_WORKITEM_ROOT/pub</PreCommands>
5999
<Command>$(Python) test.py sod --scenario-name &quot;%(Identity)&quot;</Command>
60100
</HelixWorkItem>
61101
</ItemGroup>
62102

63103
<!-- SOD SCD publish w/ RID -->
64104
<ItemGroup>
65105
<HelixWorkItem Include="@(Scenario -> 'SOD - %(Identity) - SCD Publish')">
66-
<PreCommands>$(Python) pre.py publish -f $(_Framework) -c Release -r $(RID)</PreCommands>
106+
<PreCommands Condition="'$(TargetsWindows)' == 'true'">xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName)_scd %HELIX_WORKITEM_ROOT%\pub /E /I /Y</PreCommands>
107+
<PreCommands Condition="'$(TargetsWindows)' != 'true'">cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName)_scd $HELIX_WORKITEM_ROOT/pub</PreCommands>
67108
<Command>$(Python) test.py sod --scenario-name &quot;%(Identity)&quot;</Command>
68109
</HelixWorkItem>
69110
</ItemGroup>
70111

71112
<!-- SOD build -->
72113
<ItemGroup>
73114
<HelixWorkItem Include="@(Scenario -> 'SOD - %(Identity) - Build')">
74-
<PreCommands>$(Python) pre.py build -c Release -f $(_Framework)</PreCommands>
115+
<PreCommands Condition="'$(TargetsWindows)' == 'true'">xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName)_build %HELIX_WORKITEM_ROOT%\bin /E /I /Y</PreCommands>
116+
<PreCommands Condition="'$(TargetsWindows)' != 'true'">cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName)_build $HELIX_WORKITEM_ROOT/bin</PreCommands>
75117
<Command>$(Python) test.py sod --scenario-name &quot;%(Identity)&quot;</Command>
76118
</HelixWorkItem>
77119
</ItemGroup>
78120

79-
<!-- SOD & Device Startup for Windows Desktop MAUI -->
121+
<!-- MAUI -->
80122
<ItemGroup>
81-
<HelixWorkItem Include="SOD - Desktop Maui Unpackaged" Condition="'$(TargetsWindows)' == 'true'">
82-
<PayloadDirectory>$(ScenariosDir)mauidesktop</PayloadDirectory>
83-
<PreCommands>$(Python) pre.py publish -c Release -f $(_Framework)-windows10.0.19041.0</PreCommands>
123+
<HelixWorkItem Include="@(MAUIScenario -> 'SOD - %(Identity) Unpackaged')">
124+
<PreCommands Condition="'$(TargetsWindows)' == 'true'">xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName)_fdd %HELIX_WORKITEM_ROOT%\pub /E /I /Y</PreCommands>
125+
<PreCommands Condition="'$(TargetsWindows)' != 'true'">cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName)_fdd $HELIX_WORKITEM_ROOT/pub</PreCommands>
84126
<Command>$(Python) test.py sod --scenario-name &quot;%(Identity)&quot;</Command>
85127
</HelixWorkItem>
86-
<HelixWorkItem Include="Device Startup - Desktop Maui Default" Condition="'$(TargetsWindows)' == 'true'">
87-
<PayloadDirectory>$(ScenariosDir)mauidesktop</PayloadDirectory>
88-
<PreCommands>$(Python) pre.py publish -c Release -f $(_Framework)-windows10.0.19041.0</PreCommands>
128+
<HelixWorkItem Include="@(MAUIScenario -> 'Device Startup - %(Identity) Default')">
129+
<PreCommands Condition="'$(TargetsWindows)' == 'true'">xcopy %HELIX_CORRELATION_PAYLOAD%\$(PreparePayloadOutDirectoryName)\%(HelixWorkItem.ScenarioDirectoryName)_fdd %HELIX_WORKITEM_ROOT%\pub /E /I /Y</PreCommands>
130+
<PreCommands Condition="'$(TargetsWindows)' != 'true'">cp -r $HELIX_CORRELATION_PAYLOAD/$(PreparePayloadOutDirectoryName)/%(HelixWorkItem.ScenarioDirectoryName)_fdd $HELIX_WORKITEM_ROOT/pub</PreCommands>
89131
<Command>$(Python) test.py startup --scenario-name &quot;%(Identity)&quot;</Command>
90132
</HelixWorkItem>
91133
</ItemGroup>
92134

93-
<!-- SOD & Device Startup for Windows Desktop MAUI Blazor -->
94-
<ItemGroup>
95-
<HelixWorkItem Include="SOD - Desktop Maui Blazor Unpackaged" Condition="'$(TargetsWindows)' == 'true'">
96-
<PayloadDirectory>$(ScenariosDir)mauiblazordesktop</PayloadDirectory>
97-
<PreCommands>$(Python) pre.py publish -c Release -f $(_Framework)-windows10.0.19041.0</PreCommands>
98-
<Command>$(Python) test.py sod --scenario-name &quot;%(Identity)&quot;</Command>
99-
</HelixWorkItem>
100-
<HelixWorkItem Include="Device Startup - Desktop Maui Blazor Default" Condition="'$(TargetsWindows)' == 'true'">
101-
<PayloadDirectory>$(ScenariosDir)mauiblazordesktop</PayloadDirectory>
102-
<PreCommands>$(Python) pre.py publish -c Release -f $(_Framework)-windows10.0.19041.0</PreCommands>
103-
<Command>$(Python) test.py startup --scenario-name &quot;%(Identity)&quot;</Command>
104-
</HelixWorkItem>
105-
</ItemGroup>
135+
136+
<Import Project="PreparePayloadWorkItems.targets" />
137+
106138

107139
<!--
108140
This is useful for local testing to print the produced helix items
@@ -121,6 +153,5 @@
121153
post: %(HelixWorkItem.PostCommands)
122154
timeout: %(HelixWorkItem.Timeout) '"/>
123155
</Target> -->
124-
<Import Project="PreparePayloadWorkItems.targets" />
125156

126157
</Project>

scripts/dotnet.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ def build(self,
308308
target_framework_monikers: list = None,
309309
output_to_bindir: bool = False,
310310
runtime_identifier: str = None,
311-
*args) -> None:
311+
args: list = None) -> None:
312312
'''Calls dotnet to build the specified project.'''
313313
if not target_framework_monikers: # Build all supported frameworks.
314314
cmdline = [
@@ -327,7 +327,7 @@ def build(self,
327327
cmdline = cmdline + ['--runtime', runtime_identifier]
328328

329329
if args:
330-
cmdline = cmdline + list(args)
330+
cmdline = cmdline + args
331331

332332
RunCommand(cmdline, verbose=verbose).run(
333333
self.working_directory)
@@ -351,7 +351,7 @@ def build(self,
351351
cmdline = cmdline + ['--runtime', runtime_identifier]
352352

353353
if args:
354-
cmdline = cmdline + list(args)
354+
cmdline = cmdline + args
355355

356356
RunCommand(cmdline, verbose=verbose).run(
357357
self.working_directory)

0 commit comments

Comments
 (0)