From 9391368b83de1cd8c06ef6eb8f4d15a6e4e81183 Mon Sep 17 00:00:00 2001 From: Urtzi Alfaro Date: Fri, 18 Jul 2025 07:46:56 +0200 Subject: [PATCH] Fix datetime --- services/auth/app/services/auth_service.py | 10 +++++----- .../training/app/services/training_service.py | 20 +++++++++---------- shared/auth/jwt_handler.py | 10 +++++----- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/services/auth/app/services/auth_service.py b/services/auth/app/services/auth_service.py index 7884be3c..28b34493 100644 --- a/services/auth/app/services/auth_service.py +++ b/services/auth/app/services/auth_service.py @@ -6,7 +6,7 @@ Authentication service business logic - Complete implementation """ import logging -from datetime import datetime, timedelta +from datetime import datetime, timedelta, timezone from typing import Optional, Dict, Any from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy import select, update @@ -64,7 +64,7 @@ class AuthService: UserRegisteredEvent( event_id=str(user.id), service_name="auth-service", - timestamp=datetime.now(datetime.timezone.utc), + timestamp=datetime.now(timezone.utc), data={ "user_id": str(user.id), "email": user.email, @@ -114,7 +114,7 @@ class AuthService: await db.execute( update(User) .where(User.id == user.id) - .values(last_login=datetime.now(datetime.timezone.utc)) + .values(last_login=datetime.now(timezone.utc)) ) await db.commit() @@ -139,7 +139,7 @@ class AuthService: refresh_token_hash=security_manager.hash_token(refresh_token), ip_address=ip_address, user_agent=user_agent, - expires_at=datetime.now(datetime.timezone.utc) + timedelta(days=settings.JWT_REFRESH_TOKEN_EXPIRE_DAYS) + expires_at=datetime.now(timezone.utc) + timedelta(days=settings.JWT_REFRESH_TOKEN_EXPIRE_DAYS) ) db.add(session) @@ -152,7 +152,7 @@ class AuthService: UserLoginEvent( event_id=str(session.id), service_name="auth-service", - timestamp=datetime.now(datetime.timezone.utc), + timestamp=datetime.now(timezone.utc), data={ "user_id": str(user.id), "email": user.email, diff --git a/services/training/app/services/training_service.py b/services/training/app/services/training_service.py index 8f5d9cda..5454eb0d 100644 --- a/services/training/app/services/training_service.py +++ b/services/training/app/services/training_service.py @@ -4,7 +4,7 @@ Training service business logic import asyncio import logging -from datetime import datetime, timedelta +from datetime import datetime, timedelta, timezone from typing import Dict, Any, List, Optional from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy import select, update, and_ @@ -46,8 +46,8 @@ class TrainingService: progress=0, current_step="Queued for training", requested_by=user_data.get("user_id"), - training_data_from= datetime.now(datetime.timezone.utc) - timedelta(days=request.training_days), - training_data_to= datetime.now(datetime.timezone.utc) + training_data_from= datetime.now(timezone.utc) - timedelta(days=request.training_days), + training_data_to= datetime.now(timezone.utc) ) db.add(training_job) @@ -64,7 +64,7 @@ class TrainingService: TrainingStartedEvent( event_id=str(uuid.uuid4()), service_name="training-service", - timestamp= datetime.now(datetime.timezone.utc), + timestamp= datetime.now(timezone.utc), data={ "job_id": str(training_job.id), "tenant_id": tenant_id, @@ -206,7 +206,7 @@ class TrainingService: async def _execute_training(self, job_id: str, request: TrainingRequest, db: AsyncSession): """Execute training job""" - start_time = datetime.now(datetime.timezone.utc) + start_time = datetime.now(timezone.utc) try: # Update job status @@ -229,7 +229,7 @@ class TrainingService: await self._save_trained_models(job_id, models_result, validation_result, db) # Complete job - duration = int(( datetime.now(datetime.timezone.utc) - start_time).total_seconds()) + duration = int(( datetime.now(timezone.utc) - start_time).total_seconds()) await self._complete_job(job_id, models_result, validation_result, duration, db) # Publish completion event @@ -239,7 +239,7 @@ class TrainingService: TrainingCompletedEvent( event_id=str(uuid.uuid4()), service_name="training-service", - timestamp= datetime.now(datetime.timezone.utc), + timestamp= datetime.now(timezone.utc), data={ "job_id": str(job_id), "models_trained": len(models_result), @@ -263,7 +263,7 @@ class TrainingService: TrainingFailedEvent( event_id=str(uuid.uuid4()), service_name="training-service", - timestamp= datetime.now(datetime.timezone.utc), + timestamp= datetime.now(timezone.utc), data={ "job_id": str(job_id), "error": str(e) @@ -281,7 +281,7 @@ class TrainingService: status=status, progress=progress, current_step=current_step, - updated_at= datetime.now(datetime.timezone.utc) + updated_at= datetime.now(timezone.utc) ) ) await db.commit() @@ -374,7 +374,7 @@ class TrainingService: status="completed", progress=100, current_step="Training completed successfully", - completed_at= datetime.now(datetime.timezone.utc), + completed_at= datetime.now(timezone.utc), duration_seconds=duration, models_trained=models_result, metrics=metrics, diff --git a/shared/auth/jwt_handler.py b/shared/auth/jwt_handler.py index 2eae4724..ba6c9017 100644 --- a/shared/auth/jwt_handler.py +++ b/shared/auth/jwt_handler.py @@ -4,7 +4,7 @@ Used across all microservices for consistent authentication """ from jose import jwt -from datetime import datetime, timedelta +from datetime import datetime, timedelta, timezone from typing import Optional, Dict, Any import logging @@ -22,9 +22,9 @@ class JWTHandler: to_encode = data.copy() if expires_delta: - expire = datetime.now(datetime.timezone.utc) + expires_delta + expire = datetime.now(timezone.utc) + expires_delta else: - expire = datetime.now(datetime.timezone.utc) + timedelta(minutes=30) + expire = datetime.now(timezone.utc) + timedelta(minutes=30) to_encode.update({"exp": expire, "type": "access"}) @@ -36,9 +36,9 @@ class JWTHandler: to_encode = data.copy() if expires_delta: - expire = datetime.now(datetime.timezone.utc) + expires_delta + expire = datetime.now(timezone.utc) + expires_delta else: - expire = datetime.now(datetime.timezone.utc) + timedelta(days=7) + expire = datetime.now(timezone.utc) + timedelta(days=7) to_encode.update({"exp": expire, "type": "refresh"})