Skip to content

Commit f4cdadd

Browse files
committed
merge main
2 parents 342fa25 + 8960483 commit f4cdadd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+8646
-2074
lines changed

.github/workflows/codebuild-ci.yml

Lines changed: 2 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -142,56 +142,9 @@ jobs:
142142
./gradlew collectDelegatedArtifactSizeMetrics -PpullRequest=$PULL_REQUEST
143143
- name: Analyze Artifact Size Metrics
144144
run: ./gradlew analyzeArtifactSizeMetrics
145-
- name: Show Results
146-
uses: actions/github-script@v7
147-
with:
148-
script: |
149-
const getComments =
150-
`query {
151-
repository(owner:"${context.repo.owner}", name:"${context.repo.repo}"){
152-
pullRequest(number: ${context.issue.number ?? process.env.SDK_PR}) {
153-
id
154-
comments(last:100) {
155-
nodes {
156-
id
157-
body
158-
author {
159-
login
160-
}
161-
isMinimized
162-
}
163-
}
164-
}
165-
}
166-
}`
167-
168-
const response = await github.graphql(getComments)
169-
const comments = response.repository.pullRequest.comments.nodes
170-
171-
const mutations = comments
172-
.filter(comment => comment.author.login == 'github-actions' && !comment.isMinimized && comment.body.startsWith('Affected Artifacts'))
173-
.map(comment =>
174-
github.graphql(
175-
`mutation {
176-
minimizeComment(input:{subjectId:"${comment.id}", classifier:OUTDATED}){
177-
clientMutationId
178-
}
179-
}`
180-
)
181-
)
182-
await Promise.all(mutations)
183145

184-
const fs = require('node:fs')
185-
const comment = fs.readFileSync('build/reports/metrics/artifact-analysis.md', 'utf8')
186-
187-
const writeComment =
188-
`mutation {
189-
addComment(input:{body:"""${comment}""", subjectId:"${response.repository.pullRequest.id}"}){
190-
clientMutationId
191-
}
192-
}`
193-
194-
await github.graphql(writeComment)
146+
- name: Show Results
147+
uses: awslabs/aws-kotlin-repo-tools/.github/actions/artifact-size-metrics/show-results@main
195148

196149
- name: Evaluate Result
197150
if: ${{ !contains(github.event.pull_request.labels.*.name, 'acknowledge-artifact-size-increase') }}
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# After every GitHub release, verify that the Maven artifacts are available, then kick off
2+
# a canary deployment with the latest version of the SDK.
3+
name: Update Canary
4+
on:
5+
release:
6+
types: [ published ]
7+
8+
jobs:
9+
update-canary:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Configure AWS Credentials
13+
uses: aws-actions/configure-aws-credentials@v4
14+
with:
15+
role-to-assume: ${{ secrets.CI_AWS_ROLE_ARN }}
16+
aws-region: us-west-2
17+
18+
19+
- name: Verify artifact is available on Maven
20+
shell: bash
21+
# Maven can take up to 2 hours after the release has succeeded to publish our artifacts
22+
# FIXME Track execution duration over time and see if this can be shortened
23+
timeout-minutes: 120
24+
run: |
25+
TAG="${{ github.event.release.tag_name }}"
26+
VERSION="${TAG#v}"
27+
MAVEN_URL="https://repo.maven.apache.org/maven2/aws/sdk/kotlin/s3/${VERSION}/"
28+
29+
echo "Checking for an artifact at $MAVEN_URL"
30+
31+
while true; do
32+
STATUS=$(curl -i -s -o /dev/null -w "%{http_code}" "$MAVEN_URL")
33+
echo "Status: $STATUS"
34+
35+
if [[ "$STATUS" == "200" ]]; then
36+
echo "Artifact is available at $MAVEN_URL"
37+
exit 0
38+
fi
39+
40+
sleep 30
41+
done
42+
43+
- name: Update canary
44+
shell: bash
45+
timeout-minutes: 15
46+
run: |
47+
set -euo pipefail
48+
49+
TAG="${{ github.event.release.tag_name }}"
50+
EXECUTION_NAME="update-canary-${TAG}"
51+
STATE_MACHINE_ARN="arn:aws:states:us-west-2:${{ secrets.CI_USER }}:stateMachine:DeployLatestSdkVersion"
52+
53+
echo "Starting step function: $EXECUTION_NAME"
54+
EXECUTION_ARN=$(aws stepfunctions start-execution \
55+
--state-machine-arn "$STATE_MACHINE_ARN" \
56+
--name "$EXECUTION_NAME" \
57+
--input '{}' \
58+
--query 'executionArn' \
59+
--output text)
60+
61+
echo "Waiting for step function to complete..."
62+
63+
while true; do
64+
STATUS=$(aws stepfunctions describe-execution --execution-arn "$EXECUTION_ARN" --query 'status' --output text)
65+
echo "Status: $STATUS"
66+
67+
if [[ "$STATUS" == "SUCCEEDED" ]]; then
68+
echo "Step Function completed successfully"
69+
exit 0
70+
elif [[ "$STATUS" == "FAILED" || "$STATUS" == "TIMED_OUT" || "$STATUS" == "ABORTED" ]]; then
71+
echo "Step Function failed with status: $STATUS"
72+
exit 1
73+
fi
74+
75+
sleep 10
76+
done

CHANGELOG.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,104 @@
11
# Changelog
22

3+
## [1.4.62] - 04/11/2025
4+
5+
### Features
6+
* (**connectcontactlens**) Making sentiment optional for ListRealtimeContactAnalysisSegments Response depending on conversational analytics configuration
7+
* (**datazone**) Raise hard limit of authorized principals per SubscriptionTarget from 10 to 20.
8+
* (**detective**) Add support for Detective DualStack endpoints
9+
* (**marketplaceentitlementservice**) Add support for Marketplace Entitlement Service dual-stack endpoints for CN and GOV regions
10+
* (**marketplacemetering**) Add support for Marketplace Metering Service dual-stack endpoints for CN regions
11+
* (**pcs**) Changed the minimum length of clusterIdentifier, computeNodeGroupIdentifier, and queueIdentifier to 3.
12+
* (**verifiedpermissions**) Adds deletion protection support to policy stores. Deletion protection is disabled by default, can be enabled via the CreatePolicyStore or UpdatePolicyStore APIs, and is visible in GetPolicyStore.
13+
14+
### Documentation
15+
* (**dynamodb**) Doc only update for API descriptions.
16+
17+
## [1.4.61] - 04/10/2025
18+
19+
### Features
20+
* (**applicationautoscaling**) Application Auto Scaling now supports horizontal scaling for Elasticache Memcached self-designed clusters using target tracking scaling policies and scheduled scaling.
21+
* (**elasticache**) AWS ElastiCache SDK now supports using MemcachedUpgradeConfig parameter with ModifyCacheCluster API to enable updating Memcached cache node types. Please refer to updated AWS ElastiCache public documentation for detailed information on API usage and implementation.
22+
* (**m2**) Introduce three new APIs: CreateDataSetExportTask, GetDataSetExportTask and ListDataSetExportHistory. Add support for batch restart for Blu Age applications.
23+
* (**medialive**) AWS Elemental MediaLive / Features : Add support for CMAF Ingest CaptionLanguageMappings, TimedMetadataId3 settings, and Link InputResolution.
24+
* (**qbusiness**) Adds functionality to enable/disable a new Q Business Hallucination Reduction feature. If enabled, Q Business will detect and attempt to remove Hallucinations from certain Chat requests.
25+
* (**quicksight**) Add support to analysis and sheet level highlighting in QuickSight.
26+
27+
## [1.4.60] - 04/09/2025
28+
29+
### Features
30+
* (**controlcatalog**) The GetControl API now surfaces a control's Severity, CreateTime, and Identifier for a control's Implementation. The ListControls API now surfaces a control's Behavior, Severity, CreateTime, and Identifier for a control's Implementation.
31+
* (**glue**) The TableOptimizer APIs in AWS Glue now return the DpuHours field in each TableOptimizerRun, providing clients visibility to the DPU-hours used for billing in managed Apache Iceberg table compaction optimization.
32+
* (**groundstation**) Support tagging Agents and adjust input field validations
33+
* (**transfer**) This launch includes 2 enhancements to SFTP connectors user-experience: 1) Customers can self-serve concurrent connections setting for their connectors, and 2) Customers can discover the public host key of remote servers using their SFTP connectors.
34+
35+
### Documentation
36+
* (**dynamodb**) Documentation update for secondary indexes and Create_Table.
37+
38+
## [1.4.59] - 04/08/2025
39+
40+
### Features
41+
* (**bedrockruntime**) This release introduces our latest bedrock runtime API, InvokeModelWithBidirectionalStream. The API supports both input and output streams and is supported by only HTTP2.0.
42+
* (**costexplorer**) This release supports Pagination traits on Cost Anomaly Detection APIs.
43+
* (**costoptimizationhub**) This release adds resource type "MemoryDbReservedInstances" and resource type "DynamoDbReservedCapacity" to the GetRecommendation, ListRecommendations, and ListRecommendationSummaries APIs to support new MemoryDB and DynamoDB RI recommendations.
44+
* (**iotfleetwise**) This release adds the option to update the strategy of state templates already associated to a vehicle, without the need to remove and re-add them.
45+
* (**storagegateway**) Added new ActiveDirectoryStatus value, ListCacheReports paginator, and support for longer pagination tokens.
46+
* (**taxsettings**) Uzbekistan Launch on TaxSettings Page
47+
48+
### Documentation
49+
* (**securityhub**) Documentation updates for AWS Security Hub.
50+
51+
## [1.4.58] - 04/08/2025
52+
53+
## [1.4.57] - 04/07/2025
54+
55+
⚠️ **IMPORTANT**: This version should not be used, as it depends on an unreleased snapshot version and will not work correctly. Please use version 1.4.58 or later.
56+
57+
### Features
58+
* (**bedrock**) New options for how to handle harmful content detected by Amazon Bedrock Guardrails.
59+
* (**bedrockruntime**) New options for how to handle harmful content detected by Amazon Bedrock Guardrails.
60+
* (**codebuild**) AWS CodeBuild now offers an enhanced debugging experience.
61+
* (**glue**) Add input validations for multiple Glue APIs
62+
* (**medialive**) AWS Elemental MediaLive now supports SDI inputs to MediaLive Anywhere Channels in workflows that use AWS SDKs.
63+
* (**personalize**) Add support for eventsConfig for CreateSolution, UpdateSolution, DescribeSolution, DescribeSolutionVersion. Add support for GetSolutionMetrics to return weighted NDCG metrics when eventsConfig is enabled for the solution.
64+
* (**transfer**) This launch enables customers to manage contents of their remote directories, by deleting old files or moving files to archive folders in remote servers once they have been retrieved. Customers will be able to automate the process using event-driven architecture.
65+
66+
## [1.4.56] - 04/04/2025
67+
68+
### Features
69+
* (**eventbridge**) Amazon EventBridge adds support for customer-managed keys on Archives and validations for two fields: eventSourceArn and kmsKeyIdentifier.
70+
71+
### Documentation
72+
* (**directoryservicedata**) Doc only update - fixed broken links.
73+
* (**ec2**) Doc-only updates for Amazon EC2
74+
* (**s3control**) Updated max size of Prefixes parameter of Scope data type.
75+
76+
## [1.4.55] - 04/03/2025
77+
78+
### Features
79+
* (**bedrockagent**) Added optional "customMetadataField" for Amazon Aurora knowledge bases, allowing single-column metadata. Also added optional "textIndexName" for MongoDB Atlas knowledge bases, enabling hybrid search support.
80+
* (**chimesdkvoice**) Added FOC date as an attribute of PhoneNumberOrder, added AccessDeniedException as a possible return type of ValidateE911Address
81+
* (**mailmanager**) Add support for Dual_Stack and PrivateLink types of IngressPoint. For configuration requests, SES Mail Manager will now accept both IPv4/IPv6 dual-stack endpoints and AWS PrivateLink VPC endpoints for email receiving.
82+
* (**route53**) Added us-gov-east-1 and us-gov-west-1 as valid Latency Based Routing regions for change-resource-record-sets.
83+
* (**sagemaker**) Adds support for i3en, m7i, r7i instance types for SageMaker Hyperpod
84+
* (**sesv2**) This release enables customers to provide attachments in the SESv2 SendEmail and SendBulkEmail APIs.
85+
* (**transcribe**) This Feature Adds Support for the "zh-HK" Locale for Batch Operations
86+
87+
### Documentation
88+
* (**opensearch**) Improve descriptions for various API commands and data types.
89+
90+
## [1.4.54] - 04/02/2025
91+
92+
### Features
93+
* (**applicationsignals**) Application Signals now supports creating Service Level Objectives on service dependencies. Users can now create or update SLOs on discovered service dependencies to monitor their standard application metrics.
94+
* (**codebuild**) This release adds support for environment type WINDOWS_SERVER_2022_CONTAINER in ProjectEnvironment
95+
* (**lexmodelsv2**) Release feature of errorlogging for lex bot, customer can config this feature in bot version to generate log for error exception which helps debug
96+
* (**medialive**) Added support for SMPTE 2110 inputs when running a channel in a MediaLive Anywhere cluster. This feature enables ingestion of SMPTE 2110-compliant video, audio, and ancillary streams by reading SDP files that AWS Elemental MediaLive can retrieve from a network source.
97+
98+
### Documentation
99+
* (**ecr**) Fix for customer issues related to AWS account ID and size limitation for token.
100+
* (**ecs**) This is an Amazon ECS documentation only update to address various tickets.
101+
3102
## [1.4.53] - 04/01/2025
4103

5104
### Features

0 commit comments

Comments
 (0)