diff --git a/attachment_azure/models/ir_attachment.py b/attachment_azure/models/ir_attachment.py index 3c928d1..5e38337 100644 --- a/attachment_azure/models/ir_attachment.py +++ b/attachment_azure/models/ir_attachment.py @@ -131,6 +131,14 @@ class IrAttachment(models.Model): if not container_name: container_name = self._get_container_name() blob_service_client = self._get_blob_service_client() + try: + blob_service_client = self._get_blob_service_client() + except exceptions.UserError: + _logger.exception( + "error accessing to storage '%s' please check credentials ", + container_name + ) + return False container_client = blob_service_client.get_container_client(container_name) if not container_client.exists(): try: @@ -150,6 +158,9 @@ class IrAttachment(models.Model): else: container_name = None container_client = self._get_azure_container(container_name) + # if container cannot be retrived, abort reading from azure storage + if not container_client: + return '' try: blob_client = container_client.get_blob_client(key) read = blob_client.download_blob().readall() @@ -194,6 +205,8 @@ class IrAttachment(models.Model): else: container_name = None container_client = self._get_azure_container(container_name) + if not container_client: + return '' # delete the file only if it is on the current configured container # otherwise, we might delete files used on a different environment try: