-
Notifications
You must be signed in to change notification settings - Fork 3
/
Makefile
81 lines (71 loc) · 2.07 KB
/
Makefile
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# for syntax checks
BASH_SCRIPTS = \
scripts/* \
functions/* \
etc/ngcp-ngcpcfg/ngcpcfg.cfg \
sbin/ngcpcfg
PERL_SCRIPTS = \
lib/NGCP/Template.pm \
helper/del-value \
helper/set-value \
helper/sort-yml \
helper/sync-db \
helper/tt2-process \
helper/validate-yml helper/fileformat_version \
sbin/ngcp-instances-validator \
sbin/ngcp-network \
sbin/ngcp-network-validator \
sbin/ngcp-sync-db-creds \
sbin/ngcp-sync-db-grants \
# EOL
YAML_SCHEMAS = \
schemas/instances.yml \
schemas/sites.yml \
# EOL
RESULTS ?= results
all: docs
docs: man
man:
asciidoctor -d manpage -b manpage docs/ngcpcfg.txt
pod2man --section=8 sbin/ngcp-network > docs/ngcp-network.8
pod2man --section=8 sbin/ngcp-network-validator > docs/ngcp-network-validator.8
pod2man --section=8 sbin/ngcp-sync-db-creds > docs/ngcp-sync-db-creds.8
pod2man --section=8 sbin/ngcp-sync-db-grants > docs/ngcp-sync-db-grants.8
pod2man --section=3pm lib/NGCP/Template.pm > docs/NGCP::Template.3pm
pod2man --section=3pm lib/NGCP/Template/Object.pm > docs/NGCP::Template::Object.3pm
pod2man --section=3pm lib/NGCP/Template/Plugin/Utils.pm > docs/NGCP::Template::Plugin::Utils.3pm
clean:
rm -f docs/*.8
rm -f docs/*.3pm
rm -rf t/__pycache__ t/fixtures/__pycache__/ t/*.pyc
dist-clean: clean
rm -rf results
# check for syntax errors
syntaxcheck: shellcheck perlcheck yamlcheck
shellcheck:
@echo -n "Checking for shell syntax errors"; \
for SCRIPT in $(BASH_SCRIPTS); do \
test -r $${SCRIPT} || continue ; \
bash -n $${SCRIPT} || exit ; \
echo -n "."; \
done; \
echo " done."; \
perlcheck:
@echo "Checking for perl syntax errors:"; \
for SCRIPT in $(PERL_SCRIPTS); do \
test -r $${SCRIPT} || continue ; \
perl -CSD -Ilib -w -c $${SCRIPT} || exit ; \
done; \
echo "-> perl check done."; \
yamlcheck:
@echo "Checking for yaml syntax errors:"; \
for YAML in $(YAML_SCHEMAS); do \
test -r $${YAML} || continue ; \
perl -MYAML::XS -E "YAML::XS::LoadFile('$${YAML}')" || exit ; \
done; \
echo "-> yaml check done."; \
:
test:
mkdir -p $(RESULTS)
cd t ; py.test-3 --junit-xml=$(RESULTS)/pytest.xml -vv -l
# EOF