From fb13c89427dbe48b5bc0427d8562c2f6ceca110c Mon Sep 17 00:00:00 2001 From: Andrew Asseily Date: Mon, 29 Sep 2025 16:16:08 -0400 Subject: [PATCH] port --- awscli/botocore/credentials.py | 1 + awscli/botocore/useragent.py | 1 + tests/functional/botocore/test_credentials.py | 28 +++++++++++++++++++ 3 files changed, 30 insertions(+) diff --git a/awscli/botocore/credentials.py b/awscli/botocore/credentials.py index 1f64cde20080..61005b012ad6 100644 --- a/awscli/botocore/credentials.py +++ b/awscli/botocore/credentials.py @@ -1493,6 +1493,7 @@ def load(self): access_key, secret_key = self._extract_creds_from_mapping( credentials, self.ACCESS_KEY, self.SECRET_KEY ) + register_feature_id('CREDENTIALS_BOTO2_CONFIG_FILE') return Credentials( access_key, secret_key, method=self.METHOD ) diff --git a/awscli/botocore/useragent.py b/awscli/botocore/useragent.py index cd533853d9e9..6a53fc1cc588 100644 --- a/awscli/botocore/useragent.py +++ b/awscli/botocore/useragent.py @@ -85,6 +85,7 @@ 'CREDENTIALS_PROFILE_SOURCE_PROFILE': 'o', 'CREDENTIALS_PROFILE_NAMED_PROVIDER': 'p', 'CREDENTIALS_PROFILE_STS_WEB_ID_TOKEN': 'q', + 'CREDENTIALS_BOTO2_CONFIG_FILE': 'x', 'CREDENTIALS_HTTP': 'z', 'CREDENTIALS_IMDS': '0', 'BEARER_SERVICE_ENV_VARS': '3', diff --git a/tests/functional/botocore/test_credentials.py b/tests/functional/botocore/test_credentials.py index 310740aa509a..e25e252087e2 100644 --- a/tests/functional/botocore/test_credentials.py +++ b/tests/functional/botocore/test_credentials.py @@ -1182,6 +1182,34 @@ def add_credential_response(self, stubber): }, [], 'e', + ), + # Test case 5: Credentials set with Boto2 config + ( + {}, + {}, + [ + patch( + "botocore.configloader.raw_config_parse", + return_value={ + "Credentials": { + "aws_access_key_id": "FAKEACCESSKEY", + "aws_secret_access_key": "FAKESECRETKEY", + } + }, + ), + patch( + "botocore.credentials.ConfigProvider.load", + return_value=None, + ), + patch( + "botocore.credentials.SharedCredentialProvider.load", + return_value=None, + ), + patch( + "botocore.credentials.EnvProvider.load", return_value=None + ), + ], + 'x', ), ], )