From 4f2e77f27f15b17fc197205b0e61f96afa3501ce Mon Sep 17 00:00:00 2001 From: swrup Date: Tue, 11 Nov 2025 10:03:56 +0100 Subject: [PATCH] add sql Makefile --- .gitignore | 5 +++++ include/sql/Makefile | 36 ++++++++++++++++++++++++++++++++++++ src/database.ml | 2 ++ src/mte.ml | 3 ++- 4 files changed, 45 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index e35d8850..8af07741 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,6 @@ _build +include/sql/exchange-0002.sql +include/sql/exchange-0003.sql +include/sql/exchange-0004.sql +include/sql/procedures.sql +include/sql/init.sql diff --git a/include/sql/Makefile b/include/sql/Makefile index dfcea0c1..7b71d37b 100644 --- a/include/sql/Makefile +++ b/include/sql/Makefile @@ -1,3 +1,14 @@ +sql_DATA := \ + versioning.sql \ + exchange-0001.sql \ + exchange-0002.sql \ + exchange-0003.sql \ + exchange-0004.sql \ + 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' - >$@ @@ -17,3 +28,28 @@ exchange-0004.sql: exchange-0004.sql.in 0004-*.sql chmod +w $@ 2> /dev/null || true gcc -E -P -undef - < exchange-0004.sql.in 2>/dev/null | sed -e "s/--.*//" | awk 'NF' - >$@ chmod ugo-w $@ + +gen_sql: procedures.sql exchange-0002.sql exchange-0003.sql exchange-0004.sql + +.DEFAULT_GOAL := gen_init +gen_init: gen_sql $(sql_DATA) + @printf "" > $(sql_INIT) + @cat $(sql_DATA) >> $(sql_INIT) + +clean: + rm -f procedures.sql + rm -f exchange-0002.sql + rm -f exchange-0003.sql + 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) + +create_database: + createdb --host=localhost --port=5432 --username=mte --password "taler-exchange" + +drop_database: + dropdb --host=localhost --port=5432 --username=mte --password "taler-exchange" + +reset_database: drop_database create_database diff --git a/src/database.ml b/src/database.ml index bb7e5ec5..140d0082 100644 --- a/src/database.ml +++ b/src/database.ml @@ -23,3 +23,5 @@ let test req server _ = let str = Fmt.str "Database error: %a." Caqti_error.pp err in let* () = Vif.Response.with_string req str in Vif.Response.respond `Internal_server_error + +let init = test diff --git a/src/mte.ml b/src/mte.ml index 15220878..8f87a878 100644 --- a/src/mte.ml +++ b/src/mte.ml @@ -113,7 +113,8 @@ let routes = get (rel /?? nil) --> hello; get (rel / "terms" /?? nil) --> Static.terms; get (rel / "privacy" /?? nil) --> Static.privacy; get (rel / "management" / "keys" /?? nil) --> Management.keys; - get (rel / "db" /?? nil) --> Database.test; + get (rel / "db_test" /?? nil) --> Database.test; + get (rel / "db_init" /?? nil) --> Database.init; ] let () =