From 94bcc68b780def32c96537746ebe0fa42ae7a8e8 Mon Sep 17 00:00:00 2001 From: armistace Date: Thu, 28 Mar 2024 14:03:04 +1000 Subject: [PATCH] naughty write to main for production --- flask.Dockerfile | 8 +++++--- requirements.txt | 1 + src/flask/pool_data.py | 12 +++++++++--- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/flask.Dockerfile b/flask.Dockerfile index 91b103d..bc06c42 100644 --- a/flask.Dockerfile +++ b/flask.Dockerfile @@ -2,8 +2,10 @@ FROM pool_base_image as flask COPY requirements.txt . -#ENV FLASK_ENV development -#ENV FLASK_DEBUG 1 +ENV FLASK_ENV production +ENV FLASK_DEBUG 1 -ENTRYPOINT ["flask", "--app", "/pool_data_web/src/flask/pool_data", "run", "--host=0.0.0.0"] +ENTRYPOINT ["flask", "--app", "/pool_data/src/flask/pool_data", "run", "--host=0.0.0.0"] + +#ENTRYPOINT ["python", "/pool_data/src/flask/pool_data.py"] diff --git a/requirements.txt b/requirements.txt index b987434..e95fd0e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,3 +5,4 @@ beautifulsoup4 click Flask-WTF bootstrap-flask +waitress diff --git a/src/flask/pool_data.py b/src/flask/pool_data.py index 78bf084..da3fb57 100644 --- a/src/flask/pool_data.py +++ b/src/flask/pool_data.py @@ -1,12 +1,12 @@ import mongo.build_db as pool_database import mongo.query_db as pool_database_query -from flask import Flask, render_template, request, jsonify, redirect +from flask import Flask, render_template, request, jsonify, redirect, session from flask_wtf import FlaskForm, CSRFProtect from flask_bootstrap import Bootstrap5 from wtforms import StringField, SubmitField, DateField, IntegerField, PasswordField, DecimalField, RadioField, TextAreaField from wtforms.validators import DataRequired, Length - +from waitress import serve app = Flask(__name__) app.secret_key = 'testsecret' #this value will change @@ -42,6 +42,7 @@ def index(): password = form.password.data db = pool_database_query.pool_query() if db.user_check(username, password): + session['logged_in'] = True return redirect("/updater") else: return render_template("index.html", try_again=True, form=form) @@ -50,6 +51,9 @@ def index(): @app.route("/updater", methods=["GET", "POST"]) def updater(): + if 'logged_in' not in session: + return redirect("/") + query_db = pool_database_query.pool_query() query = query_db.get_top(10, "ph") form = dataForm() @@ -107,4 +111,6 @@ def user_detail(id): return jsonify([row.to_json() for row in query]) if __name__ == '__main__': - app.run(host='0.0.0.0', port=80) + #app.run(host='0.0.0.0') + serve(app, host='0.0.0.0', port=5000, url_scheme='https') +