From 12e4da4ea6cb5668800c20bcd455e672b9c04dcc Mon Sep 17 00:00:00 2001
From: Nicolas Dandrimont <nicolas@dandrimont.eu>
Date: Wed, 24 Jan 2024 18:18:02 +0100
Subject: [PATCH] pattern: introduce a verify_certs shortcut

This setting allows disabling HTTPS certificate verification, if needed.
---
 swh/lister/pattern.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/swh/lister/pattern.py b/swh/lister/pattern.py
index e4551ff4..e8754cfc 100644
--- a/swh/lister/pattern.py
+++ b/swh/lister/pattern.py
@@ -92,6 +92,7 @@ class Lister(Generic[StateType, PageType]):
       record_batch_size: maximum number of records to flush to the scheduler at once.
       connect_timeout: requests connection timeout in seconds.
       read_timeout: requests read timeout in seconds.
+      verify_certs: whether to verify the TLS certificates in HTTPS requests.
       requests_extra_kwargs: extra keyword arguments to pass to :mod:`requests` calls.
 
     Generic types:
@@ -118,6 +119,7 @@ class Lister(Generic[StateType, PageType]):
         record_batch_size: int = 1000,
         connect_timeout: float = 120,
         read_timeout: float = 60,
+        verify_certs: bool = True,
         requests_extra_kwargs: Dict[str, Any] = {},
     ):
         if not self.LISTER_NAME:
@@ -175,6 +177,8 @@ class Lister(Generic[StateType, PageType]):
         self.enable_origins = enable_origins
         self.record_batch_size = record_batch_size
         self.requests_extra_kwargs = requests_extra_kwargs
+        if not verify_certs:
+            self.requests_extra_kwargs["verify"] = False
         self.requests_extra_kwargs["timeout"] = (connect_timeout, read_timeout)
 
     def build_url(self, instance: str) -> str:
-- 
GitLab