Skip to content

Conversation

kai-ion
Copy link
Contributor

@kai-ion kai-ion commented Sep 5, 2025

Issue #, if available:

Description of changes:
Implement User-Agent 2.1 business metrics for credential provider tracking in AWS SDK for C++.

Check all that applies:

  • Did a review by yourself.
  • Added proper tests to cover this PR. (If tests are not applicable, explain.)
  • Checked if this PR is a breaking (APIs have been changed) change.
  • Checked if this PR will not introduce cross-platform inconsistent behavior.
  • Checked if this PR would require a ReadMe/Wiki update.

Check which platforms you have built SDK on to verify the correctness of this PR.

  • Linux
  • Windows
  • Android
  • MacOS
  • IOS
  • Other Platforms

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@kai-ion kai-ion changed the title C++] SDKs to track feature Ids for Credentials (SSO Provider) [C++] SDKs to track feature Ids for Credentials (SSO Provider) Sep 8, 2025
@kai-ion kai-ion changed the title [C++] SDKs to track feature Ids for Credentials (SSO Provider) [C++] SDKs to track feature Ids for Credentials (SSO/LegacySSO Provider) Sep 8, 2025
# Conflicts:
#	src/aws-cpp-sdk-core/include/aws/core/client/UserAgent.h
#	src/aws-cpp-sdk-core/source/auth/AWSCredentialsProvider.cpp
#	src/aws-cpp-sdk-core/source/client/UserAgent.cpp
#	tests/aws-cpp-sdk-core-tests/aws/auth/CredentialTrackingTest.cpp

# Conflicts:
#	tests/aws-cpp-sdk-core-tests/aws/auth/CredentialTrackingTest.cpp
Aws::MakeShared<Aws::Client::AWSAuthV4Signer>(TEST_LOG_TAG, provider, "service", config.region),
Aws::MakeShared<MockAWSErrorMarshaller>(TEST_LOG_TAG)) {}

HttpResponseOutcome MakeRequest(const Aws::AmazonWebServiceRequest& request) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is sort of weird, we shouldnt be subclassing AwsClient and then creating a function as a entry point, we should make a real aws client and be testing that object. make a mock aws client like we do in the RDS unit test. but not RDS specific and invoke the public functions on AWS client.

AwsCppSdkGTestSuite::SetUp();

// Build paths the same way the SDK does
const Aws::String profileDir = ProfileConfigFileAWSCredentialsProvider::GetProfileDirectory();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if this ran in on a users machine would this overrite their SSO configuraiton if it existed? If so we need to have this existing in a temp file/temp directory as we do in other tests. we cant mess with use credentials if its building on a users machine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants