Implement real SMTP delivery and transactional email auth flow
All checks were successful
CI / test (push) Successful in 21s
All checks were successful
CI / test (push) Successful in 21s
Email delivery: - Replaced logging-only email sender with aiosmtplib SMTP implementation. - Added provider mode switch via EMAIL_PROVIDER (log/smtp). - Added TLS/SSL and timeout controls for SMTP transport. Auth registration flow: - Made register/resend/reset email flows transactional with rollback on delivery failure. - Return 503 when verification/reset email cannot be delivered. Configuration: - Extended settings and env templates for EMAIL_PROVIDER, SMTP_USE_SSL, SMTP_TIMEOUT_SECONDS. - Updated docker-compose environment mapping for new SMTP variables.
This commit is contained in:
@@ -32,7 +32,10 @@ class Settings(BaseSettings):
|
||||
smtp_port: int = 1025
|
||||
smtp_username: str = ""
|
||||
smtp_password: str = ""
|
||||
email_provider: str = "log"
|
||||
smtp_use_tls: bool = False
|
||||
smtp_use_ssl: bool = False
|
||||
smtp_timeout_seconds: float = 10.0
|
||||
smtp_from_email: str = "no-reply@benyamessenger.local"
|
||||
|
||||
login_rate_limit_per_minute: int = 10
|
||||
|
||||
Reference in New Issue
Block a user