From 854b5ccc14830e37037c47fb6731416960891e94 Mon Sep 17 00:00:00 2001 From: emmatveev Date: Sun, 17 Nov 2024 01:54:18 +0300 Subject: [PATCH 1/7] up --- .deploy/deploy-dev.yaml | 2 +- .gitea/workflows/deploy-dev.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.deploy/deploy-dev.yaml b/.deploy/deploy-dev.yaml index 980513d..e1d43a9 100644 --- a/.deploy/deploy-dev.yaml +++ b/.deploy/deploy-dev.yaml @@ -20,4 +20,4 @@ services: networks: common-infra-nginx: - external: true \ No newline at end of file + external: true diff --git a/.gitea/workflows/deploy-dev.yaml b/.gitea/workflows/deploy-dev.yaml index fe6e8c3..547e4f0 100644 --- a/.gitea/workflows/deploy-dev.yaml +++ b/.gitea/workflows/deploy-dev.yaml @@ -41,4 +41,4 @@ jobs: env: MONGO_PASSWORD_DEV: ${{ secrets.MONGO_PASSWORD_DEV }} QUEUES_TOKEN_DEV: ${{ secrets.QUEUES_TOKEN_DEV }} - run: docker stack deploy --with-registry-auth -c ./.deploy/deploy-dev.yaml infra \ No newline at end of file + run: docker stack deploy --with-registry-auth -c ./.deploy/deploy-dev.yaml infra From e58866f76557c18cd32b8184b0a8e4f98136b17c Mon Sep 17 00:00:00 2001 From: emmatveev Date: Sun, 17 Nov 2024 02:27:27 +0300 Subject: [PATCH 2/7] up --- main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.py b/main.py index 3e902cf..d704da5 100644 --- a/main.py +++ b/main.py @@ -12,7 +12,7 @@ from app.storage import mongo app = fastapi.FastAPI() -app.add_middleware(check_token.CheckToken) +app.add_middleware(check_token.CheckToken()) app.include_router(take.router) app.include_router(put.router) From 46b0b49c928884fac858bfb5163b305aff491f0e Mon Sep 17 00:00:00 2001 From: emmatveev Date: Sun, 17 Nov 2024 02:32:25 +0300 Subject: [PATCH 3/7] up --- main.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/main.py b/main.py index d704da5..f3b6552 100644 --- a/main.py +++ b/main.py @@ -1,7 +1,6 @@ import fastapi import uvicorn - -from app.middlewares import check_token +import os from app.routers import take from app.routers import put @@ -10,9 +9,19 @@ from app.routers import finish from app.storage import mongo +QUEUES_TOKEN = os.getenv('QUEUES_TOKEN') + app = fastapi.FastAPI() -app.add_middleware(check_token.CheckToken()) + +@app.middleware('http') +async def check_token(request: fastapi.Request, call_next): + if QUEUES_TOKEN: + token = request.headers.get('X-Queues-Token') + if not token or token != QUEUES_TOKEN: + raise fastapi.HTTPException(403) + return await call_next(request) + app.include_router(take.router) app.include_router(put.router) From dc20588b1823c704c05ffdf383d3bce7d9779e4e Mon Sep 17 00:00:00 2001 From: emmatveev Date: Sun, 17 Nov 2024 02:32:45 +0300 Subject: [PATCH 4/7] up --- app/middlewares/__init__.py | 0 app/middlewares/check_token.py | 13 ------------- 2 files changed, 13 deletions(-) delete mode 100644 app/middlewares/__init__.py delete mode 100644 app/middlewares/check_token.py diff --git a/app/middlewares/__init__.py b/app/middlewares/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/app/middlewares/check_token.py b/app/middlewares/check_token.py deleted file mode 100644 index 3c017b6..0000000 --- a/app/middlewares/check_token.py +++ /dev/null @@ -1,13 +0,0 @@ -import fastapi -import os - - -QUEUES_TOKEN = os.getenv('QUEUES_TOKEN') - -class CheckToken: - async def __call__(self, request: fastapi.Request, call_next): - if QUEUES_TOKEN: - token = request.headers.get('X-Queues-Token') - if not token or token != QUEUES_TOKEN: - raise fastapi.HTTPException(403) - return await call_next(request) From 2adedd9e6fafb8751ecae19a8385f2ba2c7479b7 Mon Sep 17 00:00:00 2001 From: emmatveev Date: Sun, 17 Nov 2024 02:35:13 +0300 Subject: [PATCH 5/7] up --- main.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.py b/main.py index f3b6552..05768b2 100644 --- a/main.py +++ b/main.py @@ -19,7 +19,7 @@ async def check_token(request: fastapi.Request, call_next): if QUEUES_TOKEN: token = request.headers.get('X-Queues-Token') if not token or token != QUEUES_TOKEN: - raise fastapi.HTTPException(403) + return fastapi.JSONResponse(status_code=403, content={'message': 'token is not provided or incorrect'}) return await call_next(request) From 2bd7f7ea81592c1783f0b5f6ab2f022138615a59 Mon Sep 17 00:00:00 2001 From: emmatveev Date: Sun, 17 Nov 2024 02:36:46 +0300 Subject: [PATCH 6/7] up --- main.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/main.py b/main.py index 05768b2..8c17be6 100644 --- a/main.py +++ b/main.py @@ -8,6 +8,8 @@ from app.routers import finish from app.storage import mongo +from fastapi import responses + QUEUES_TOKEN = os.getenv('QUEUES_TOKEN') @@ -19,7 +21,7 @@ async def check_token(request: fastapi.Request, call_next): if QUEUES_TOKEN: token = request.headers.get('X-Queues-Token') if not token or token != QUEUES_TOKEN: - return fastapi.JSONResponse(status_code=403, content={'message': 'token is not provided or incorrect'}) + return responses.JSONResponse(status_code=403, content={'message': 'token is not provided or incorrect'}) return await call_next(request) From b19f4532ff2c8b3d454808b466dd58b5ad9467db Mon Sep 17 00:00:00 2001 From: emmatveev Date: Sun, 17 Nov 2024 12:08:53 +0300 Subject: [PATCH 7/7] fix --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 28c0755..224e023 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.10 +FROM python:3.12 RUN mkdir /usr/src/app WORKDIR /usr/src/app