From 0811c8be9e436719673880fba6cf09e45e63c0c7 Mon Sep 17 00:00:00 2001 From: Harsh Mishra Date: Mon, 19 Oct 2026 21:19:46 +0530 Subject: [PATCH] apigatewayv2-http-kinesis-integration: do not expect EncryptionType for an unencrypted stream Kinesis PutRecord returns EncryptionType only for encrypted streams. The smoke test required it, which only passed while LocalStack returned "EncryptionType": "NONE"; LocalStack now answers like AWS (ShardId and SequenceNumber), so the Makefile CI fails on this sample since early October. Check ShardId and SequenceNumber only. Claude-Session: https://claude.ai/code/session_01DZfDmzUBPqNAu3yFKyfCNM --- apigatewayv2-http-kinesis-integration/run.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/apigatewayv2-http-kinesis-integration/run.sh b/apigatewayv2-http-kinesis-integration/run.sh index a149ea2..ed40c85 100755 --- a/apigatewayv2-http-kinesis-integration/run.sh +++ b/apigatewayv2-http-kinesis-integration/run.sh @@ -14,9 +14,10 @@ response=$(curl -s -X POST "$httpapi.execute-api.localhost.localstack.cloud:4566 # Output the response for debugging purposes echo "API Response: $response" -# Smoke test to validate the output -if echo "$response" | jq -e '.ShardId and .SequenceNumber and .EncryptionType' > /dev/null; then - echo "Smoke test passed: The response contains 'ShardId', 'SequenceNumber', and 'EncryptionType'." +# Smoke test to validate the output. PutRecord returns EncryptionType only for encrypted streams, +# and this stream is not encrypted, so AWS answers with ShardId and SequenceNumber. +if echo "$response" | jq -e '.ShardId and .SequenceNumber' > /dev/null; then + echo "Smoke test passed: The response contains 'ShardId' and 'SequenceNumber'." else echo "Smoke test failed: The response does not contain the expected fields." exit 1