From b3195431dcfda2a87e106dae0dad08d730fbc30e Mon Sep 17 00:00:00 2001 From: "Ch.-David Blot" Date: Thu, 12 Nov 2026 11:48:05 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=97=91=EF=B8=8F=20chore:=20deprecate=20x5?= =?UTF-8?q?09=20certificate=20configuration?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- osc_sdk_python/credentials.py | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/osc_sdk_python/credentials.py b/osc_sdk_python/credentials.py index 8006bf2..6530d9b 100644 --- a/osc_sdk_python/credentials.py +++ b/osc_sdk_python/credentials.py @@ -1,6 +1,7 @@ import json import os import warnings +from logging import warning STD_PATH = os.path.join(os.path.expanduser("~"), ".osc/config.json") DEFAULT_REGION = "eu-west-2" @@ -18,7 +19,7 @@ def __init__(self, **kwargs): self.direct_link: str = kwargs.pop("direct_link", None) if kwargs: - unexpected = ", ".join(f"'{k}'" for k in kwargs.keys()) + unexpected = ", ".join(f"'{k}'" for k in kwargs) raise TypeError( f"Endpoint() got unexpected keyword arguments: {unexpected}" ) @@ -40,12 +41,25 @@ def __init__(self, **kwargs): self.password: str = kwargs.pop("password", None) self.protocol: str = kwargs.pop("protocol", None) self.region: str = kwargs.pop("region", None) - self.endpoints: "Endpoint" = kwargs.pop( + self.endpoints: Endpoint = kwargs.pop( "endpoints", Endpoint() ) # Forward reference + if ( + self.x509_client_key_b64 + or self.x509_client_cert + or self.x509_client_cert_b64 + or self.x509_client_key + ): + warnings.warn( + "Using X.509 client certificate authentication is deprecated. " + "Use access/secret key instead.", + DeprecationWarning, + stacklevel=3, + ) + if kwargs: - unexpected = ", ".join(f"'{k}'" for k in kwargs.keys()) + unexpected = ", ".join(f"'{k}'" for k in kwargs) raise TypeError(f"Profile() got unexpected keyword arguments: {unexpected}") @property