diff --git a/.gitignore b/.gitignore index 2549af3..0155138 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ -.idea +/.idea/ +/build/ *.sql *.sqlite3 +*.deb diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..e16cf2d --- /dev/null +++ b/Makefile @@ -0,0 +1,8 @@ + +.PHONY: deb clean + +deb: clean + pkg/deb.sh + +clean: + sudo rm -rf build elwig-backend_*.deb diff --git a/pkg/deb.sh b/pkg/deb.sh new file mode 100755 index 0000000..c4815b3 --- /dev/null +++ b/pkg/deb.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +set -x +VERSION=$(grep "^VERSION" src/elwig-backend | grep -oE "[0-9]+\.[0-9]+\.[0-9]+") +REV="${1:-1}" +mkdir -p build/ + +mkdir -p build/usr/bin/ +cp src/elwig-backend build/usr/bin + +mkdir -p build/DEBIAN/ +echo -n "\ +Package: elwig-backend +Version: ${VERSION} +Architecture: all +Maintainer: Lorenz Stechauner +Depends: python3 +Homepage: https://git.necronda.net/winzer/elwig-backend +Description: Local backend for Elwig's REST API +" > build/DEBIAN/control + +chmod 0755 build/usr/bin/* +sudo chown root:root -R build/ +dpkg --build build/ "elwig-backend_${VERSION}-${REV}_all.deb" diff --git a/src/elwig-backend b/src/elwig-backend index cbb5075..6efc2f9 100755 --- a/src/elwig-backend +++ b/src/elwig-backend @@ -15,10 +15,11 @@ import urllib.parse import gzip +VERSION: str = '0.0.1' + CNX: sqlite3.Cursor USER_FILE: str - OPEN_API_DOC: str = '''{ "openapi": "3.1.0", "info": { @@ -26,7 +27,7 @@ OPEN_API_DOC: str = '''{ "summary": "Elektronische Winzergenossenschaftsverwaltung (\\"Electronic Management for Vintners'/Winemakers' Cooperatives\\")", "description": "", "contact": {"email": "contact@necronda.net"}, - "version": "0.0.1" + "version": "[VERSION]" }, "servers": [{ "url": "https://wgm.elwig.at/elwig/api/v1", @@ -409,7 +410,7 @@ OPEN_API_DOC: str = '''{ } } } -''' +'''.replace('[VERSION]', VERSION) class BadRequestError(Exception):