Summary: Add a legocastle job to continuously build the last 10 commits every 4 hours and report lite build binary size to scuba. Closes https://github.com/facebook/rocksdb/pull/3511 Differential Revision: D7001730 Pulled By: yiwu-arbug fbshipit-source-id: 7c8ca87c46d663c786a0d32be69ebbe7b19a5eb9main
parent
8eb1d445c3
commit
989d12313c
@ -0,0 +1,41 @@ |
||||
#!/usr/bin/env bash |
||||
# Script to report lite build binary size for latest RocksDB commits. |
||||
# Usage: |
||||
# ./report_lite_binary_size [num_recent_commits] |
||||
|
||||
num_recent_commits=${1:-10} |
||||
|
||||
echo "Computing RocksDB lite build binary size for the most recent $num_recent_commits commits." |
||||
|
||||
for ((i=0; i < num_recent_commits; i++)) |
||||
do |
||||
git checkout master~$i |
||||
commit_hash=$(git show -s --format=%H) |
||||
commit_time=$(git show -s --format=%ct) |
||||
|
||||
# It would be nice to check if scuba already have a record for the commit, |
||||
# but sandcastle don't seems to have scuba CLI installed. |
||||
|
||||
make clean |
||||
make OPT=-DROCKSDB_LITE static_lib |
||||
|
||||
if make OPT=-DROCKSDB_LITE static_lib |
||||
then |
||||
build_succeeded='true' |
||||
strip librocksdb.a |
||||
binary_size=$(stat -c %s librocksdb.a) |
||||
else |
||||
build_succeeded='false' |
||||
binary_size=0 |
||||
fi |
||||
|
||||
current_time="\"time\": $(date +%s)" |
||||
commit_hash="\"hash\": \"$commit_hash\"" |
||||
commit_time="\"commit_time\": $commit_time" |
||||
build_succeeded="\"build_succeeded\": \"$build_succeeded\"" |
||||
binary_size="\"binary_size\": $binary_size" |
||||
|
||||
scribe_log="{\"int\":{$current_time, $commit_time, $binary_size}, \"normal\":{$commit_hash, $build_succeeded}}" |
||||
echo "Logging to scribe: $scribe_log" |
||||
scribe_cat perfpipe_rocksdb_lite_build "$scribe_log" |
||||
done |
Loading…
Reference in new issue