| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- #!/usr/bin/env bash
- # Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
- # 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
|