@@ -1234,16 +1234,65 @@ jobs:
1234
1234
- checkout
1235
1235
- attach_workspace :
1236
1236
at : .
1237
+ - run :
1238
+ name : Install dependencies of helper scripts
1239
+ command : |
1240
+ sudo apt update
1241
+ sudo apt install python3-pip --assume-yes --no-install-recommends
1242
+ python3 -m pip install requests --user
1237
1243
- run :
1238
1244
name : Combine benchmark reports
1239
1245
command : cat reports/externalTests/benchmark-*.json | scripts/externalTests/merge_benchmarks.sh > reports/externalTests/all-benchmarks.json
1240
1246
- run :
1241
1247
name : Summarize reports
1242
1248
command : cat reports/externalTests/all-benchmarks.json | scripts/externalTests/summarize_benchmarks.sh > reports/externalTests/summarized-benchmarks.json
1249
+ - run :
1250
+ name : Download reports from base branch
1251
+ command : |
1252
+ if [[ $CIRCLE_PULL_REQUEST != "" ]]; then
1253
+ mkdir reports/externalTests/base-branch/
1254
+ cd reports/externalTests/base-branch/
1255
+
1256
+ pr_id=$(echo "$CIRCLE_PULL_REQUEST" | sed 's|\(.*\)\/||')
1257
+ scripts_dir=../../../scripts
1258
+
1259
+ "${scripts_dir}/externalTests/download_benchmarks.py" --base-of-pr "$pr_id"
1260
+ fi
1261
+ - run :
1262
+ name : Diff benchmarks
1263
+ command : |
1264
+ if [[ $CIRCLE_PULL_REQUEST != "" ]]; then
1265
+ cd reports/externalTests/
1266
+ mkdir diff/
1267
+ scripts_dir=../../scripts
1268
+
1269
+ "${scripts_dir}/externalTests/benchmark_diff.py" table \
1270
+ --output-format markdown \
1271
+ --style humanized \
1272
+ base-branch/summarized-benchmarks-*.json \
1273
+ summarized-benchmarks.json > diff/benchmark-diff-summarized-table-markdown-humanized.md
1274
+ "${scripts_dir}/externalTests/benchmark_diff.py" table \
1275
+ --output-format markdown \
1276
+ --style absolute \
1277
+ base-branch/summarized-benchmarks-*.json \
1278
+ summarized-benchmarks.json > diff/benchmark-diff-summarized-table-markdown-absolute.md
1279
+ "${scripts_dir}/externalTests/benchmark_diff.py" inplace \
1280
+ --style absolute \
1281
+ base-branch/summarized-benchmarks-*.json \
1282
+ summarized-benchmarks.json > diff/benchmark-diff-summarized-inplace-absolute.md
1283
+ "${scripts_dir}/externalTests/benchmark_diff.py" inplace \
1284
+ --style absolute \
1285
+ base-branch/all-benchmarks-*.json \
1286
+ all-benchmarks.json > diff/benchmark-diff-all-table-inplace-absolute.md
1287
+ fi
1243
1288
- store_artifacts :
1244
1289
path : reports/externalTests/all-benchmarks.json
1245
1290
- store_artifacts :
1246
1291
path : reports/externalTests/summarized-benchmarks.json
1292
+ - store_artifacts :
1293
+ path : reports/externalTests/diff/
1294
+ - store_artifacts :
1295
+ path : reports/externalTests/base-branch/
1247
1296
1248
1297
b_win : &b_win
1249
1298
<< : *base_win_powershell_large
0 commit comments