This commit is contained in:
swrup 2025-11-16 02:01:35 +01:00
parent 4f2e77f27f
commit dedca5b84a
134 changed files with 39 additions and 16904 deletions

View file

@ -1,3 +1,32 @@
# TODO
# - make test
# - PostgreSQL configuration (host, port, username, password, ..)
# usage:
# `make create_database`
# create a `taler-exchange` database
# `make fetch_source`
# fetch all *.sql and *.sql.in files from GNU Taler exchange repository (latest commit)
# file `exchangedb.version` contains hash of latest commit that changed
# something in exchange/src/exchangedb
# `make init`
# initialize taler-exchange database (create tables, ...)
# `taler-exchange` database must already be created
fetch_source:
git clone --depth 1 https://git.taler.net/exchange.git/ ./exchange
mv ./exchange/src/exchangedb/*.sql ./
mv ./exchange/src/exchangedb/*.sql.in ./
git log -n 1 --pretty=format:%H -- ./exchange/src/exchangedb > exchangedb.version
rm -rf ./exchange
clean_source:
rm -f ./*.sql
rm -f ./*.sql.in
dbname := taler-exchange
sql_INIT := init.sql
sql_DROP := drop.sql
sql_DATA := \
versioning.sql \
exchange-0001.sql \
@ -7,8 +36,6 @@ sql_DATA := \
exchange-0005.sql \
procedures.sql
sql_INIT := init.sql
procedures.sql: procedures.sql.in exchange_do_*.sql exchange_statistics_*.sql exchange_trigger_*.sql
chmod +w $@ 2> /dev/null || true
gcc -E -P -undef - < procedures.sql.in 2>/dev/null | sed -e "s/--.*//" | awk 'NF' - >$@
@ -43,13 +70,17 @@ clean:
rm -f exchange-0004.sql
rm $(sql_INIT)
exec: gen_init
psql --host=localhost --port=5432 --username=mte --password --dbname="taler-exchange" --file=$(sql_INIT)
# "NOTICE: function xxx() does not exist, skipping" are normal and expected
init: gen_init
psql --host=localhost --port=5432 --username=mte --password --dbname=$(dbname) --file=$(sql_INIT)
drop:
psql --host=localhost --port=5432 --username=mte --password --dbname=$(dbname) --file=$(sql_DROP)
create_database:
createdb --host=localhost --port=5432 --username=mte --password "taler-exchange"
createdb --host=localhost --port=5432 --username=mte --password $(dbname)
drop_database:
dropdb --host=localhost --port=5432 --username=mte --password "taler-exchange"
dropdb --host=localhost --port=5432 --username=mte --password $(dbname)
reset_database: drop_database create_database