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