add start/stop targets
[irspy-moved-to-github.git] / zebra / Makefile
1
2 IRSPY_ARCHIVE=          records-2013-08-13
3 IRSPY_ARCHIVE_EXT=      .tar.gz
4 DUMP_DIR=               irspy-dump
5 ZEBRA_DIR=              db
6 ZEBRAIDX=               zebraidx-2.0 
7 ZEBRAIDX_TEST=          zebraidx-2.0 -c zebra-test.cfg
8 IRSPY_DATABASE=         $${IRSpyDbName-"localhost:8018/IR-Explain---1"}
9 ZEBRA_LOGFILE=          irspy-zebra.log
10 ZEBRA_PID_FILE=         ${ZEBRA_DIR}/lock/zebrasrv.pid
11
12
13 # debugging
14 ZEBRA_TEST_DIR=         db-test
15
16 DATE:=  $(shell date '+%Y-%m-%d')
17
18 all: help
19
20
21 test:
22         xmllint --noout --schema zeerex-2.0.xsd zeerex.xml
23
24 terse.properties: pqf.properties
25         sed -n 's/#.*//; s/[    ]*//; s/[       ][      ]*/ /g; /./p' $? > $@
26
27 newdb:
28         tar xzf ${DUMP_DIR}/${IRSPY_ARCHIVE}${IRSPY_ARCHIVE_EXT}
29         mkdir -p ${ZEBRA_DIR}/lock ${ZEBRA_DIR}/register ${ZEBRA_DIR}/shadow ${ZEBRA_DIR}/tmp
30         ${ZEBRAIDX} init
31         ${ZEBRAIDX} update zeerex.xml
32         ${ZEBRAIDX} update ${IRSPY_ARCHIVE}
33         ${ZEBRAIDX} commit
34
35 newdb-test:
36         tar xzf ${DUMP_DIR}/${IRSPY_ARCHIVE}${IRSPY_ARCHIVE_EXT}
37         mkdir -p ${ZEBRA_TEST_DIR}/lock ${ZEBRA_TEST_DIR}/register ${ZEBRA_TEST_DIR}/shadow ${ZEBRA_TEST_DIR}/tmp
38         ${ZEBRAIDX_TEST} init
39         ${ZEBRAIDX_TEST} update zeerex-test.xml
40         ${ZEBRAIDX_TEST} update ${IRSPY_ARCHIVE}
41         ${ZEBRAIDX_TEST} commit
42
43 # note: the test database use localhost:8019/IR-Explain---1
44 dump:
45         rm -rf records-${DATE}.old
46         -test -e records-${DATE} && mv records-${DATE} records-${DATE}.old
47         mkdir records-${DATE}
48         cd records-${DATE} && ../../bin/irspy-dump.pl ${IRSPY_DATABASE}
49         cd records-${DATE} && ( for i in *.xml; do tidy -xml -i -m -w 140 $$i; done ) > /dev/null 2>&1 
50         tar cf - records-${DATE} | gzip > records-${DATE}.tar.gz
51         
52 clean:
53         rm -f terse.properties
54
55 start-zebra:
56         zebrasrv-2.0 -f yazserver.xml > ${ZEBRA_LOGFILE} 2>&1 &
57
58 stop-zebra:
59         kill `cat ${ZEBRA_PID_FILE}`
60         sleep 0.5
61         -kill -9 `cat ${ZEBRA_PID_FILE}`
62
63 distclean: clean
64         rm -rf ${IRSPY_ARCHIVE} ${ZEBRA_DIR} ${ZEBRA_DIR} ${ZEBRA_TEST_DIR} ${ZEBRA_LOGFILE}
65
66 help:
67         @echo "make [ dump | test | newdb | newdb-test ]"
68         @echo "     [ start-zebra | stop-zebra ]"
69         @echo "     [ clean | distclean ]"
70