summaryrefslogtreecommitdiff
path: root/Makefile.am
blob: 44f47b8e529022b752e25c9ac7aaddcc87ee4b91 (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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# This script is in the public domain.

SUBDIRS = . talerbank
if ENABLE_DOC
SUBDIRS += doc
endif

EXTRA_DIST = \
 requirements.txt \
 taler-bank-manage.in \
 bank.wsgi.in \
 setup.py \
 contrib/nginx/django_nginx.conf \
 bank.conf \
 bank-check.conf \
 bank-check-alt-badamount.conf \
 bank-check-alt-nocurrency.conf

pkgcfgdir= $(prefix)/share/taler/config.d/

pkgcfg_DATA = \
  bank.conf

pkgdata_DATA = \
  bank.wsgi

# link package under prefix to source tree
.PHONY: install-dev
install-dev:
	@$(PYTHON) ./install-dev.py

env:
	@export DJANGO_SETTINGS_MODULE="talerbank.settings" \
         TALER_PREFIX="@prefix@" \
         TALER_CONFIG_FILE="bank-check.conf" && bash
FMT="\n\n%s\n%s\n"
SEPARATOR=`printf "%s%s" \
  "----------------------------------------------" \
  "------------------------"`
PYTHONPATH_APPEND=`printf "%s" \
  "@prefix@/lib/python@PYTHON_VERSION@/site-packages"`

check:
	@export DJANGO_SETTINGS_MODULE="talerbank.settings" \
         TALER_PREFIX="@prefix@" \
         TALER_CONFIG_FILE="bank-check.conf" \
         PYTHONPATH="${PYTHONPATH_APPEND}:${PYTHONPATH}" \
         && python3 -m django test --no-input talerbank.app.tests
	@printf ${FMT} ${SEPARATOR} \
           "Testing against non existent config file"
	@export DJANGO_SETTINGS_MODULE="talerbank.settings" \
         TALER_PREFIX="@prefix@" \
         TALER_CONFIG_FILE="non-existent.conf" \
         PYTHONPATH="${PYTHONPATH_APPEND}:${PYTHONPATH}" \
         && python3 \
           -m django test \
           --no-input talerbank.app.tests ; \
           test 3 = $$?
	@printf ${FMT} ${SEPARATOR} \
           "Testing against bad db string"
	@export DJANGO_SETTINGS_MODULE="talerbank.settings" \
         TALER_PREFIX="@prefix@" \
         TALER_CONFIG_FILE="unused.conf" \
         TALER_BANK_ALTDB="bad db string" \
         PYTHONPATH="${PYTHONPATH_APPEND}:${PYTHONPATH}" \
         && python3 \
           -m django test \
           --no-input \
           talerbank.app.tests_alt.BadDatabaseStringTestCase ; \
         test 2 = $$?
	@printf ${FMT} ${SEPARATOR} \
            "Testing against bad amount"
	@export DJANGO_SETTINGS_MODULE="talerbank.settings" \
         TALER_PREFIX="@prefix@" \
         TALER_CONFIG_FILE="bank-check-alt-badamount.conf" \
         PYTHONPATH="${PYTHONPATH_APPEND}:${PYTHONPATH}" \
         && python3 \
           -m django test \
           --no-input \
           talerbank.app.tests_alt.BadMaxDebitOptionTestCase
	@printf ${FMT} ${SEPARATOR} \
           "Testing against db not found"
	@export DJANGO_SETTINGS_MODULE="talerbank.settings" \
         TALER_PREFIX="@prefix@" \
         TALER_BANK_ALTDB="postgres:///idontexist" \
         PYTHONPATH="${PYTHONPATH_APPEND}:${PYTHONPATH}" \
         && python3 ./taler-bank-manage --config=bank-check.conf serve-uwsgi ; \
         test 4 = $$?
	@printf ${FMT} ${SEPARATOR} \
           "Testing against no currency in config"
	@export TALER_BASE_CONFIG="/tmp" \
         DJANGO_SETTINGS_MODULE="talerbank.settings" \
         TALER_PREFIX="@prefix@" \
         TALER_CONFIG_FILE="bank-check-alt-nocurrency.conf" \
         PYTHONPATH="${PYTHONPATH_APPEND}:${PYTHONPATH}" \
         && python3 \
           -m django test \
           --no-input \
           talerbank.app.tests_alt.NoCurrencyOptionTestCase ; \
         test 3 = $$?


# install into prefix
install-exec-hook:
	@pip3 install . @DEBIAN_PIP3_SYSTEM@ \
         --target="${PYTHONPATH_APPEND}" \
         --install-option="--install-scripts=@prefix@/bin"
	@# force update when sources changed
	@pip3 install . --target="${PYTHONPATH_APPEND}" \
         @DEBIAN_PIP3_SYSTEM@ --upgrade --no-deps \
         --install-option="--install-scripts=@prefix@/bin"

pylint:
	@pylint --load-plugins pylint_django talerbank/

app:
	@tar czf taler-bank-$(PACKAGE_VERSION)-app.tgz \
         `cat INCLUDE.APP`