Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / src / test / encoding / generate-corpus-objects.sh
1 #!/bin/bash -ex
2
3 BDIR=`pwd`
4
5 p=$1
6 echo path $p
7 test ! -d $p
8 mkdir $p
9 strings bin/ceph-osd | grep "^$p/%s__%d.%x"
10
11 v=`git describe | cut -c 2-`
12 echo version $v
13
14 echo 'binaries look ok, vstarting'
15 echo
16
17 MON=3 MDS=3 OSD=5 MDS=3 MGR=2 RGW=1 ../src/vstart.sh -x -n -l --bluestore -e
18
19 export PATH=bin:$PATH
20
21 # do some work to generate a hopefully braod set of object instances
22
23 echo 'starting some background work'
24 ../qa/workunits/rados/test.sh &
25 ../qa/workunits/rbd/test_librbd.sh &
26 ../qa/workunits/libcephfs/test.sh &
27 ../qa/workunits/rgw/run-s3tests.sh &
28 ceph-syn --syn makedirs 3 3 3 &
29
30 echo 'waiting a bit'
31
32 sleep 10
33 echo 'triggering some recovery'
34
35 kill -9 `cat out/osd.0.pid`
36 sleep 10
37 ceph osd out 0
38 sleep 10
39 init-ceph start osd.0
40 ceph osd in 0
41
42 sleep 5
43 echo 'triggering mds work'
44 bin/ceph mds fail 0
45
46 echo 'waiting for worker to join (and ignoring errors)'
47 wait || true
48
49 echo 'importing'
50 ../src/test/encoding/import.sh $p $v ../ceph-object-corpus/archive
51
52 for d in ../ceph-object-corpus/archive/$v/objects/*
53 do
54     echo prune $d
55     ../ceph-object-corpus/bin/prune.sh $d 25
56 done
57
58 echo 'done'