From 2ab7ea949670f4145b7e27e1fd6abb6c5fc46f68 Mon Sep 17 00:00:00 2001 From: "Cline, Wade" Date: Thu, 26 Jun 2025 14:32:57 -0700 Subject: [PATCH] Fix Log Analytics Ingestion import tests --- plugins/callback/loganalytics.py | 1 + plugins/callback/loganalytics_ingestion.py | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/plugins/callback/loganalytics.py b/plugins/callback/loganalytics.py index bd3ca4018d..0537ba7a79 100644 --- a/plugins/callback/loganalytics.py +++ b/plugins/callback/loganalytics.py @@ -15,6 +15,7 @@ description: - Credits to authors of splunk callback plugin. version_added: "2.4.0" requirements: + - The Python 'requests' module. - Whitelisting this callback plugin. - An Azure log analytics work space has been established. options: diff --git a/plugins/callback/loganalytics_ingestion.py b/plugins/callback/loganalytics_ingestion.py index db4ba062ba..6916012bc2 100644 --- a/plugins/callback/loganalytics_ingestion.py +++ b/plugins/callback/loganalytics_ingestion.py @@ -138,7 +138,12 @@ examples: | ''' import getpass -import requests +try: + import requests +except ImportError as exception: + IMPORT_ERROR_REQUESTS = exception +else: + IMPORT_ERROR_REQUESTS = None import socket import uuid from datetime import datetime, timezone, timedelta @@ -273,6 +278,8 @@ class CallbackModule(CallbackBase): CALLBACK_NEEDS_ENABLED = True def __init__(self, display=None): + if IMPORT_ERROR_REQUESTS: + raise AnsibleError("'requests' must be installed in order to use this plugin") from IMPORT_ERROR_REQUESTS super(CallbackModule, self).__init__(display=display) self.start_datetimes = {} self.playbook_name = None