Skip to content

Conversation

@BATMAN-JD
Copy link
Contributor

@BATMAN-JD BATMAN-JD commented Dec 19, 2025

What is being added?

  1. Dependencies
  • Migrated from github.com/aws/aws-sdk-go (v1) to github.com/aws/aws-sdk-go-v2
  • Added github.com/aws/smithy-go for error handling
  • AWS SDK v1 completely removed from dependencies
  1. API Signatures
  • Added context.Context as first parameter to all AWS API calls
  • Updated client initialization from session.NewSession() to config.LoadDefaultConfig()
  1. Type System
  • AWS types moved to separate packages (iamtypes, organizationstypes, ec2types, etc.)
  • Slice types changed from pointers to values: []*Type → []Type
  • Boolean fields changed from pointers to values: *bool → bool
  • String constants changed to typed enums (e.g., aws.String("ACCOUNT") → organizationstypes.ChildTypeAccount)
  • Integer types updated where required: aws.Int64() → aws.Int32()
  1. Error Handling
  • Replaced awserr.Error with smithy.APIError
  • Updated error checking from type assertions to errors.As() pattern
  1. Tests
  • Updated all mock expectations with gomock.Any() for context parameters
  • Fixed test assertions for v2 SDK error types
  • All unit tests passing (100% success rate)

What Stayed the Same

  • ✅ Zero functional changes - all business logic identical

  • ✅ Same AWS operations performed

  • ✅ Same error handling behavior (different types, same logic)

  • ✅ No API endpoint changes

  • ✅ No configuration changes required for deployments

  • I have tested this locally

  • I have included unit tests

  • I have updated any corresponding documentation

Steps To Manually Test

Please provide us steps to reproduce the scenarios needed to test this. If an integration test is provided, let us know how to run it. If not, enumerate the steps to validate this does what it's supposed to.

  1. Start the operator
  2. Run the thing
  3. Observe X in the spec for the thing
  4. Clean up the thing

SREP-1187

@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Dec 19, 2025
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Dec 19, 2025

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Dec 19, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: BATMAN-JD
Once this PR has been reviewed and has the lgtm label, please assign dakotalongrh for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant