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.42.0 #22054

Merged
merged 24 commits into from
Sep 15, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
aedc888
fix(route53): vpc region in template overridden by stack region (#20530)
daschaa Sep 7, 2022
dc8abdf
Merge branch 'main' into merge-back/2.41.0
mergify[bot] Sep 8, 2022
ab76681
chore(merge-back): 2.41.0 (#21958)
mergify[bot] Sep 8, 2022
46cf825
fix(elbv2): connections not created for chained listener actions (#21…
corymhall Sep 8, 2022
be65da6
feat(neptune): add engine version 1.2.0.0 (#21908)
humanzz Sep 8, 2022
bc4427c
fix(lambda-python): bundling artifacts are written to the entry path …
corymhall Sep 9, 2022
76d446b
feat(cognito): add SAML user pool identity provider (#21879)
ktfleming Sep 9, 2022
7ba5659
feat(lambda-event-sources): add filters to SQS, DynamoDB, and Kinesis…
marciocadev Sep 9, 2022
0ad307b
feat(redshift-alpha): directly add parameters to a parameter group or…
dontirun Sep 9, 2022
79c9ca1
fix(init-templates): csharp and fsharp app init fails when path conta…
TheRealAmazonKendra Sep 9, 2022
c33bb81
fix(lambda-event-sources): cannot add sqs event source to an imported…
corymhall Sep 9, 2022
38f8d89
docs(lambda-event-sources): document different defaults for maxBatchi…
kaizencc Sep 9, 2022
42e559d
feat(neptune): introduce cluster grant method for granular actions (#…
humanzz Sep 9, 2022
e501ac9
fix(elasticloadbalancingv2): securityGroup property is not required i…
marciocadev Sep 11, 2022
dc07f52
docs(backup): add information about currently supported events (#21987)
Sep 11, 2022
6b7ad6b
chore: update version in lambda layer and fix tests impacted by updat…
TheRealAmazonKendra Sep 12, 2022
c0255f6
docs: improve Lambda import names (#22014)
laurelmay Sep 13, 2022
ebca8c6
chore: npm-check-updates && yarn upgrade (#22037)
aws-cdk-automation Sep 14, 2022
c24027b
fix(apigateway): Add contextOwnerAccountId log pattern (#21989)
jmortlock Sep 14, 2022
1f03e8c
feat(cfnspec): cloudformation spec v88.0.0 (#22026)
aws-cdk-automation Sep 14, 2022
950ccd5
fix(aws-lambda): fail fast if a reserved environment variable is spec…
joelcox22 Sep 15, 2022
8f7ee2b
feat(ssm): reference existing SSM list parameters (#21880)
corymhall Sep 15, 2022
77ea83c
Allow multiple clientAuthentication methods in MSK (IAM + TLS) (#22041)
gmuslia Sep 15, 2022
cac4216
chore(release): 2.42.0
Sep 15, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 13 additions & 0 deletions CHANGELOG.v2.alpha.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,19 @@

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.

## [2.42.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.41.0-alpha.0...v2.42.0-alpha.0) (2022-09-15)


### Features

* **neptune:** add engine version 1.2.0.0 ([#21908](https://github.com/aws/aws-cdk/issues/21908)) ([be65da6](https://github.com/aws/aws-cdk/commit/be65da6ec1ab9c82d04f662a69bd1ae1147dff25)), closes [#21877](https://github.com/aws/aws-cdk/issues/21877)
* **neptune:** introduce cluster grant method for granular actions ([#21926](https://github.com/aws/aws-cdk/issues/21926)) ([42e559d](https://github.com/aws/aws-cdk/commit/42e559d49e9fdb43f37a0b53ef5a85cb6bc5f36d)), closes [#21877](https://github.com/aws/aws-cdk/issues/21877)


### Bug Fixes

* **lambda-python:** bundling artifacts are written to the entry path ([#21967](https://github.com/aws/aws-cdk/issues/21967)) ([bc4427c](https://github.com/aws/aws-cdk/commit/bc4427cc874e7eea7cfba5f88d536a805d771bc6)), closes [#19231](https://github.com/aws/aws-cdk/issues/19231)

## [2.41.0-alpha.0](https://github.com/aws/aws-cdk/compare/v2.40.0-alpha.0...v2.41.0-alpha.0) (2022-09-07)


Expand Down
22 changes: 22 additions & 0 deletions CHANGELOG.v2.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,28 @@

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.

## [2.42.0](https://github.com/aws/aws-cdk/compare/v2.41.0...v2.42.0) (2022-09-15)


### Features

* **cfnspec:** cloudformation spec v88.0.0 ([#22026](https://github.com/aws/aws-cdk/issues/22026)) ([1f03e8c](https://github.com/aws/aws-cdk/commit/1f03e8c40a682a3b5aae90560c84017cfe62762e))
* **cognito:** add SAML user pool identity provider ([#21879](https://github.com/aws/aws-cdk/issues/21879)) ([76d446b](https://github.com/aws/aws-cdk/commit/76d446b07559ee9a980446516dea5b88bc135049))
* **lambda-event-sources:** add filters to SQS, DynamoDB, and Kinesis event sources ([#21917](https://github.com/aws/aws-cdk/issues/21917)) ([7ba5659](https://github.com/aws/aws-cdk/commit/7ba565967a02f18c66ee07eaa65094365e5f7991)), closes [#17874](https://github.com/aws/aws-cdk/issues/17874)
* **redshift-alpha:** directly add parameters to a parameter group or indirectly through a cluster ([#20944](https://github.com/aws/aws-cdk/issues/20944)) ([0ad307b](https://github.com/aws/aws-cdk/commit/0ad307be1432f82db5295291a51439ede2a36c31)), closes [#20656](https://github.com/aws/aws-cdk/issues/20656) [#20656](https://github.com/aws/aws-cdk/issues/20656)
* **ssm:** reference existing SSM list parameters ([#21880](https://github.com/aws/aws-cdk/issues/21880)) ([8f7ee2b](https://github.com/aws/aws-cdk/commit/8f7ee2ba58b38f3f6d9eb8bebd96c208c3d7d2ce)), closes [#12477](https://github.com/aws/aws-cdk/issues/12477) [#14364](https://github.com/aws/aws-cdk/issues/14364)


### Bug Fixes

* **apigateway:** Add contextOwnerAccountId log pattern ([#21989](https://github.com/aws/aws-cdk/issues/21989)) ([c24027b](https://github.com/aws/aws-cdk/commit/c24027bfcb12e731230ccfcbdfb5b1ca4a233815)), closes [#21731](https://github.com/aws/aws-cdk/issues/21731)
* **aws-lambda:** fail fast if a reserved environment variable is specified ([#22039](https://github.com/aws/aws-cdk/issues/22039)) ([950ccd5](https://github.com/aws/aws-cdk/commit/950ccd56e042abaea85788e5134c5c36fde02803))
* **elasticloadbalancingv2:** securityGroup property is not required in fromApplicationListenerAttributes ([#21934](https://github.com/aws/aws-cdk/issues/21934)) ([e501ac9](https://github.com/aws/aws-cdk/commit/e501ac94c171e6915ddaeba4eb66d0f50c2ea541)), closes [#21930](https://github.com/aws/aws-cdk/issues/21930)
* **elbv2:** connections not created for chained listener actions ([#21939](https://github.com/aws/aws-cdk/issues/21939)) ([46cf825](https://github.com/aws/aws-cdk/commit/46cf825739af125ef7a7369413d8e9ec071f87aa)), closes [#12994](https://github.com/aws/aws-cdk/issues/12994)
* **init-templates:** csharp and fsharp app init fails when path contains space ([#21049](https://github.com/aws/aws-cdk/issues/21049)) ([79c9ca1](https://github.com/aws/aws-cdk/commit/79c9ca1a168c38ceb55376f6e61e7297448a465e)), closes [#18803](https://github.com/aws/aws-cdk/issues/18803)
* **lambda-event-sources:** cannot add sqs event source to an imported function ([#21970](https://github.com/aws/aws-cdk/issues/21970)) ([c33bb81](https://github.com/aws/aws-cdk/commit/c33bb818116eda2407804935c1be10ff40eba92b)), closes [#12607](https://github.com/aws/aws-cdk/issues/12607)
* **route53:** vpc region in template overridden by stack region ([#20530](https://github.com/aws/aws-cdk/issues/20530)) ([aedc888](https://github.com/aws/aws-cdk/commit/aedc8883bfb7ec85b4d3392b3f589bcbfe22e4e0)), closes [#20496](https://github.com/aws/aws-cdk/issues/20496) [#20496](https://github.com/aws/aws-cdk/issues/20496)

## [2.41.0](https://github.com/aws/aws-cdk/compare/v2.40.0...v2.41.0) (2022-09-07)


Expand Down
17 changes: 16 additions & 1 deletion packages/@aws-cdk/aws-apigateway/lib/access-log.ts
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,27 @@ export class LogGroupLogDestination implements IAccessLogDestination {
*/
export class AccessLogField {
/**
* The API owner's AWS account ID.
* The API callers AWS account ID.
* @deprecated Use `contextCallerAccountId` or `contextOwnerAccountId` instead
*/
public static contextAccountId() {
return '$context.identity.accountId';
}

/**
* The API callers AWS account ID.
*/
public static contextCallerAccountId() {
return '$context.identity.accountId';
}

/**
* The API owner's AWS account ID.
*/
public static contextOwnerAccountId() {
return '$context.accountId';
}

/**
* The identifier API Gateway assigns to your API.
*/
Expand Down
5 changes: 3 additions & 2 deletions packages/@aws-cdk/aws-apigateway/test/access-log.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,13 @@ describe('access log', () => {
requestId: apigateway.AccessLogField.contextRequestId(),
sourceIp: apigateway.AccessLogField.contextIdentitySourceIp(),
method: apigateway.AccessLogField.contextHttpMethod(),
accountId: apigateway.AccessLogField.contextAccountId(),
callerAccountId: apigateway.AccessLogField.contextCallerAccountId(),
ownerAccountId: apigateway.AccessLogField.contextOwnerAccountId(),
userContext: {
sub: apigateway.AccessLogField.contextAuthorizerClaims('sub'),
email: apigateway.AccessLogField.contextAuthorizerClaims('email'),
},
}));
expect(testFormat.toString()).toEqual('{"requestId":"$context.requestId","sourceIp":"$context.identity.sourceIp","method":"$context.httpMethod","accountId":"$context.identity.accountId","userContext":{"sub":"$context.authorizer.claims.sub","email":"$context.authorizer.claims.email"}}');
expect(testFormat.toString()).toEqual('{"requestId":"$context.requestId","sourceIp":"$context.identity.sourceIp","method":"$context.httpMethod","callerAccountId":"$context.identity.accountId","ownerAccountId":"$context.accountId","userContext":{"sub":"$context.authorizer.claims.sub","email":"$context.authorizer.claims.email"}}');
});
});
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-apigateway/test/integ.cors.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import * as path from 'path';
import * as lambda from '@aws-cdk/aws-lambda';
import { App, Stack, StackProps } from '@aws-cdk/core';
import { IntegTest } from '@aws-cdk/integ-tests';
import { Construct } from 'constructs';
import * as apigw from '../lib';
import { IntegTest } from '@aws-cdk/integ-tests';

class TestStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
Expand Down
41 changes: 41 additions & 0 deletions packages/@aws-cdk/aws-apigateway/test/integ.restapi.access-log.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
import * as logs from '@aws-cdk/aws-logs';
import * as cdk from '@aws-cdk/core';
import { IntegTest } from '@aws-cdk/integ-tests';
import * as apigateway from '../lib';

class Test extends cdk.Stack {
constructor(scope: cdk.App, id: string) {
super(scope, id);

const testFormat = apigateway.AccessLogFormat.custom(JSON.stringify({
requestId: apigateway.AccessLogField.contextRequestId(),
sourceIp: apigateway.AccessLogField.contextIdentitySourceIp(),
method: apigateway.AccessLogField.contextHttpMethod(),
callerAccountId: apigateway.AccessLogField.contextCallerAccountId(),
ownerAccountId: apigateway.AccessLogField.contextOwnerAccountId(),
userContext: {
sub: apigateway.AccessLogField.contextAuthorizerClaims('sub'),
email: apigateway.AccessLogField.contextAuthorizerClaims('email'),
},
}));

const logGroup = new logs.LogGroup(this, 'MyLogGroup');
const api = new apigateway.RestApi(this, 'MyApi', {
cloudWatchRole: true,
deployOptions: {
accessLogDestination: new apigateway.LogGroupLogDestination(logGroup),
accessLogFormat: testFormat,
},
});
api.root.addMethod('GET');
}
}

const app = new cdk.App();

const testCase = new Test(app, 'test-apigateway-access-logs');
new IntegTest(app, 'apigateway-access-logs', {
testCases: [testCase],
});

app.synth();
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"version": "21.0.0",
"files": {
"21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22": {
"source": {
"path": "apigatewayaccesslogsDefaultTestDeployAssert751ACD40.template.json",
"packaging": "file"
},
"destinations": {
"current_account-current_region": {
"bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
"objectKey": "21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json",
"assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
}
}
}
},
"dockerImages": {}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"Parameters": {
"BootstrapVersion": {
"Type": "AWS::SSM::Parameter::Value<String>",
"Default": "/cdk-bootstrap/hnb659fds/version",
"Description": "Version of the CDK Bootstrap resources in this environment, automatically retrieved from SSM Parameter Store. [cdk:skip]"
}
},
"Rules": {
"CheckBootstrapVersion": {
"Assertions": [
{
"Assert": {
"Fn::Not": [
{
"Fn::Contains": [
[
"1",
"2",
"3",
"4",
"5"
],
{
"Ref": "BootstrapVersion"
}
]
}
]
},
"AssertDescription": "CDK bootstrap stack version 6 required. Please run 'cdk bootstrap' with a recent version of the CDK CLI."
}
]
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"version":"21.0.0"}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"version": "21.0.0",
"testCases": {
"apigateway-access-logs/DefaultTest": {
"stacks": [
"test-apigateway-access-logs"
],
"assertionStack": "apigateway-access-logs/DefaultTest/DeployAssert",
"assertionStackName": "apigatewayaccesslogsDefaultTestDeployAssert751ACD40"
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
{
"version": "21.0.0",
"artifacts": {
"Tree": {
"type": "cdk:tree",
"properties": {
"file": "tree.json"
}
},
"test-apigateway-access-logs.assets": {
"type": "cdk:asset-manifest",
"properties": {
"file": "test-apigateway-access-logs.assets.json",
"requiresBootstrapStackVersion": 6,
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
}
},
"test-apigateway-access-logs": {
"type": "aws:cloudformation:stack",
"environment": "aws://unknown-account/unknown-region",
"properties": {
"templateFile": "test-apigateway-access-logs.template.json",
"validateOnSynth": false,
"assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
"cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
"stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/bfcd014ed17d9d37eb988448edc7e87eb2ab77e6f7508bf3de2714a6322c99b3.json",
"requiresBootstrapStackVersion": 6,
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
"additionalDependencies": [
"test-apigateway-access-logs.assets"
],
"lookupRole": {
"arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
"requiresBootstrapStackVersion": 8,
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
}
},
"dependencies": [
"test-apigateway-access-logs.assets"
],
"metadata": {
"/test-apigateway-access-logs/MyLogGroup/Resource": [
{
"type": "aws:cdk:logicalId",
"data": "MyLogGroup5C0DAD85"
}
],
"/test-apigateway-access-logs/MyApi/Resource": [
{
"type": "aws:cdk:logicalId",
"data": "MyApi49610EDF"
}
],
"/test-apigateway-access-logs/MyApi/CloudWatchRole/Resource": [
{
"type": "aws:cdk:logicalId",
"data": "MyApiCloudWatchRole2BEC1A9C"
}
],
"/test-apigateway-access-logs/MyApi/Account": [
{
"type": "aws:cdk:logicalId",
"data": "MyApiAccount13882D84"
}
],
"/test-apigateway-access-logs/MyApi/Deployment/Resource": [
{
"type": "aws:cdk:logicalId",
"data": "MyApiDeploymentECB0D05E81594d6748b4b291f993111a5070d710"
}
],
"/test-apigateway-access-logs/MyApi/DeploymentStage.prod/Resource": [
{
"type": "aws:cdk:logicalId",
"data": "MyApiDeploymentStageprodE1054AF0"
}
],
"/test-apigateway-access-logs/MyApi/Endpoint": [
{
"type": "aws:cdk:logicalId",
"data": "MyApiEndpoint869ABE96"
}
],
"/test-apigateway-access-logs/MyApi/Default/GET/Resource": [
{
"type": "aws:cdk:logicalId",
"data": "MyApiGETD0C7AA0C"
}
],
"/test-apigateway-access-logs/BootstrapVersion": [
{
"type": "aws:cdk:logicalId",
"data": "BootstrapVersion"
}
],
"/test-apigateway-access-logs/CheckBootstrapVersion": [
{
"type": "aws:cdk:logicalId",
"data": "CheckBootstrapVersion"
}
]
},
"displayName": "test-apigateway-access-logs"
},
"apigatewayaccesslogsDefaultTestDeployAssert751ACD40.assets": {
"type": "cdk:asset-manifest",
"properties": {
"file": "apigatewayaccesslogsDefaultTestDeployAssert751ACD40.assets.json",
"requiresBootstrapStackVersion": 6,
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
}
},
"apigatewayaccesslogsDefaultTestDeployAssert751ACD40": {
"type": "aws:cloudformation:stack",
"environment": "aws://unknown-account/unknown-region",
"properties": {
"templateFile": "apigatewayaccesslogsDefaultTestDeployAssert751ACD40.template.json",
"validateOnSynth": false,
"assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}",
"cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}",
"stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/21fbb51d7b23f6a6c262b46a9caee79d744a3ac019fd45422d988b96d44b2a22.json",
"requiresBootstrapStackVersion": 6,
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version",
"additionalDependencies": [
"apigatewayaccesslogsDefaultTestDeployAssert751ACD40.assets"
],
"lookupRole": {
"arn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-lookup-role-${AWS::AccountId}-${AWS::Region}",
"requiresBootstrapStackVersion": 8,
"bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version"
}
},
"dependencies": [
"apigatewayaccesslogsDefaultTestDeployAssert751ACD40.assets"
],
"metadata": {
"/apigateway-access-logs/DefaultTest/DeployAssert/BootstrapVersion": [
{
"type": "aws:cdk:logicalId",
"data": "BootstrapVersion"
}
],
"/apigateway-access-logs/DefaultTest/DeployAssert/CheckBootstrapVersion": [
{
"type": "aws:cdk:logicalId",
"data": "CheckBootstrapVersion"
}
]
},
"displayName": "apigateway-access-logs/DefaultTest/DeployAssert"
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"version": "21.0.0",
"files": {
"bfcd014ed17d9d37eb988448edc7e87eb2ab77e6f7508bf3de2714a6322c99b3": {
"source": {
"path": "test-apigateway-access-logs.template.json",
"packaging": "file"
},
"destinations": {
"current_account-current_region": {
"bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}",
"objectKey": "bfcd014ed17d9d37eb988448edc7e87eb2ab77e6f7508bf3de2714a6322c99b3.json",
"assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}"
}
}
}
},
"dockerImages": {}
}
Loading