forked from aspnet/Benchmarks
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbaselines-scenarios.yml
More file actions
133 lines (110 loc) · 5.06 KB
/
baselines-scenarios.yml
File metadata and controls
133 lines (110 loc) · 5.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
# baseline scenarios
parameters:
- name: arguments
type: string
default: ''
- name: connection
type: string
default: ''
- name: serviceBusQueueName
type: string
default: ''
- name: serviceBusNamespace
type: string
default: ''
- name: condition
type: string
default: 'true'
# Baselines
- name: baselines
type: object
default:
- displayName: "8.0"
arguments: --application.framework net8.0 --property framework=net8.0
- displayName: "9.0"
arguments: --application.framework net9.0 --property framework=net9.0
- displayName: "10.0"
arguments: --application.framework net10.0 --property framework=net10.0 --application.noGlobalJson false
- displayName: "11.0"
arguments: --application.framework net11.0 --property framework=net11.0 --application.noGlobalJson false
# Orchard Baselines (uses release/2.2 branch for net8.0 and main#eefd4a1659cd48e56b681b5bcff2cc92b349b464 for net9.0)
- name: orchardBaselines
type: object
default:
- displayName: "8.0"
arguments: --application.framework net8.0 --property framework=net8.0 --application.source.branchOrCommit release/2.2
- displayName: "9.0"
arguments: --application.framework net9.0 --property framework=net9.0 --application.source.branchOrCommit main#eefd4a1659cd48e56b681b5bcff2cc92b349b464
- displayName: "10.0"
arguments: --application.framework net10.0 --property framework=net10.0 --application.noGlobalJson false
- displayName: "11.0"
arguments: --application.framework net11.0 --property framework=net11.0 --application.noGlobalJson false
# Scenarios
- name: scenarios
type: object
default:
# Platform
- displayName: Plaintext Platform
arguments: --scenario plaintext $(platformJobs) --load.connections 1024 --property scenario=PlaintextPlatform
- displayName: Json Platform
arguments: --scenario json $(platformJobs) --load.connections 512 --property scenario=JsonPlatform
# Plaintext
- displayName: Plaintext Minimal Apis
arguments: --scenario plaintext $(minimalJobs) --load.connections 1024 --property scenario=Plaintext
# JSon
- displayName: Json Minimal Apis
arguments: --scenario json $(minimalJobs) --load.connections 512 --property scenario=Json
- displayName: Json Mvc
arguments: --scenario mvc $(jsonJobs) --property scenario=JsonMvc
# Https
- displayName: Plaintext Https
arguments: --scenario https $(plaintextJobs) --property scenario=PlaintextHttps
- displayName: Json Https
arguments: --scenario https $(jsonJobs) --property scenario=JsonHttps
# Orchard Scenarios (separate to use orchardBaselines)
- name: orchardScenarios
type: object
default:
- displayName: Orchard - About - Sqlite
arguments: --scenario about-sqlite $(orchardJobs) --property scenario=OrchardAboutSqlite --property protocol=http
steps:
# Standard scenarios with standard baselines
- ${{ each s in parameters.scenarios }}:
- ${{ each b in parameters.baselines }}:
- task: PublishToAzureServiceBus@2
condition: succeededOrFailed()
timeoutInMinutes: 10
displayName: "${{ s.displayName }} - ${{ b.displayName }}"
inputs:
connectedServiceName: ${{ parameters.connection }}
serviceBusQueueName: ${{ parameters.serviceBusQueueName }}
serviceBusNamespace: ${{ parameters.serviceBusNamespace }}
waitForCompletion: true
useDataContractSerializer: "false"
messageBody: |
{
"name": "crank",
"condition": "(${{ parameters.condition }})",
"retries": 1,
"args": [ "${{ s.arguments }} ${{ b.arguments }} ${{ parameters.arguments }} $(azureProfile) --load.options.reuseBuild true --no-metadata --no-measurements --session $(session) --command-line-property --table BaselineBenchmarks --sql SQL_CONNECTION_STRING --cert-tenant-id SQL_SERVER_TENANTID --cert-client-id SQL_SERVER_CLIENTID --cert-path SQL_SERVER_CERT_PATH --cert-sni --chart" ]
}
# Orchard scenarios with orchard-specific baselines (release/2.2 branch for net8.0 and net9.0)
- ${{ each s in parameters.orchardScenarios }}:
- ${{ each b in parameters.orchardBaselines }}:
- task: PublishToAzureServiceBus@2
condition: succeededOrFailed()
timeoutInMinutes: 10
displayName: "${{ s.displayName }} - ${{ b.displayName }}"
inputs:
connectedServiceName: ${{ parameters.connection }}
serviceBusQueueName: ${{ parameters.serviceBusQueueName }}
serviceBusNamespace: ${{ parameters.serviceBusNamespace }}
waitForCompletion: true
useDataContractSerializer: "false"
messageBody: |
{
"name": "crank",
"condition": "(${{ parameters.condition }})",
"retries": 1,
"args": [ "${{ s.arguments }} ${{ b.arguments }} ${{ parameters.arguments }} $(azureProfile) --load.options.reuseBuild true --no-metadata --no-measurements --session $(session) --command-line-property --table BaselineBenchmarks --sql SQL_CONNECTION_STRING --cert-tenant-id SQL_SERVER_TENANTID --cert-client-id SQL_SERVER_CLIENTID --cert-path SQL_SERVER_CERT_PATH --cert-sni --chart" ]
}