Skip to content

Commit c8b228c

Browse files
Merge pull request ceph#66554 from NitzanMordhai/wip-nitzan-improve-corpus-import-script
script/gen-corpus: cleanup and improve readability and performance
2 parents e870ed8 + e0a671a commit c8b228c

2 files changed

Lines changed: 16 additions & 22 deletions

File tree

src/script/gen-corpus.sh

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,14 @@ set -ex
66

77
function get_jobs() {
88
local jobs=$(nproc)
9-
if [ $jobs -ge 8 ] ; then
10-
echo 8
11-
else
12-
echo $jobs
13-
fi
9+
[ $jobs -gt 8 ] && jobs=8
10+
echo $jobs
1411
}
1512

1613
[ -z "$BUILD_DIR" ] && BUILD_DIR=build
1714

1815
function build() {
1916
local encode_dump_path=$1
20-
shift
2117

2218
./do_cmake.sh \
2319
-DWITH_MGR_DASHBOARD_FRONTEND=OFF \
@@ -54,9 +50,7 @@ function run() {
5450

5551
function import_corpus() {
5652
local encode_dump_path=$1
57-
shift
58-
local version=$1
59-
shift
53+
local version=$2
6054

6155
# import the corpus
6256
../src/test/encoding/import.sh \
@@ -77,18 +71,18 @@ function verify() {
7771

7872
function commit_and_push() {
7973
local version=$1
80-
shift
8174

8275
pushd ../ceph-object-corpus
8376
git checkout -b wip-${version}
8477
git add archive/${version}
8578
git commit --signoff --message=${version}
86-
git remote add cc git@github.com:ceph/ceph-object-corpus.git
79+
git remote get-url cc &>/dev/null || git remote add cc git@github.com:ceph/ceph-object-corpus.git
8780
git push cc wip-${version}
8881
popd
8982
}
9083

9184
encode_dump_path=$(mktemp -d)
85+
trap "rm -rf '$encode_dump_path'" EXIT
9286
build $encode_dump_path
9387
echo "generating corpus objects.."
9488
run
@@ -99,4 +93,4 @@ echo "verifying imported corpus.."
9993
verify
10094
echo "all good, pushing to remote repo.."
10195
commit_and_push ${version}
102-
rm -rf encode_dump_path
96+

src/test/encoding/import.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,18 @@ archive=$3
66

77
[ -d "$archive" ] && [ -d "$src" ] || echo "usage: $0 <srcdir> <version> <archive>"
88

9-
[ -d "$archive/$ver" ] || mkdir "$archive/$ver"
9+
mkdir -p "$archive/$ver"
1010

11-
dest_dir="$archive/$ver/objects"
11+
dest_base="$archive/$ver/objects"
1212

13-
[ -d "$dest_dir" ] || mkdir "$dest_dir"
13+
mkdir -p "$dest_base"
1414

15-
for f in `find $src -type f`
16-
do
17-
n=`basename $f`
18-
type=`echo $n | sed 's/__.*//'`
19-
md=`md5sum $f | awk '{print $1}'`
15+
find "$src" -type f -exec md5sum {} + | \
16+
while read -r md_hash path; do
17+
filename=$(basename "$path")
18+
prefix=$(echo "$filename" | cut -d'_' -f1)
19+
dest_dir="$dest_base/$prefix"
2020

21-
[ -d "$dest_dir/$type" ] || mkdir $dest_dir/$type
22-
[ -e "$dest_dir/$type/$md" ] || cp $f $dest_dir/$type/$md
21+
mkdir -p "$dest_dir"
22+
[ -e "$dest_dir/$md_hash" ] || cp "$path" "$dest_dir/$md_hash"
2323
done

0 commit comments

Comments
 (0)