From 312a866e6f787f61478e00d896b206d913b87121 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20G=C3=B6bel?= <dgoebel@techfak.uni-bielefeld.de> Date: Wed, 19 Jun 2024 08:53:46 +0000 Subject: [PATCH] Fix Dockerfile and make gravatar url in use schema mandatory #13 --- Dockerfile | 2 +- Dockerfile-Gunicorn | 1 + clowm/schemas/user.py | 8 +++++--- clowm/tests/unit/test_gravatar_url.py | 5 ++++- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Dockerfile b/Dockerfile index 5503c9f..bfe5fac 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,7 +18,7 @@ WORKDIR /home/worker/code ENV PYTHONPATH=/home/worker/code ENV PATH="/home/worker/.local/bin:${PATH}" -COPY ../start_service_uvicorn.sh ./entrypoint.sh +COPY ./start_service_uvicorn.sh ./entrypoint.sh COPY scripts/prestart.sh ./prestart.sh CMD ["./entrypoint.sh"] diff --git a/Dockerfile-Gunicorn b/Dockerfile-Gunicorn index 1dbbea7..8bfe05f 100644 --- a/Dockerfile-Gunicorn +++ b/Dockerfile-Gunicorn @@ -1,5 +1,6 @@ FROM python:3.12-slim ENV PORT=8000 +ENV OTEL_INSTRUMENTATION_HTTP_CAPTURE_HEADERS_SANITIZE_FIELDS="set-cookie" EXPOSE $PORT WORKDIR /app/ ENV PYTHONPATH=/app diff --git a/clowm/schemas/user.py b/clowm/schemas/user.py index fbc2c33..9ef39d9 100644 --- a/clowm/schemas/user.py +++ b/clowm/schemas/user.py @@ -45,12 +45,14 @@ class UserOutExtended(UserOut, UserRoles): invitation_token_created_at: int | None = Field( None, description="Timestamp when the invitation token was created as UNIX timestamp" ) - gravatar_url: URL | None = Field(default=None, description="URL to the gravatar avatar based on the users email") + gravatar_url: URL = Field(description="URL to the gravatar avatar based on the users email") @staticmethod - def generate_gravatar_url(email: str | None) -> AnyHttpUrl | None: + def generate_gravatar_url(email: str | None) -> AnyHttpUrl: if email is None: - return None + return AnyHttpUrl( + "https://gravatar.com/avatar/87a8c45825eb709ee8e453d2c0f8154e1b9bf4b45bb9b81b7662177340aa9d38" + ) return AnyHttpUrl(f"https://gravatar.com/avatar/{sha256(email.strip().lower().encode('utf-8')).hexdigest()}") @staticmethod diff --git a/clowm/tests/unit/test_gravatar_url.py b/clowm/tests/unit/test_gravatar_url.py index 9c9b2ab..da1dea7 100644 --- a/clowm/tests/unit/test_gravatar_url.py +++ b/clowm/tests/unit/test_gravatar_url.py @@ -3,7 +3,10 @@ from clowm.schemas.user import UserOutExtended class TestGravatar: def test_gravatar_url_for_none_email(self) -> None: - assert UserOutExtended.generate_gravatar_url(email=None) is None + assert ( + str(UserOutExtended.generate_gravatar_url(email=None)) + == "https://gravatar.com/avatar/87a8c45825eb709ee8e453d2c0f8154e1b9bf4b45bb9b81b7662177340aa9d38" + ) def test_gravatar_url_for_email(self) -> None: assert ( -- GitLab