Skip to content

Commit

Permalink
Merge branch 'main' of github.com:awslabs/aws-sdk-kotlin into feat-s3…
Browse files Browse the repository at this point in the history
…-express
  • Loading branch information
lauzadis committed Feb 20, 2024
2 parents 14ef411 + 613df19 commit 0e1d816
Show file tree
Hide file tree
Showing 18 changed files with 4,128 additions and 307 deletions.
8 changes: 8 additions & 0 deletions .changes/d3a9b18c-7f36-4718-a855-91e3ac6f6531.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"id": "d3a9b18c-7f36-4718-a855-91e3ac6f6531",
"type": "bugfix",
"description": "Only enable aws-chunked content encoding for S3",
"issues": [
"https://github.com/awslabs/aws-sdk-kotlin/issues/1217"
]
}
49 changes: 45 additions & 4 deletions .github/scripts/run-codebuild-batch-job.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,52 @@ error_exit() {
exit 1
}

PROJECT_NAME=$1
PROJECT_NAME=gh-aws-sdk-kotlin-svc-check-batch
# get the source version to be built (defaults to main branch if not specified)
SOURCE_VERSION=${2:-main}
SDK_PR=$3
SMITHY_PR=$4
SOURCE_VERSION=main
SDK_PR=""
SMITHY_PR=""

while [[ $# -gt 0 ]]; do
case "$1" in
--project)
if [[ "$2" == --* ]]; then
shift 1
else
PROJECT_NAME="$2"
shift 2
fi
;;
--source)
if [[ "$2" == --* ]]; then
shift 1
else
SOURCE_VERSION="$2"
shift 2
fi
;;
--sdk-pr)
if [[ "$2" == --* ]]; then
shift 1
else
SDK_PR="$2"
shift 2
fi
;;
--smithy-pr)
if [[ "$2" == --* || -z "$2" ]]; then
shift 1
else
SMITHY_PR="$2"
shift 2
fi
;;
*)
echo "Unknown option: $1"
exit 1
;;
esac
done

export SDK_PR
export SMITHY_PR
Expand Down
6 changes: 4 additions & 2 deletions .github/workflows/codebuild-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,8 +82,10 @@ jobs:
id: svc-check-batch
run: |
.github/scripts/run-codebuild-batch-job.sh \
gh-aws-sdk-kotlin-svc-check-batch \
${{ github.event.pull_request.head.sha }} ${{ inputs.aws-sdk-kotlin-pr }} ${{ inputs.smithy-kotlin-pr }}
--project gh-aws-sdk-kotlin-svc-check-batch \
--source ${{ github.event.pull_request.head.sha }} \
--sdk-pr ${{ inputs.aws-sdk-kotlin-pr }} \
--smithy-pr ${{ inputs.smithy-kotlin-pr }}
- name: Cancel build
if: ${{ cancelled() }}
env:
Expand Down
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
# Changelog

## [1.0.61] - 02/20/2024

### Features
* (**firehose**) This release updates a few Firehose related APIs.
* (**lambda**) Add .NET 8 (dotnet8) Runtime support to AWS Lambda.

### Documentation
* (**dynamodb**) Publishing quick fix for doc only update.

## [1.0.60] - 02/19/2024

### Features
* (**amplify**) This release contains API changes that enable users to configure their Amplify domains with their own custom SSL/TLS certificate.
* (**chatbot**) This release adds support for AWS Chatbot. You can now monitor, operate, and troubleshoot your AWS resources with interactive ChatOps using the AWS SDK.
* (**mediatailor**) MediaTailor: marking #AdBreak.OffsetMillis as required.

### Documentation
* (**configservice**) Documentation updates for the AWS Config CLI
* (**ivs**) Changed description for latencyMode in Create/UpdateChannel and Channel/ChannelSummary.
* (**keyspaces**) Documentation updates for Amazon Keyspaces

## [1.0.59] - 02/16/2024

### Features
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,12 @@ class ClientConfigIntegration : KotlinIntegration {
""".trimIndent()
}

val EnableAwsChunked: ConfigProperty = ConfigProperty {
name = "enableAwsChunked"
useSymbolWithNullableBuilder(KotlinTypes.Boolean, "true")
documentation = "Flag to enable [aws-chunked](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-streaming.html) content encoding."
}

val DisableExpressSessionAuth: ConfigProperty = ConfigProperty {
name = "disableS3ExpressSessionAuth"
useSymbolWithNullableBuilder(KotlinTypes.Boolean, "false")
Expand Down Expand Up @@ -117,6 +123,7 @@ class ClientConfigIntegration : KotlinIntegration {
ForcePathStyleProp,
UseArnRegionProp,
DisableMrapProp,
EnableAwsChunked,
DisableExpressSessionAuth,
ExpressCredentialsProvider,
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ import software.amazon.smithy.model.shapes.ServiceShape
* Set default signing attributes in the execution context (which ultimately becomes the signing context) for S3.
*/
class S3SigningConfig : KotlinIntegration {
// auth schemes are de-duped by taking the last one registered
override val order: Byte
get() = 127

Expand All @@ -40,5 +39,6 @@ class S3SigningConfig : KotlinIntegration {
writer.putIfAbsent(signingAttrs, "NormalizeUriPath", "false")
writer.putIfAbsent(signingAttrs, "UseDoubleUriEncode", "false")
writer.putIfAbsent(signingAttrs, "SignedBodyHeader", writer.format("#T.X_AMZ_CONTENT_SHA256", RuntimeTypes.Auth.Signing.AwsSigningCommon.AwsSignedBodyHeader))
writer.putIfAbsent(signingAttrs, "EnableAwsChunked", "config.enableAwsChunked")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import aws.sdk.kotlin.codegen.customization.s3.isS3Control
import software.amazon.smithy.kotlin.codegen.KotlinSettings
import software.amazon.smithy.kotlin.codegen.core.CodegenContext
import software.amazon.smithy.kotlin.codegen.integration.KotlinIntegration
import software.amazon.smithy.kotlin.codegen.lang.KotlinTypes
import software.amazon.smithy.kotlin.codegen.model.expectShape
import software.amazon.smithy.kotlin.codegen.rendering.util.ConfigProperty
import software.amazon.smithy.model.Model
Expand All @@ -32,6 +33,12 @@ class ClientConfigIntegration : KotlinIntegration {
[S3 access points](https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html).
""".trimIndent(),
)

val EnableAwsChunked: ConfigProperty = ConfigProperty {
name = "enableAwsChunked"
useSymbolWithNullableBuilder(KotlinTypes.Boolean, "true")
documentation = "Flag to enable [aws-chunked](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-streaming.html) content encoding."
}
}

override fun preprocessModel(model: Model, settings: KotlinSettings): Model {
Expand All @@ -51,5 +58,6 @@ class ClientConfigIntegration : KotlinIntegration {
override fun additionalServiceConfigProps(ctx: CodegenContext): List<ConfigProperty> =
listOf(
UseArnRegionProp,
EnableAwsChunked,
)
}
Loading

0 comments on commit 0e1d816

Please sign in to comment.