From 256e8216f23202c3c081310d7f50e281b5ee0e4a Mon Sep 17 00:00:00 2001 From: Paddy Carey Date: Thu, 3 Mar 2022 09:10:55 +0000 Subject: [PATCH] fix: support new swagger-codegen format for cloudsmith-api --- cloudsmith_cli/core/api/init.py | 21 +++++++++++++++------ cloudsmith_cli/core/api/user.py | 5 ++--- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/cloudsmith_cli/core/api/init.py b/cloudsmith_cli/core/api/init.py index 7dbad06a..812ae180 100644 --- a/cloudsmith_cli/core/api/init.py +++ b/cloudsmith_cli/core/api/init.py @@ -48,7 +48,11 @@ def initialise_api( values = decoded.decode("utf-8") config.username, config.password = values.split(":") - set_api_key(config, key) + if key: + config.api_key["X-Api-Key"] = key + + if hasattr(cloudsmith_api.Configuration, "set_default"): + cloudsmith_api.Configuration.set_default(config) return config @@ -74,9 +78,14 @@ def get_api_client(cls): return client -def set_api_key(config, key): - """Configure a new API key.""" - if not key and "X-Api-Key" in config.api_key: +def unset_api_key(): + """Unset the API key.""" + config = cloudsmith_api.Configuration() + + try: del config.api_key["X-Api-Key"] - else: - config.api_key["X-Api-Key"] = key + except KeyError: + pass + + if hasattr(cloudsmith_api.Configuration, "set_default"): + cloudsmith_api.Configuration.set_default(config) diff --git a/cloudsmith_cli/core/api/user.py b/cloudsmith_cli/core/api/user.py index 8586d912..6658fabf 100644 --- a/cloudsmith_cli/core/api/user.py +++ b/cloudsmith_cli/core/api/user.py @@ -6,7 +6,7 @@ from .. import ratelimits from .exceptions import catch_raise_api_exception -from .init import get_api_client, set_api_key +from .init import get_api_client, unset_api_key def get_user_api(): @@ -19,8 +19,7 @@ def get_user_token(login, password): client = get_user_api() # Never use API key for the token endpoint - config = cloudsmith_api.Configuration() - set_api_key(config, None) + unset_api_key() with catch_raise_api_exception(): data, _, headers = client.user_token_create_with_http_info(