Skip to content

Commit 789f29e

Browse files
authored
Merge branch 'master' into docker-build-output
2 parents b17556a + f813bff commit 789f29e

File tree

82 files changed

+2969
-928
lines changed

Some content is hidden

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

82 files changed

+2969
-928
lines changed

CHANGELOG.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,49 @@
22

33
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
44

5+
## [1.78.0](https://github.com/aws/aws-cdk/compare/v1.77.0...v1.78.0) (2020-12-11)
6+
7+
8+
### ⚠ BREAKING CHANGES TO EXPERIMENTAL FEATURES
9+
10+
* **cloudfront-origins:** Default minimum origin SSL protocol for `HttpOrigin` and `LoadBalancerOrigin` changed from SSLv3 to TLSv1.2.
11+
* **apigatewayv2:** `domainName` property under `DomainName` has been
12+
renamed to `name`.
13+
* **appmesh:** the properties `dnsHostName` and `awsCloudMap` of `VirtualNodeProps` have been replaced with the property `serviceDiscovery`
14+
* **kms:** change the default value of trustAccountIdentities to true,
15+
which will result in the key getting the KMS-recommended default key
16+
policy. This is enabled through the '@aws-cdk/aws-kms:defaultKeyPolicies'
17+
feature flag.
18+
19+
### Features
20+
21+
* **appmesh:** add ClientPolicy to VirtualNode, VirtualGateway and VirtualService ([#11563](https://github.com/aws/aws-cdk/issues/11563)) ([bfee58c](https://github.com/aws/aws-cdk/commit/bfee58c702c31fb8e89cf99c8b6fb944ef6a96a4))
22+
* **appmesh:** change Virtual Node service discovery to a union-like class ([#11926](https://github.com/aws/aws-cdk/issues/11926)) ([f75c264](https://github.com/aws/aws-cdk/commit/f75c264df04f7250a4ec4692b6e8a7105d62e535))
23+
* **appsync:** support appsync functions for pipelineConfig ([#10111](https://github.com/aws/aws-cdk/issues/10111)) ([cb703c7](https://github.com/aws/aws-cdk/commit/cb703c7a7efaeb5d64d4dc73f5f6c3680928dd40)), closes [#9092](https://github.com/aws/aws-cdk/issues/9092)
24+
* **batch:** Log configuration for job definitions ([#11771](https://github.com/aws/aws-cdk/issues/11771)) ([84c959c](https://github.com/aws/aws-cdk/commit/84c959c1734f308e8c53c7f7e6ca9e6a4f129e7e)), closes [#11218](https://github.com/aws/aws-cdk/issues/11218)
25+
* **cloudfront:** responseHttpStatus defaults to httpStatus in errorResponses ([#11879](https://github.com/aws/aws-cdk/issues/11879)) ([c6052ae](https://github.com/aws/aws-cdk/commit/c6052aead191fca8d384be8377fd4d3990b3ba03))
26+
* **cloudfront:** the Distribution construct is now Generally Available (stable) ([#11919](https://github.com/aws/aws-cdk/issues/11919)) ([442bf7e](https://github.com/aws/aws-cdk/commit/442bf7e097768646f8c8a7502762a8455f87e371))
27+
* **cloudfront-origins:** ability to specify minimum origin SSL protocol ([#11997](https://github.com/aws/aws-cdk/issues/11997)) ([a0aa61d](https://github.com/aws/aws-cdk/commit/a0aa61d5bc1134accef7bab2707edb497fce2c57)), closes [#11994](https://github.com/aws/aws-cdk/issues/11994)
28+
* **cloudfront-origins:** CloudFront Origins is now Generally Available ([#12011](https://github.com/aws/aws-cdk/issues/12011)) ([daace16](https://github.com/aws/aws-cdk/commit/daace1684638b8fb8b89b60bf39b24c65a769d64)), closes [#11919](https://github.com/aws/aws-cdk/issues/11919)
29+
* **codeguruprofiler:** the CodeGuru Profiler Construct Library is now Generally Available (stable) ([#11924](https://github.com/aws/aws-cdk/issues/11924)) ([cbe7a10](https://github.com/aws/aws-cdk/commit/cbe7a10053ce0e4e766f360cf8792f0b46c565f0))
30+
* **ecs:** introduce a new Image type, TagParameterContainerImage, to be used in CodePipeline ([#11795](https://github.com/aws/aws-cdk/issues/11795)) ([4182c40](https://github.com/aws/aws-cdk/commit/4182c40a237efa9f663e46263b8d9424104f5363)), closes [#1237](https://github.com/aws/aws-cdk/issues/1237) [#7746](https://github.com/aws/aws-cdk/issues/7746)
31+
* **eks:** kubernetes resource pruning ([#11932](https://github.com/aws/aws-cdk/issues/11932)) ([1fdd549](https://github.com/aws/aws-cdk/commit/1fdd549af6372a7b639e9db5435f755e5a2515ad)), closes [#10495](https://github.com/aws/aws-cdk/issues/10495)
32+
* **kms:** change default key policy to align with KMS best practices (under feature flag) ([#11918](https://github.com/aws/aws-cdk/issues/11918)) ([ff695da](https://github.com/aws/aws-cdk/commit/ff695daee41b22bfaeef148dd0faa8e451bfd9af)), closes [#5575](https://github.com/aws/aws-cdk/issues/5575) [#8977](https://github.com/aws/aws-cdk/issues/8977) [#10575](https://github.com/aws/aws-cdk/issues/10575) [#11309](https://github.com/aws/aws-cdk/issues/11309)
33+
* **s3:** add support to set bucket OwnershipControls ([#11834](https://github.com/aws/aws-cdk/issues/11834)) ([0d289cc](https://github.com/aws/aws-cdk/commit/0d289cc5e0f87c416c8490c514a158fa162ee8b9)), closes [#11591](https://github.com/aws/aws-cdk/issues/11591)
34+
35+
36+
### Bug Fixes
37+
38+
* **apigateway:** base path url cannot contain upper case characters ([#11799](https://github.com/aws/aws-cdk/issues/11799)) ([8069a7e](https://github.com/aws/aws-cdk/commit/8069a7e85c7c1652848624ba1b8085c89d3b1db2))
39+
* **cfn-include:** cfn-include fails in monocdk ([#11595](https://github.com/aws/aws-cdk/issues/11595)) ([45e43f2](https://github.com/aws/aws-cdk/commit/45e43f28f5d175bba654ee44d683aa3fc1854f9a)), closes [#11342](https://github.com/aws/aws-cdk/issues/11342)
40+
* **cli:** cross-account deployment no longer works ([#11966](https://github.com/aws/aws-cdk/issues/11966)) ([6fb3448](https://github.com/aws/aws-cdk/commit/6fb34483432b5cdcc485bbf6bfdb7bbb74f4b895)), closes [#11350](https://github.com/aws/aws-cdk/issues/11350) [#11792](https://github.com/aws/aws-cdk/issues/11792) [#11792](https://github.com/aws/aws-cdk/issues/11792)
41+
* **codebuild:** incorrect SSM Parameter ARN in Project's IAM permissions ([#11917](https://github.com/aws/aws-cdk/issues/11917)) ([7a09c18](https://github.com/aws/aws-cdk/commit/7a09c185f03a22c78f83536da07535227b301a1b)), closes [#9980](https://github.com/aws/aws-cdk/issues/9980)
42+
* **core:** autogenerated exports do not account for stack name length ([#11909](https://github.com/aws/aws-cdk/issues/11909)) ([0df79a2](https://github.com/aws/aws-cdk/commit/0df79a278755ced9c60b78c5cdea69111cd8d8b3)), closes [#9733](https://github.com/aws/aws-cdk/issues/9733)
43+
* **ecs:** cannot disable container insights of an ECS cluster ([#9151](https://github.com/aws/aws-cdk/issues/9151)) ([e328f22](https://github.com/aws/aws-cdk/commit/e328f22e7daa5fb5ea3de9fb26828314131e8a57)), closes [#9149](https://github.com/aws/aws-cdk/issues/9149)
44+
* **eks:** kubectl provider out-of-memory for large manifests/charts (now 1GiB) ([#11957](https://github.com/aws/aws-cdk/issues/11957)) ([2ec2948](https://github.com/aws/aws-cdk/commit/2ec294803427675b0ba594e929f32aca1ffdb075)), closes [#11787](https://github.com/aws/aws-cdk/issues/11787)
45+
* **synthetics:** `metricFailed` uses `Average` instead of `Sum` by default ([#11941](https://github.com/aws/aws-cdk/issues/11941)) ([3530e8c](https://github.com/aws/aws-cdk/commit/3530e8c758df3ea2fb26d654109e17a75f157b37))
46+
* **apigatewayv2:** rename 'domainName' to 'name' in the DomainName construct ([#11989](https://github.com/aws/aws-cdk/issues/11989)) ([1be831a](https://github.com/aws/aws-cdk/commit/1be831abc873c60df16c769ccf5e21fb9b1733c0))
47+
548
## [1.77.0](https://github.com/aws/aws-cdk/compare/v1.76.0...v1.77.0) (2020-12-07)
649

750

packages/@aws-cdk/aws-autoscaling/test/auto-scaling-group.test.ts

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1351,6 +1351,45 @@ test('Can set autoScalingGroupName', () => {
13511351
}));
13521352
});
13531353

1354+
test('can use Vpc imported from unparseable list tokens', () => {
1355+
// GIVEN
1356+
const stack = new cdk.Stack();
1357+
1358+
const vpcId = cdk.Fn.importValue('myVpcId');
1359+
const availabilityZones = cdk.Fn.split(',', cdk.Fn.importValue('myAvailabilityZones'));
1360+
const publicSubnetIds = cdk.Fn.split(',', cdk.Fn.importValue('myPublicSubnetIds'));
1361+
const privateSubnetIds = cdk.Fn.split(',', cdk.Fn.importValue('myPrivateSubnetIds'));
1362+
const isolatedSubnetIds = cdk.Fn.split(',', cdk.Fn.importValue('myIsolatedSubnetIds'));
1363+
1364+
const vpc = ec2.Vpc.fromVpcAttributes(stack, 'importedVpc', {
1365+
vpcId,
1366+
availabilityZones,
1367+
publicSubnetIds,
1368+
privateSubnetIds,
1369+
isolatedSubnetIds,
1370+
});
1371+
1372+
// WHEN
1373+
new autoscaling.AutoScalingGroup(stack, 'ecs-ec2-asg', {
1374+
instanceType: new ec2.InstanceType('t2.micro'),
1375+
machineImage: new ec2.AmazonLinuxImage(),
1376+
minCapacity: 1,
1377+
maxCapacity: 1,
1378+
desiredCapacity: 1,
1379+
vpc,
1380+
allowAllOutbound: false,
1381+
associatePublicIpAddress: false,
1382+
vpcSubnets: { subnetType: ec2.SubnetType.PRIVATE },
1383+
});
1384+
1385+
// THEN
1386+
expect(stack).to(haveResourceLike('AWS::AutoScaling::AutoScalingGroup', {
1387+
VPCZoneIdentifier: {
1388+
'Fn::Split': [',', { 'Fn::ImportValue': 'myPrivateSubnetIds' }],
1389+
},
1390+
}));
1391+
});
1392+
13541393
function mockSecurityGroup(stack: cdk.Stack) {
13551394
return ec2.SecurityGroup.fromSecurityGroupId(stack, 'MySG', 'most-secure');
13561395
}

packages/@aws-cdk/aws-cloudfront-origins/README.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,7 @@
33

44
---
55

6-
![cdk-constructs: Developer Preview](https://img.shields.io/badge/cdk--constructs-developer--preview-informational.svg?style=for-the-badge)
7-
8-
> The APIs of higher level constructs in this module are in **developer preview** before they
9-
> become stable. We will only make breaking changes to address unforeseen API issues. Therefore,
10-
> these APIs are not subject to [Semantic Versioning](https://semver.org/), and breaking changes
11-
> will be announced in release notes. This means that while you may use them, you may need to
12-
> update your source code when upgrading to a newer version of this package.
6+
![cdk-constructs: Stable](https://img.shields.io/badge/cdk--constructs-stable-success.svg?style=for-the-badge)
137

148
---
159

packages/@aws-cdk/aws-cloudfront-origins/lib/http-origin.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ import * as cdk from '@aws-cdk/core';
33

44
/**
55
* Properties for an Origin backed by an S3 website-configured bucket, load balancer, or custom HTTP server.
6-
*
7-
* @experimental
86
*/
97
export interface HttpOriginProps extends cloudfront.OriginProps {
108
/**
@@ -14,6 +12,13 @@ export interface HttpOriginProps extends cloudfront.OriginProps {
1412
*/
1513
readonly protocolPolicy?: cloudfront.OriginProtocolPolicy;
1614

15+
/**
16+
* The SSL versions to use when interacting with the origin.
17+
*
18+
* @default OriginSslPolicy.TLS_V1_2
19+
*/
20+
readonly originSslProtocols?: cloudfront.OriginSslPolicy[];
21+
1722
/**
1823
* The HTTP port that CloudFront uses to connect to the origin.
1924
*
@@ -47,8 +52,6 @@ export interface HttpOriginProps extends cloudfront.OriginProps {
4752

4853
/**
4954
* An Origin for an HTTP server or S3 bucket configured for website hosting.
50-
*
51-
* @experimental
5255
*/
5356
export class HttpOrigin extends cloudfront.OriginBase {
5457

@@ -61,6 +64,7 @@ export class HttpOrigin extends cloudfront.OriginBase {
6164

6265
protected renderCustomOriginConfig(): cloudfront.CfnDistribution.CustomOriginConfigProperty | undefined {
6366
return {
67+
originSslProtocols: this.props.originSslProtocols ?? [cloudfront.OriginSslPolicy.TLS_V1_2],
6468
originProtocolPolicy: this.props.protocolPolicy ?? cloudfront.OriginProtocolPolicy.HTTPS_ONLY,
6569
httpPort: this.props.httpPort,
6670
httpsPort: this.props.httpsPort,

packages/@aws-cdk/aws-cloudfront-origins/lib/load-balancer-origin.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,11 @@ import { HttpOrigin, HttpOriginProps } from './http-origin';
33

44
/**
55
* Properties for an Origin backed by a v2 load balancer.
6-
*
7-
* @experimental
86
*/
97
export interface LoadBalancerV2OriginProps extends HttpOriginProps { }
108

119
/**
1210
* An Origin for a v2 load balancer.
13-
*
14-
* @experimental
1511
*/
1612
export class LoadBalancerV2Origin extends HttpOrigin {
1713

packages/@aws-cdk/aws-cloudfront-origins/lib/s3-origin.ts

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ import { HttpOrigin } from './http-origin';
55

66
/**
77
* Properties to use to customize an S3 Origin.
8-
*
9-
* @experimental
108
*/
119
export interface S3OriginProps {
1210
/**
@@ -30,8 +28,6 @@ export interface S3OriginProps {
3028
* If the bucket is configured for website hosting, this origin will be configured to use the bucket as an
3129
* HTTP server origin and will use the bucket's configured website redirects and error handling. Otherwise,
3230
* the origin is created as a bucket origin and will use CloudFront's redirect and error handling.
33-
*
34-
* @experimental
3531
*/
3632
export class S3Origin implements cloudfront.IOrigin {
3733
private readonly origin: cloudfront.IOrigin;

packages/@aws-cdk/aws-cloudfront-origins/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,8 @@
9696
"engines": {
9797
"node": ">= 10.13.0 <13 || >=13.7.0"
9898
},
99-
"stability": "experimental",
100-
"maturity": "developer-preview",
99+
"stability": "stable",
100+
"maturity": "stable",
101101
"awscdkio": {
102102
"announce": false
103103
}

packages/@aws-cdk/aws-cloudfront-origins/test/http-origin.test.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ test('Renders minimal example with just a domain name', () => {
2222
domainName: 'www.example.com',
2323
customOriginConfig: {
2424
originProtocolPolicy: 'https-only',
25+
originSslProtocols: [
26+
'TLSv1.2',
27+
],
2528
},
2629
});
2730
});
@@ -37,6 +40,7 @@ test('renders an example with all available props', () => {
3740
httpsPort: 8443,
3841
readTimeout: Duration.seconds(45),
3942
keepaliveTimeout: Duration.seconds(3),
43+
originSslProtocols: [cloudfront.OriginSslPolicy.TLS_V1_2],
4044
});
4145
const originBindConfig = origin.bind(stack, { originId: 'StackOrigin029E19582' });
4246

@@ -52,6 +56,9 @@ test('renders an example with all available props', () => {
5256
}],
5357
customOriginConfig: {
5458
originProtocolPolicy: 'match-viewer',
59+
originSslProtocols: [
60+
'TLSv1.2',
61+
],
5562
httpPort: 8080,
5663
httpsPort: 8443,
5764
originReadTimeout: 45,

packages/@aws-cdk/aws-cloudfront-origins/test/integ.http-origin.expected.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@
1616
"Origins": [
1717
{
1818
"CustomOriginConfig": {
19-
"OriginProtocolPolicy": "https-only"
19+
"OriginProtocolPolicy": "https-only",
20+
"OriginSSLProtocols": [
21+
"TLSv1.2"
22+
]
2023
},
2124
"DomainName": "www.example.com",
2225
"Id": "cloudfronthttporiginDistributionOrigin162B02709"

packages/@aws-cdk/aws-cloudfront-origins/test/integ.load-balancer-origin.expected.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -422,7 +422,10 @@
422422
"Origins": [
423423
{
424424
"CustomOriginConfig": {
425-
"OriginProtocolPolicy": "https-only"
425+
"OriginProtocolPolicy": "https-only",
426+
"OriginSSLProtocols": [
427+
"TLSv1.2"
428+
]
426429
},
427430
"DomainName": {
428431
"Fn::GetAtt": [

0 commit comments

Comments
 (0)