From 76f997d4378145413607307d6df4c61de822f83e Mon Sep 17 00:00:00 2001 From: Oscar Krause Date: Wed, 21 Dec 2022 07:33:20 +0100 Subject: [PATCH] render README.md on index page --- Dockerfile | 1 + app/main.py | 6 ++++-- requirements.txt | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 40844d1..c3aa040 100644 --- a/Dockerfile +++ b/Dockerfile @@ -11,6 +11,7 @@ RUN apk update \ && apk del build-deps COPY app /app +COPY README.md /README.md HEALTHCHECK --start-period=30s --interval=10s --timeout=5s --retries=3 CMD curl --insecure --fail https://localhost/status || exit 1 CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "443", "--app-dir", "/app", "--proxy-headers", "--ssl-keyfile", "/app/cert/webserver.key", "--ssl-certfile", "/app/cert/webserver.crt"] diff --git a/app/main.py b/app/main.py index e09ebcc..a7cbc1d 100644 --- a/app/main.py +++ b/app/main.py @@ -12,7 +12,7 @@ from dateutil.relativedelta import relativedelta from calendar import timegm from jose import jws, jwk, jwt from jose.constants import ALGORITHMS -from starlette.responses import StreamingResponse, JSONResponse +from starlette.responses import StreamingResponse, JSONResponse, HTMLResponse import dataset from Crypto.PublicKey import RSA from Crypto.PublicKey.RSA import RsaKey @@ -53,7 +53,9 @@ def get_token(request: Request) -> dict: @app.get('/') async def index(): - return JSONResponse({'hello': 'world'}) + from markdown import markdown + content = load_file('../README.md').decode('utf-8') + return HTMLResponse(markdown(text=content, extensions=['tables', 'fenced_code', 'md_in_html', 'nl2br', 'toc'])) @app.get('/status') diff --git a/requirements.txt b/requirements.txt index d597ecb..03e8842 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,3 +4,4 @@ python-jose==3.3.0 pycryptodome==3.16.0 python-dateutil==2.8.2 dataset==1.5.2 +markdown==3.4.1