diff --git a/opwen_email_server/integration/azure.py b/opwen_email_server/integration/azure.py index d8e3d232..102d7ee5 100644 --- a/opwen_email_server/integration/azure.py +++ b/opwen_email_server/integration/azure.py @@ -4,11 +4,6 @@ from opwen_email_server.constants import azure as constants from opwen_email_server.constants.cache import PENDING_STORAGE_CACHE_SIZE from opwen_email_server.services.auth import AzureAuth -from opwen_email_server.services.dns import DeleteMxRecords -from opwen_email_server.services.dns import SetupMxRecords -from opwen_email_server.services.sendgrid import DeleteSendgridMailbox -from opwen_email_server.services.sendgrid import SendSendgridEmail -from opwen_email_server.services.sendgrid import SetupSendgridMailbox from opwen_email_server.services.storage import AzureFileStorage from opwen_email_server.services.storage import AzureObjectsStorage from opwen_email_server.services.storage import AzureObjectStorage @@ -52,39 +47,6 @@ def get_raw_email_storage() -> AzureTextStorage: ) -@singleton -def get_email_sender() -> SendSendgridEmail: - return SendSendgridEmail(key=config.SENDGRID_KEY) - - -@singleton -def get_mailbox_setup() -> SetupSendgridMailbox: - return SetupSendgridMailbox(key=config.SENDGRID_KEY) - - -@singleton -def get_mailbox_deletion() -> DeleteSendgridMailbox: - return DeleteSendgridMailbox(key=config.SENDGRID_KEY) - - -@singleton -def get_mx_setup() -> SetupMxRecords: - return SetupMxRecords( - account=config.DNS_ACCOUNT, - secret=config.DNS_SECRET, - provider=config.DNS_PROVIDER, - ) - - -@singleton -def get_mx_deletion() -> DeleteMxRecords: - return DeleteMxRecords( - account=config.DNS_ACCOUNT, - secret=config.DNS_SECRET, - provider=config.DNS_PROVIDER, - ) - - @singleton def get_email_storage() -> AzureObjectStorage: return AzureObjectStorage( diff --git a/opwen_email_server/integration/celery.py b/opwen_email_server/integration/celery.py index 86616d0d..c4dacdcd 100644 --- a/opwen_email_server/integration/celery.py +++ b/opwen_email_server/integration/celery.py @@ -1,5 +1,6 @@ from celery import Celery +from opwen_email_server import config from opwen_email_server.actions import IndexReceivedEmailForMailbox from opwen_email_server.actions import IndexSentEmailForMailbox from opwen_email_server.actions import RegisterClient @@ -15,13 +16,13 @@ from opwen_email_server.constants.queues import WRITTEN_STORE_QUEUE from opwen_email_server.integration.azure import get_auth from opwen_email_server.integration.azure import get_client_storage -from opwen_email_server.integration.azure import get_email_sender from opwen_email_server.integration.azure import get_email_storage -from opwen_email_server.integration.azure import get_mailbox_setup from opwen_email_server.integration.azure import get_mailbox_storage -from opwen_email_server.integration.azure import get_mx_setup from opwen_email_server.integration.azure import get_pending_storage from opwen_email_server.integration.azure import get_raw_email_storage +from opwen_email_server.services.dns import SetupMxRecords +from opwen_email_server.services.sendgrid import SendSendgridEmail +from opwen_email_server.services.sendgrid import SetupSendgridMailbox celery = Celery(broker=QUEUE_BROKER) @@ -31,8 +32,12 @@ def register_client(domain: str, owner: str) -> None: action = RegisterClient( auth=get_auth(), client_storage=get_client_storage(), - setup_mailbox=get_mailbox_setup(), - setup_mx_records=get_mx_setup(), + setup_mailbox=SetupSendgridMailbox(key=config.SENDGRID_KEY), + setup_mx_records=SetupMxRecords( + account=config.DNS_ACCOUNT, + secret=config.DNS_SECRET, + provider=config.DNS_PROVIDER, + ), ) action(domain, owner) @@ -90,7 +95,7 @@ def written_store(resource_id: str) -> None: def send(resource_id: str) -> None: action = SendOutboundEmails( email_storage=get_email_storage(), - send_email=get_email_sender(), + send_email=SendSendgridEmail(key=config.SENDGRID_KEY), ) action(resource_id) diff --git a/opwen_email_server/integration/connexion.py b/opwen_email_server/integration/connexion.py index ecce555b..53f1e0c3 100644 --- a/opwen_email_server/integration/connexion.py +++ b/opwen_email_server/integration/connexion.py @@ -10,8 +10,6 @@ from opwen_email_server.integration.azure import get_auth from opwen_email_server.integration.azure import get_client_storage from opwen_email_server.integration.azure import get_email_storage -from opwen_email_server.integration.azure import get_mailbox_deletion -from opwen_email_server.integration.azure import get_mx_deletion from opwen_email_server.integration.azure import get_pending_storage from opwen_email_server.integration.azure import get_raw_email_storage from opwen_email_server.integration.celery import inbound_store @@ -20,6 +18,8 @@ from opwen_email_server.services.auth import AnyOfBasicAuth from opwen_email_server.services.auth import BasicAuth from opwen_email_server.services.auth import GithubBasicAuth +from opwen_email_server.services.dns import DeleteMxRecords +from opwen_email_server.services.sendgrid import DeleteSendgridMailbox email_receive = ReceiveInboundEmail( auth=get_auth(), @@ -51,8 +51,12 @@ client_delete = DeleteClient( auth=get_auth(), - delete_mailbox=get_mailbox_deletion(), - delete_mx_records=get_mx_deletion(), + delete_mailbox=DeleteSendgridMailbox(key=config.SENDGRID_KEY), + delete_mx_records=DeleteMxRecords( + account=config.DNS_ACCOUNT, + secret=config.DNS_SECRET, + provider=config.DNS_PROVIDER, + ), ) metrics_pending = CalculatePendingEmailsMetric(