Skip to content

fix(signature-v4-multi-region): report available sigv4a dependency #7113

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 6 commits into from
Jun 4, 2025

Conversation

kuhe
Copy link
Contributor

@kuhe kuhe commented Jun 3, 2025

Codegen change

if (SignatureV4MultiRegion.sigv4aDependency() === "none" && sigv4Present) {
          // sigv4a -> sigv4 fallback.
          continue;
        }
.
.

Testing

  • Unit
 ✓ src/SignatureV4MultiRegion.spec.ts (15)
   ✓ SignatureV4MultiRegion (15)
     ✓ sigv4aDependency (4)
       ✓ should return 'crt' when CrtSignerV4 is available
       ✓ should return 'crt' when CrtSignerV4 and SignatureV4a are available
       ✓ should return 'js' when only SignatureV4a is available
       ✓ should return 'none' when neither implementation is available
     ✓ should sign with SigV4 signer
     ✓ should presign with SigV4 signer
     ✓ should presign with SigV4 signer
     ✓ should sign with SigV4a signer if signingRegion is '*'
     ✓ should use SignatureV4a if CrtSignerV4 is not available
     ✓ should throw an error for presignWithCredentials with star region
     ✓ should throw when presigning with signingRegion '*' if CRT is NOT available
     ✓ should throw when presigning with signingRegion '*' in non-node runtime (CRT unavailable)
     ✓ should throw an error if neither CrtSignerV4 nor JsSigV4aSigner is available in node runtime
     ✓ should throw an error if JsSigV4aSigner is not available in non-node runtime
     ✓ should use JsSigV4aSigner in non-node runtime

 Test Files  1 passed (1)
      Tests  15 passed (15)
   Start at  15:41:01
   Duration  497ms (transform 110ms, setup 0ms, collect 231ms, tests 18ms, environment 0ms, prepare 81ms)
  • Browser Unit
 ✓ src/SignatureV4MultiRegion.browser.spec.ts (3)
   ✓ SignatureV4MultiRegion (Browser Bundle SigV4a Test) (3)
     ✓ should use SigV4a for the request when signingRegion is '*' (JS implementation is available in bundle)
     ✓ should throw error when signingRegion is '*' and JS implementation is NOT available (Covered in Unit Tests)
     ✓ should correctly identify JS SigV4a implementation in browser environment

 Test Files  1 passed (1)
      Tests  3 passed (3)
   Start at  16:11:59
   Duration  1.09s (transform 252ms, setup 0ms, collect 302ms, tests 105ms, environment 373ms, prepare 72ms)
  • E2E
 ✓ src/cloudfront-kvs-sigv4a.e2e.spec.ts (2) 395ms
 ✓ src/eventbridge-sigv4a-put-api.e2e.spec.ts (2) 1095ms

 Test Files  2 passed (2)
      Tests  4 passed (4)
   Start at  16:10:00
   Duration  1.91s (transform 502ms, setup 0ms, collect 1.09s, tests 1.49s, environment 0ms, prepare 183ms)

@siddsriv siddsriv marked this pull request as ready for review June 4, 2025 17:00
@siddsriv siddsriv requested a review from a team as a code owner June 4, 2025 17:00
@siddsriv siddsriv merged commit a96c5df into main Jun 4, 2025
5 checks passed
@siddsriv siddsriv deleted the kuhe-patch-1 branch June 4, 2025 17:05
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.

3 participants