42 lines
1,017 B
Python
Executable file
42 lines
1,017 B
Python
Executable file
#!/usr/bin/env python3
|
|
from flask import Flask, render_template, redirect, url_for
|
|
import requests
|
|
import os
|
|
|
|
app = Flask(__name__)
|
|
|
|
@app.route("/imprint")
|
|
def root():
|
|
return render_template("imprint.html")
|
|
|
|
@app.route("/about")
|
|
def about():
|
|
return render_template("about.html")
|
|
|
|
@app.route("/")
|
|
def homepage():
|
|
return render_template("homepage.html")
|
|
|
|
@app.route("/monitoring")
|
|
def monitoring():
|
|
git_url = os.environ['GIT_URL']
|
|
website_url = os.environ['WEBSITE_URL']
|
|
return render_template("monitoring.html", git_status = get_status(git_url), website_status = get_status(website_url) )
|
|
|
|
def get_status_code(link):
|
|
requested_site = requests.get(link)
|
|
return requested_site.status_code
|
|
|
|
def get_status(link):
|
|
try:
|
|
match get_status_code(link):
|
|
case 200:
|
|
return "ONLINE"
|
|
case _:
|
|
return "ERROR"
|
|
except:
|
|
return "OFFLINE"
|
|
|
|
if __name__ == "__main__":
|
|
mode = os.environ['DEBUG_MODE']
|
|
app.run(debug=mode)
|