Skip to content
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

chore(release): 2.118.0 #28562

Merged
merged 33 commits into from
Jan 3, 2024
Merged

chore(release): 2.118.0 #28562

merged 33 commits into from
Jan 3, 2024

Conversation

aws-cdk-automation
Copy link
Collaborator

@aws-cdk-automation aws-cdk-automation commented Jan 3, 2024

See CHANGELOG

badmintoncryer and others added 30 commits December 27, 2023 16:18
… IAM entities (#28486)

Added a `grantTaskProtection` method to the ECS (Elastic Container Service) Cluster. This method grants ECS tasks the necessary permissions to interact with the task protection API.

Closes #26233

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…lerated tasks (#28488)

This pull request introduces a new variant, AWS_ECS_1_NVIDIA, to the BottlerocketEcsVariant enum. This addition caters to the increasing demand for GPU-accelerated computing in containerized environments, particularly for tasks that require intensive computing power, such as machine learning and 3D rendering.

Closes #25980

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…table construct (#27643)

Add
[cfn-glue-table-tableinput-parameters](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-table-tableinput.html#cfn-glue-table-tableinput-parameters)
to Glue Table construct as optional props

User can specify additional table parameter when creating Glue Table. 
Any key/value can be set depending on each user's requirement like
table's additional metadata or statistics. Some parameter can be used
when AWS services / 3rd party tools read table like
`skip.header.line.count`.

Closes #14159.

---
All Submissions:
- [x] Have you followed the guidelines in our [Contributing
guide?](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md)
Adding new Unconventional Dependencies:
- [ ] This PR adds new unconventional dependencies following the process
described
[here](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md/#adding-new-unconventional-dependencies)
New Features
- [x] Have you added the new feature to an [integration
test](https://github.com/aws/aws-cdk/blob/main/INTEGRATION_TESTS.md)?
- [x] Did you use yarn integ to deploy the infrastructure and generate
the snapshot (i.e. yarn integ without --dry-run)?
---
By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license

---------

Co-authored-by: Vinayak Kukreja <78971045+vinayak-kukreja@users.noreply.github.com>
Co-authored-by: Sumu Pitchayan <35242245+sumupitchayan@users.noreply.github.com>
This PR adds a `ipAddressType` property for `Domain`.

Closes #28436.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Add support for [IntrospectionConfig](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-introspectionconfig)

Closes #28429.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
#28471)

### Description
The related issue reports that deployment fails due to circular dependencies when multiple RDSProxy are created.
The `DatabaseProxy` uses the `node.addDependency` method to ensure that the `CfnDBProxyTargetGroup` is created after the `DBCluster` and `DBInstance` are created (#12237).

This works well for a single `DatabaseProxy`, but does not work well when multiple `DatabaseProxy` are created with `DatabaseCluster.addProxy`.
When creating a `DatabaseProxy` with the `DatabaseCluster.addProxy` method, it is created as a child of the `DatabaseCluster`.
https://github.com/aws/aws-cdk/blob/cd54c4239ec29182e30fd91634505df560d6e5f8/packages/aws-cdk-lib/aws-rds/lib/cluster.ts#L446

The `node.addDependency` method recursively sets dependencies on child Constructs, so if multiple `DatabaseProxy` are created as a child of a `DatabaseCluster` in the construct tree, multiple `DatabaseProxy` dependencies on each other.
If the `addProxy` method is not used, the user initializes the `DatabaseProxy` directly and it does not become a child of `DatabaseCluster`.
For example,
```ts
new DatabaseProxy(stack, 'DBProxy', {
  proxyTarget: rds.ProxyTarget.fromCluster(cluster),
  vpc,
});
```

I believe this is the cause of the `these resources have a dependency cycle` error reported in the related issue.

To correct this error, this PR uses `CfnResource.addDependency` instead of `node.addDependency` to avoid recurrent dependencies.

Closes #25633

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
The link to the Wiki page on `TrustedMember` has changed, and prlint is
now failing, so I fixed the broken link in this PR.

![スクリーンショット 2023-12-28 14 34
01](https://github.com/aws/aws-cdk/assets/58683719/f776ce9c-fc42-419f-b13e-798c36789125)

https://github.com/aws/aws-cdk/wiki/_compare/17dd5d3103a6cd3350441f20371915d0cd0c1465...4863a52be6383e221667a9c7b9f982f37cac852c

For Example,

https://github.com/aws/aws-cdk/actions/runs/7344487786/job/19996393076?pr=28495
![スクリーンショット 2023-12-28 14 37
10](https://github.com/aws/aws-cdk/assets/58683719/bb3a39a5-7c68-406f-ac9a-0e6e9998961e)

----

*By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license*
----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…28464)

Closes #28393

> Basically
[LaunchTemplateOverrides](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_autoscaling.LaunchTemplateOverrides.html)
for L2 construct is missing the
[InstanceRequirements](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-launchtemplateoverrides.html#cfn-autoscaling-autoscalinggroup-launchtemplateoverrides-instancerequirements)
attribute.

----

*By submitting this pull request, I confirm that my contribution is made
under the terms of the Apache-2.0 license*

---------

Co-authored-by: Sumu Pitchayan <35242245+sumupitchayan@users.noreply.github.com>
This adds an initial resource to support creating a Key Value Store and
specifying an import source. Unfortunately, CloudFormation doesn't seem
to support specifying the `KeyValueStoreAssociations` property of a
function so there isn't a way to actually associate the store with a
function.


Closes #28377.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
fixed #28163
This provides an option to change the runtime for CloudFront Functions. This makes it easier to access the CloudFront KeyValueStore.


https://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-function-functionconfig.html

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
This PR adds validations for `EmrCreateCluster`.

## timeoutDurationMinutes

> Minimum value is 5 and maximum value is 1440. 

https://docs.aws.amazon.com/emr/latest/APIReference/API_SpotProvisioningSpecification.html

## bidPrice and bidPriceAsPercentageOfOnDemandPrice

Both `bidPrice` and `bidPriceAsPercentageOfOnDemandPrice` are specified, the error occurs in Step Functions console.

```
Specify at most one of bidPrice or bidPriceAsPercentageOfOnDemandPrice value for the Spot Instance fleet : Master request. (Service: AmazonElasticMapReduce; Status Code: 400; Error Code: ValidationException; Request ID: xxxxxx; Proxy: null)
```

## targetOnDemandCapacity and targetSpotCapacity

> At least one of TargetSpotCapacity and TargetOnDemandCapacity should be greater than 0. For a master instance fleet, only one of TargetSpotCapacity and TargetOnDemandCapacity can be specified, and its value must be 1.

https://docs.aws.amazon.com/emr/latest/APIReference/API_InstanceFleetConfig.html

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…instance fleets in EmrCreateCluster (#28525)

This PR adds new allocation strategies for spot instance fleets in EmrCreateCluster.

- price-capacity-optimized
  - recommended
- lowest-price
- diversified

https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-instancefleetconfig-spotprovisioningspecification.html

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Calling `withConditions` after `withSessionTags` will override the existing `sts:TagSession` action for the statement.
This implementation fixes the issue.

Closes #28426.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…#28491)

This PR adds following convenient methods to `CacheControl`; same as #25477.

| method | directive | RFC |
|-|-|-|
| `CacheControl.noStore()` | `no-store` | [RFC9111](https://www.rfc-editor.org/rfc/rfc9111.html), Section 5.2.2.4 |
| `CacheControl.mustUnderstand()` | `must-understand` | RFC9111, Section 5.2.2.3 |
| `CacheControl.immutable()` | `immutable` | [RFC8246](https://www.rfc-editor.org/rfc/rfc8246.html) |
| `CacheControl.staleWhileRevalidate(duration)` | `stale-while-revalidate=<duration>` | [RFC5861](https://www.rfc-editor.org/rfc/rfc5861.html) |
| `CacheControl.staleIfError(duration)` | `stale-if-error=<duration>` | RFC5861 |

For more information about these Cache-Control directives,
see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Closes #27740.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…ined (#28533)

As per these documents, the following build image is not actively maintained, so I added @deprecated tag in this PR.

- `standard`
  - `STANDARD_1_0`
  - `STANDARD_2_0`
  - `STANDARD_3_0`
  - `STANDARD_4_0`
- `amazonlinux2-x86_64-standard`
  - `AMAZON_LINUX_2`
  - `AMAZON_LINUX_2_2`
  - `AMAZON_LINUX_2_3`
- `amazonlinux2-aarch64-standard`
  - `AMAZON_LINUX_2_STANDARD_1_0`

https://github.com/aws/aws-codebuild-docker-images?tab=readme-ov-file#image-maintenance
https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-available.html

relates: #23096 (comment), #16707

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Happy New Year!

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…er (#28532)

This PR adds a new parameter `timeout` as Duration type instead of `timeoutDurationMinutes` because the `timeoutDurationMinutes` is a number type.

Originally, `timeoutDurationMinutes` was a **required** parameter, but we have made it **optional** and also made the new parameter **optional** to avoid breaking change.

Instead, added a validation to ensure that the value is specified.

We discussed this in the following thread: #28529 (comment)

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
#27340 introduced the ability to create multiple event bus policies on a single event bus. To facilitate this, the logical Id was changed from `"Policy"` to the statementId. This triggers a replacement, which fails in CloudFormation because the statement ID does not change. The idea behind this PR is simple -- we are updating the statement ID of the policy to trigger a change for anyone who updates to the new version.

I think we are okay with this change because no one should be depending on the statementIds of their policies. And since the policy is not a stateful resource, updating the policy should not harm anyone. I have checked the feasibility of this PR on my own, hence the lack of an integ test.

closes #28520 

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
This pull request adds the `interactive` argument to `ContainerDefinitionOptions`. This argument is used when deploying containerized applications that require the allocation of standard input (stdin) or a terminal (tty). This parameter corresponds to `OpenStdin` in the "Create a container" section of the Docker Remote API and the `--interactive` option to `docker run`.

Closes #24326.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
> Validates roleName


Closes #28502 

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…28557)

This schema is now publicly available and needs to be cleaned up.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
This is correctly handled for empty change sets here:

https://github.com/aws/aws-cdk/blob/9d8b06f6478a98e01e3aaa86c1dbf22d6e861f05/packages/aws-cdk/lib/api/util/cloudformation.ts#L290-L296

but not for direct updates.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
`splitArn` is the correct updated version of `parseArn`. It's now
necessary to use `ArnFormat` not a literal string for the format of the
ARN resource for `splitArn` and `formatArn`.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
…ter (#28534)

This pull request introduces two new properties to the `ServerlessCluster` class in the AWS CDK RDS package: `secondsBeforeTimeout` and `timeoutAction`. 

The `secondsBeforeTimeout` property allows users to specify the amount of time that Aurora Serverless v1 will attempt to find a scaling point to perform seamless scaling before enforcing the timeout action. The default value is 300 seconds (5 minutes).

The `timeoutAction` property allows users to specify the action to take when the timeout is reached. Users can choose between `ForceApplyCapacityChange`, which will force the capacity to the specified value as soon as possible, even without a scaling point, and `RollbackCapacityChange`, which will ignore the capacity change if a scaling point is not found. The default behavior is `RollbackCapacityChange`.

These enhancements provide users with more control over the scaling behavior of their Aurora Serverless clusters.

Closes #27183

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
lpizzinidev and others added 3 commits January 3, 2024 16:13
Adds support for [`ClientPasswordAuthType`](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbproxy-authformat.html#cfn-rds-dbproxy-authformat-clientpasswordauthtype) on `DatabaseProxy` construct.

Closes #28415.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Output path with space breaks go build

Solution: quoting `go build` output path

Closes #28555

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
@aws-cdk-automation aws-cdk-automation added auto-approve pr/no-squash This PR should be merged instead of squash-merging it labels Jan 3, 2024
@aws-cdk-automation aws-cdk-automation requested a review from a team January 3, 2024 17:15
@github-actions github-actions bot added the p2 label Jan 3, 2024
@aws-cdk-automation
Copy link
Collaborator Author

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildv2Project1C6BFA3F-wQm2hXv2jqQv
  • Commit ID: 9f33dfa
  • Result: SUCCEEDED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

Copy link
Contributor

mergify bot commented Jan 3, 2024

Thank you for contributing! Your pull request will be automatically updated and merged without squashing (do not update manually, and be sure to allow changes to be pushed to your fork).

@mergify mergify bot merged commit a40f2ec into v2-release Jan 3, 2024
28 of 29 checks passed
@mergify mergify bot deleted the bump/2.118.0 branch January 3, 2024 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto-approve p2 pr/no-squash This PR should be merged instead of squash-merging it
Projects
None yet
Development

Successfully merging this pull request may close these issues.