summaryrefslogtreecommitdiff
path: root/Makefile
blob: 0b4384dce3cf9a8b35864f34d11ad078d6d15642 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
build all:
	erl -pa ../lager/ebin -make
clean:
	-rm ebin/*.beam
release: all
	test ! -f rel/db/treesize || \
		test $$(cat rel/db/treesize) = 0 && \
		rm -rf rel
	rm -rf rel
	mkdir rel
	./makerelease.erl
	(cd rel; \
		ln -s ../../plop/test .)
	cp httpd_props.conf rel
	cp catlfish.config rel
	cp storage_node.config rel
	cp storage_node_httpd.conf rel
	mkdir rel/catlfish
	mkdir rel/db
	mkdir rel/mergedb
	mkdir rel/mergedb/chains
	touch rel/mergedb/logorder
	printf "0" > rel/db/treesize
	cp -r webroot rel/catlfish
	test -d rel/catlfish/webroot/log || mkdir rel/catlfish/webroot/log

tests-prepare:
	rm -r rel/known_roots || true
	mkdir rel/known_roots
	cp tools/testcerts/roots/* rel/known_roots

	mkdir -p test/nodes/frontend-1/log
	mkdir -p test/nodes/storage-1/log
	mkdir -p test/nodes/storage-2/log
	cp test/config/frontend-1.config rel
	cp test/config/storage-1.config rel
	rm -r rel/tests || true
	mkdir -p rel/tests/machine/machine-1/db
	printf "0" > rel/tests/machine/machine-1/db/treesize
	mkdir -p rel/tests/machine/machine-2/db
	printf "0" > rel/tests/machine/machine-2/db/treesize
	touch rel/tests/machine/machine-1/db/index
	touch rel/tests/machine/machine-1/db/newentries

tests-start:
	(cd rel ; bin/run_erl -daemon ../test/nodes/frontend-1/ ../test/nodes/frontend-1/log/ "exec bin/erl -config frontend-1 -name frontend-1")
	(cd rel ; bin/run_erl -daemon ../test/nodes/storage-1/ ../test/nodes/storage-1/log/ "exec bin/erl -config storage-1 -name storage-1")
	sleep 1

tests-run:
	@(cd tools ; python testcase1.py ) || echo "Tests failed"
	@(cd tools ; python fetchallcerts.py https://127.0.0.1:8080/) || echo "Verification failed"

tests-stop:
	sleep 5
	echo "halt()." | ./rel/bin/to_erl test/nodes/frontend-1/
	echo "halt()." | ./rel/bin/to_erl test/nodes/storage-1/

tests: tests-prepare tests-start tests-run tests-stop