Merge pull request #143 from ZeusWPI/get-it-working-again

Misc fixes
This commit is contained in:
redfast00 2019-09-12 19:06:24 +02:00 committed by GitHub
commit bbbec95b92
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 24 additions and 27 deletions

View file

@ -16,19 +16,19 @@ Be lazier today!
There is a special script to get started with the project. Just run it in the root of the project.
./first-setup.sh
This will create a virtual environment, install the necessary dependencies and will give you the option to seed the database.
If you are using a database other then sqlite you will first need to configure the correct uri to the database in the generated 'config.py' file.
Afterwards upgrade the database to the latest version using
If you are using a database other then sqlite you will first need to configure the correct URI to the database in the generated 'config.py' file.
Afterwards upgrade the database to the latest version using
cd app
python haldis.py db upgrade
python3 app.py db upgrade
You can now still seed the database by running
./populate-db.sh
in the root folder of the project.
@ -38,15 +38,15 @@ Activate the virtual environment using
Finally run the webserver with
python app/haldis.py runserver
python3 app/app.py runserver
## Development
### Changing the database
1. Update models located in 'app/models.py'
2. Run `python app/haldis.py db migrate` to create a new migration.
3. Apply the changes to the database using `python app/haldis.py db upgrade`
2. Run `python app/app.py db migrate` to create a new migration.
3. Apply the changes to the database using `python app/app.py db upgrade`
### Adding dependencies/libraries
@ -61,4 +61,4 @@ For more information about managing the dependencies see [jazzband/pip-tools: A
## Authors
* **Feliciaan De Palmenaer** - *Initial work* - [Github](https://github.com/feliciaan)
* **Feliciaan De Palmenaer** - *Initial work* - [Github](https://github.com/feliciaan)

View file

@ -6,7 +6,7 @@ class Configuration(object):
SQLALCHEMY_TRACK_MODIFICATIONS = False
DEBUG = True
SECRET_KEY = "<change>"
SLACK_WEBHOOK = "<add url>"
SLACK_WEBHOOK = None
LOGFILE = "haldis.log"
ZEUS_KEY = "tomtest"
ZEUS_SECRET = "blargh"

View file

@ -22,30 +22,29 @@ def post_order_to_webhook(order_item) -> None:
remaining_minutes(order_item.stoptime),
url_for("order_bp.order", id=order_item.id, _external=True),
)
webhookthread = WebhookSenderThread(message)
webhookthread = WebhookSenderThread(message, app.config["SLACK_WEBHOOK"])
webhookthread.start()
class WebhookSenderThread(Thread):
def __init__(self, message: str) -> None:
def __init__(self, message: str, url: str) -> None:
super(WebhookSenderThread, self).__init__()
self.message = message
self.url = url
def run(self) -> None:
self.slack_webhook()
def slack_webhook(self) -> None:
js = json.dumps({"text": self.message})
url = app.config["SLACK_WEBHOOK"]
if len(url) > 0:
requests.post(url, data=js)
if self.url:
requests.post(url, json={"text": self.message})
else:
app.logger.info(str(js))
print(self.message)
def remaining_minutes(value) -> str:
delta = value - datetime.now()
if delta.total_seconds() < 0:
return "0"
minutes, _ = divmod(delta.total_seconds(), 60)
minutes = delta.total_seconds() // 60
return "%02d" % minutes

View file

@ -1,18 +1,16 @@
#!/usr/bin/env python
#!/usr/bin/env python3
import os
import sys
from app import create_app
INTERP = os.path.expanduser("~/env/bin/python")
INTERP = os.path.expanduser("~/env/bin/python3")
if sys.executable != INTERP:
os.execl(INTERP, INTERP, *sys.argv)
sys.path.append(os.getcwd())
application = create_app()
from app import create_app
application = create_app().app
# For running on the server with passenger etc
if __name__ == "__main__":
application.run(port=8000)
application.run()