Skip to content

Releases: aws/aws-cdk

v0.15.0

06 Nov 17:44
fbb2067
Compare
Choose a tag to compare

Bug Fixes

  • aws-autoscaling: allow minSize to be set to 0 (#1015) (67f7fa1)
  • aws-codebuild: correctly pass the timeout property to CFN when creating a Project. (#1071) (b1322bb)
  • aws-codebuild: correctly set S3 path when using it as artifact. (#1072) (f32cba9)
  • aws-kms: add output value when exporting an encryption key (#1036) (cb490be)
  • Switch from js-yaml to yaml (#1092) (0b132b5)

Features

  • don't upload the same asset multiple times (#1011) (35937b6), closes #989
  • app-delivery: CI/CD for CDK Stacks (#1022) (f2fe4e9)
  • add a new construct library for ECS (#1058) (ae03ddb)
  • applets: integrate into toolkit (#1039) (fdabe95), closes #849 #342 #291
  • aws-codecommit: use CloudWatch Events instead of polling by default in the CodePipeline Action. (#1026) (d09d30c)
  • aws-dynamodb: allow specifying partition/sort keys in props (#1054) (ec87331), closes #1051
  • aws-ec2: AmazonLinuxImage supports AL2 (#1081) (97b57a5), closes #1062
  • aws-lambda: high level API for event sources (#1063) (1be3442)
  • aws-sqs: improvements to IAM grants API (#1052) (6f2475e)
  • codepipeline/cfn: Use fewer statements for pipeline permissions (#1009) (8f4c2ab)
  • pkglint: Make sure .snk files are ignored (#1049) (53c8d76), closes #643
  • toolkit: deployment ui improvements (#1067) (c832eaf)
  • Update to CloudFormation resource specification v2.11.0

BREAKING CHANGES

  • The ec2.Connections object has been changed to be able to manage multiple
    security groups. The relevant property has been changed from securityGroup
    to securityGroups (an array of security group objects).
  • aws-codecommit: this modifies the default behavior of the CodeCommit
    Action. It also changes the internal API contract between the
    aws-codepipeline-api module and the CodePipeline Actions in the service
    packages.
  • applets: The applet schema has changed to allow Multiple applets can be
    define in one file by structuring the files like this:
  • applets: The applet schema has changed to allow definition of multiple
    applets in the same file.

The schema now looks like this:

applets:
  MyApplet:
    type: ./my-applet-file
    properties:
      property1: value
      ...

By starting an applet specifier with npm://, applet modules can directly be
referenced in NPM. You can include a version specifier (@1.2.3) to reference
specific versions.

  • aws-sqs: queue.grantReceiveMessages has been removed. It is unlikely
    that this would be sufficient to interact with a queue. Alternatively you can
    use queue.grantConsumeMessages or queue.grant('sqs:ReceiveMessage') if
    there's a need to only grant this action.

v0.14.1

26 Oct 18:13
c87f3ec
Compare
Choose a tag to compare

Bug Fixes

  • aws-cdk: fix bug in SSM Parameter Provider (#1023) (6e6aa1d)

v0.14.0

26 Oct 13:45
e283711
Compare
Choose a tag to compare

IMPORTANT NOTE: when upgrading to this version of the CDK framework, you must also upgrade
your installation the CDK Toolkit to the matching version:

$ npm i -g aws-cdk
$ cdk --version
0.14.0 (build ...)

Bug Fixes

Features

BREAKING CHANGES

  • DynamoDB AutoScaling: Instead of addReadAutoScaling(), call autoScaleReadCapacity(), and similar for write scaling.
  • CloudFormation resource usage: If you use L1s, you may need to change some XxxName properties back into Name. These will match the CloudFormation property names.
  • You must use the matching aws-cdk toolkit when upgrading to this version, or context providers will cease to work. All existing cached context values in cdk.json will be invalidated and refreshed.
  • ec2.AllConnections was renamed to ec2.AllTraffic.

v0.13.0

19 Oct 14:15
bf73b09
Compare
Choose a tag to compare

Highlights

  • A new construct library for AWS Step Functions
    (docs).
    The library provides rich APIs for modeling state machines by exposing a
    programmatic interface for Amazon State
    Language
    .
  • A new construct library for Amazon S3 bucket deployments
    (docs).
    You can use now automatically populate an S3 Bucket from a .zip file or a
    local directory. This is a building block for end-to-end support for static
    websites in the AWS CDK.

Bug Fixes

  • aws-apigateway: make LambdaRestApi proxy by default (#963) (a5f5e2c), closes #959
  • aws-cdk: Allow use of assumed roles behind a proxy (#898) (f2b1048)
  • aws-cdk: Auto-delete stacks that failed creating before new attempt (#917) (2af8309)
  • aws-cloudfront: expose distributionId (#938) (f58d98c)
  • aws-dynamodb: don't emit empty array properties (#909) (841975a)
  • docs: use ..code to display file structure in "writing constructs" (#935) (b743362)

Features

  • assets: isZipArchive indicates if this is a zip asset (#944) (65190f9)
  • aws-cdk: deploy supports CloudFormation Role (#940) (393be6f), closes #735
  • aws-cloudformation: allow specifying custom resource type (#943) (9de3a84)
  • aws-cloudformation: correctly handle the templateConfiguration property in the CreateUpdateStack Pipeline Action. (#923) (d251a46)
  • aws-cloudfront: add support for "webAclId" (#969) (3ec9d76)
  • aws-codedeploy: add auto rollback configuration to server Deployment Group. (#925) (7ee91cf)
  • aws-codedeploy: add instance tag filter support for server Deployment Groups. (#824) (e6e8c51)
  • aws-codedeploy: add support for setting CloudWatch alarms on a server Deployment Group. (#926) (27b26b1)
  • add support for Step Functions (#827) (81b533c)
  • aws-lambda: add grantInvoke() method (#962) (1ee8135), closes #961
  • aws-lambda: improvements to the code and runtime APIs (#945) (36f29b6), closes #902 #188 #947 #947 #664
  • aws-logs: extractMetric() returns Metric object (#939) (5558fff), closes #850
  • aws-s3: initial support for website hosting (#946) (2d3661c)
  • aws-s3-deployment: bucket deployments (#971) (84d6876), closes #952 #953 #954
  • docs: added link to CloudFormation concepts (#934) (666bbba)

BREAKING CHANGES

  • aws-apigateway: specifying a path no longer works. If you used to
    provide a '/', remove it. Otherwise, you will have to supply proxy: false
    and construct more complex resource paths yourself.
  • aws-lambda: The construct lambda.InlineJavaScriptLambda is no longer supported. Use lambda.Code.inline instead; lambda.Runtime.NodeJS43Edge runtime is removed. CloudFront docs stipulate that you should use node6.10 or node8.10. It is always possible to use any value by instantiating a lambda.Runtime object.

v0.12.0

12 Oct 10:12
2dc324e
Compare
Choose a tag to compare

IMPORTANT NOTE: This release includes a fix for a bug
that would make the toolkit unusable for multi-stack applications. In order to benefit from
this fix, a globally installed CDK toolkit must also be updated:

$ npm i -g aws-cdk
$ cdk --version
0.12.0 (build ...)

Like always, you will also need to update your project's library versions:

Language Update?
JavaScript/TypeScript (npm) npx npm-check-updates -u
Java (maven) mvn versions:use-latest-versions
.NET (NuGet) nuget update

Bug Fixes

  • aws-codebuild: allow passing oauth token to GitHubEnterpriseSource (#908) (c23da91)
  • toolkit: multi-stack apps cannot be synthesized or deployed (#911) (5511076), closes #868 #294 #910

Features

  • aws-cloudformation: add permission management to CreateUpdate and Delete Stack CodePipeline Actions. (#880) (8b3ae43)
  • aws-codepipeline: make input and output artifact names optional when creating Actions. (#845) (3d91c93)

BREAKING CHANGES

  • aws-codepipeline: this commit contains the following breaking changes:
    • Rename 'artifactName' in Action construction properties to 'outputArtifactName'
    • Rename the 'artifact' property of Actions to 'outputArtifact'
    • No longer allow adding output artifacts to Actions by instantiating the Artifact class
    • Rename Action#input/outputArtifacts properties to _input/_outputArtifacts

Previously, we always required customers to explicitly name the output artifacts the Actions used in the Pipeline,
and to explicitly "wire together" the outputs of one Action as inputs to another.
With this change, the CodePipeline Construct generates artifact names,
if the customer didn't provide one explicitly,
and tries to find the first available output artifact to use as input to a newly created Action that needs it,
thus turning both the input and output artifacts from required to optional properties.

v0.11.0

11 Oct 18:19
89ba45d
Compare
Choose a tag to compare

IMPORTANT NOTE: This release includes a breaking change
in the toolkit <=> app protocol. This means that in order to synthesize CDK apps that use this version,
the globally installed CDK toolkit must also be updated:

$ npm i -g aws-cdk
$ cdk --version
0.11.0 (build ...)

Like always, you will also need to update your project's library versions:

Language Update?
JavaScript/TypeScript (npm) npx npm-check-updates -u
Java (maven) mvn versions:use-latest-versions
.NET (NuGet) nuget update

Bug Fixes

  • aws-apigateway: allow + in path parts (#769) (0c50d27), closes #768
  • aws-cdk: continue after exceptions in stack monitor (#791) (b0f3298), closes #787
  • aws-cloudfront: check for undefined and determining of the defaultRootObject prop is set or not (#801) (32a74c6)
  • aws-cloudfront: properly support loggingConfig (#809) (5512f70), closes #721
  • aws-codecommit: typo in README (#780) (0e79c2d)
  • aws-ec2: Add Burstable Generation 3 Instances (#812) (d36ee6d)
  • aws-ec2: fix capitalization of "VPCEndpointType" to "VpcEndpointType" (#789) (7a8ee2c), closes #765
  • aws-ec2: fix typo in resource identifier (#818) (f529c80)
  • aws-elbv2: fix load balancer registration (#890) (8cc9abe)
  • aws-s3: properly export bucketDomainName (#844) (a65060d)
  • aws-sqs: Queue.import() doesn't return a value (#885) (c592b7f), closes #879
  • cdk: fix TagManager to evaluate to undefined if no tags are included (#882) (477c827)
  • cdk: init templates were not upgraded to typescript ^3.0.0 (#904) (2cc7475)
  • cdk: jsx support conflicts with React usage (#884) (76d8031), closes #830
  • cfn2ts: expect Token instead of CloudFormationToken (#896) (6eee1d2)
  • docs: fix issue #718 (Aurora DB example) (#783) (016f3a8)
  • docs: update supported languages in README (#819, #450) (#820) (ffac98c)
  • Correct heading level of CHANGELOG.md 0.10.0 (40d9ef0)
  • Emit valid YAML-1.1 (#876) (ff857ea), closes #875
  • toolkit: improve error message for large templates (#900) (a41f48f), closes #34

Code Refactoring

Features

  • aws-apigateway: "LambdaRestApi" and "addProxy" routes (#867) (905a95d)
  • aws-cdk: add maven wrapper to java template (#811) (72aa872)
  • aws-cloudformation: rename the CFN CodePipeline Actions. (#771) (007e7b4)
  • aws-cloudformation: update the ReadMe of the module to reflect the new Action names. (#775) (6c0e75b), closes #771
  • aws-cloudfront: Support Security Policy (#804) (b39bf11), closes #795
  • aws-codedeploy: Add the auto-scaling groups property to ServerDeploymentGroup. (#739) (0b28886)
  • aws-codedeploy: Deployment Configuration Construct. (#653) (e6b67ad)
  • aws-codedeploy: support setting a load balancer on a Deployment Group. (#786) (e7af9f5)
  • aws-codepipeline: allow specifying the runOrder property when creating Actions. (#776) (d146c8d)
  • aws-codepipeline, aws-codecommit, aws-s3: change the convention for naming the source Actions to XxxSourceAction. (#753) (9c3ce7f)
  • aws-dynamodb: IAM grants support (#870) (c5a4200)
  • aws-dynamodb: support Global Secondary Indexes (#760) (3601440)
  • aws-dynamodb: tags support (#814) (924c84e)
  • aws-dynamodB: support Local Secondary Indexes (#825) (3175af3)
  • aws-ec2: add support for ICMP protocol's classification Types & Codes to SecurityGroupRule (#893) (85bd3c0)
  • aws-ec2: allow configuring subnets for NAT gateway (#874) (8ec761c)
  • aws-ec2: support UDP port ranges in SecurityGroups (#835) (b42ef90)
  • aws-elasticloadbalancingv2: support for ALB/NLB (#750) (bd9ee01)
  • aws-s3: support granting public access to objects (#886) (bdee191), closes #877
  • cdk: Add support for UseOnlineResharding with UpdatePolicies (#881) (1f717e1)
  • cdk: configurable default SSM context provider (#889) (353412b)
  • core: resource overrides (escape hatch) (#784) (5054eef), closes #606
  • aws-codepipeline: Manage IAM permissions for (some) CFN CodePipeline actions ([#843](https://gith...
Read more

v0.10.0

28 Sep 09:12
a5089e9
Compare
Choose a tag to compare

This release introduces a better way to "escape" L2 constructs in case of missing features
by adding the ability to add arbitrary overrides for resource properties:

const bucket = new s3.Bucket(this, 'L2Bucket');

// access L1
const bucketResource = bucket.findChild('Resource') as s3.cloudformation.BucketResource;

// strongly-typed overrides
bucketResource.propertyOverrides.bucketName = 'NewBucketName';

// weakly-typed overrides
bucketResource.addPropertyOverride('BucketName', 'NewerBucketName');

Bug Fixes

  • aws-codecommit: typo in README (#780) (0e79c2d)
  • aws-ec2: fix capitalization of "VPCEndpointType" to "VpcEndpointType" (#789) (7a8ee2c), closes #765
  • docs: fix issue #718 (Aurora DB example) (#783) (016f3a8)

Code Refactoring

Features

  • aws-cloudformation: rename the CodePipeline actions (#771) (007e7b4)
  • aws-cloudformation: update the README of the module to reflect the new action names (#775) (6c0e75b), closes #771
  • aws-codedeploy: add auto-scaling groups property to ServerDeploymentGroup (#739) (0b28886)
  • aws-codedeploy: add deployment configuration construct (#653) (e6b67ad)
  • aws-codepipeline, aws-codecommit, aws-s3: change the convention for naming the source Actions to XxxSourceAction (#753) (9c3ce7f)
  • aws-elasticloadbalancingv2: support for ALB/NLB (#750) (bd9ee01)
  • tagging support for AutoScaling/SecurityGroup (#766) (3d48eb2)
  • core: resource overrides (escape hatch) (#784) (5054eef), closes #606
  • toolkit: stop creating 'empty' stacks (#779) (1dddd8a)

BREAKING CHANGES

  • cdk: the constructor signature of TagManager has changed. initialTags is now passed inside a props object.
  • util: @aws-cdk/util is no longer available
  • aws-elasticloadbalancingv2: adds classes for modeling Application and Network Load
    Balancers. AutoScalingGroups now implement the interface that makes
    constructs a load balancing target. The breaking change is that Security
    Group rule identifiers have been changed in order to make adding rules
    more reliable. No code changes are necessary but existing deployments
    may experience unexpected changes.
  • aws-cloudformation: this renames all CloudFormation Actions for CodePipeline
    to bring them in line with Actions defined in other service packages.
  • aws-codepipeline, aws-codecommit, aws-s3: change the names of the source Actions from XxxSource to XxxSourceAction.
    This is to align them with the other Actions, like Build.
    Also, CodeBuild has the concept of Sources, so it makes sense to strongly differentiate between the two.

CloudFormation Changes

  • @aws-cdk/cfnspec: Updated [CloudFormation resource specification] to v2.8.0 ([@RomainMuller] in #767)
    • New Construct Libraries
      • @aws-cdk/aws-amazonmq
      • @aws-cdk/aws-iot1click
    • New Resource Types
      • AWS::IoT1Click::Device
      • AWS::IoT1Click::Placement
      • AWS::IoT1Click::Project
    • Attribute Changes
      • AWS::EC2::VPCEndpoint CreationTimestamp (added)
      • AWS::EC2::VPCEndpoint DnsEntries (added)
      • AWS::EC2::VPCEndpoint NetworkInterfaceIds (added)
    • Property Changes
      • AWS::ApiGateway::Deployment DeploymentCanarySettings (added)
      • AWS::ApiGateway::Method AuthorizationScopes (added)
      • AWS::ApiGateway::Stage AccessLogSetting (added)
      • AWS::ApiGateway::Stage CanarySetting (added)
      • AWS::AutoScaling::AutoScalingGroup LaunchTemplate (added)
      • AWS::CodeBuild::Project LogsConfig (added)
      • AWS::CodeBuild::Project SecondaryArtifacts (added)
      • AWS::CodeBuild::Project SecondarySources (added)
      • AWS::CodeDeploy::DeploymentGroup Ec2TagSet (added)
      • AWS::CodeDeploy::DeploymentGroup OnPremisesTagSet (added)
      • AWS::EC2::FlowLog LogDestination (added)
      • AWS::EC2::FlowLog LogDestinationType (added)
      • AWS::EC2::FlowLog DeliverLogsPermissionArn.Required (changed)
        • Old: true
        • New: false
      • AWS::EC2::FlowLog LogGroupName.Required (changed)
        • Old: true
        • New: false
      • AWS::EC2::VPCEndpoint IsPrivateDnsEnabled (deleted)
      • AWS::EC2::VPCEndpoint PrivateDnsEnabled (added)
      • AWS::EC2::VPCEndpoint RouteTableIds.DuplicatesAllowed (added)
      • AWS::EC2::VPCEndpoint SecurityGroupIds.DuplicatesAllowed (added)
      • AWS::EC2::VPCEndpoint SubnetIds.DuplicatesAllowed (added)
      • AWS::EC2::VPCEndpoint VPCEndpointType.UpdateType (changed)
        • Old: Mutable
        • New: Immutable
      • AWS::ECS::Service SchedulingStrategy (added)
      • AWS::ECS::Service ServiceRegistries.UpdateType (changed)
        • Old: Mutable
        • New: Immutable
      • AWS::ElastiCache::ReplicationGroup NodeGroupConfiguration.UpdateType (changed)
        • Old: Immutable
        • New: Conditional
      • AWS::ElastiCache::ReplicationGroup NumNodeGroups.UpdateType (changed)
        • Old: Immutable
        • New: Conditional
      • AWS::RDS::DBCluster EngineMode (added)
      • AWS::RDS::DBCluster ScalingConfiguration (added)
      • AWS::SageMaker::NotebookInstance LifecycleConfigName.UpdateType (changed)
        • Old: Immutable
        • New: Mutable
    • Property Type Changes
      • AWS::ApiGateway::Deployment.AccessLogSetting (added)
      • AWS::ApiGateway::Deployment.CanarySetting (added)
      • AWS::ApiGateway::Deployment.DeploymentCanarySettings (added)
      • AWS::ApiGateway::Stage.AccessLogSetting (added)
      • AWS::ApiGateway::Stage.CanarySetting (added)
      • AWS::AutoScaling::AutoScalingGroup.LaunchTemplateSpecification (added)
      • AWS::CodeBuild::Project.CloudWatchLogsConfig (added)
      • AWS::CodeBuild::Project.LogsConfig (added)
      • AWS::CodeBuild::Project.S3LogsConfig (added)
      • AWS::CodeDeploy::DeploymentGroup.EC2TagSet (added)
      • AWS::CodeDeploy::DeploymentGroup.EC2TagSetListObject (added)
      • AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSet (added)
      • AWS::CodeDeploy::DeploymentGroup.OnPremisesTagSetListObject (added)
      • AWS::EC2::SpotFleet.ClassicLoadBalancer (added)
      • AWS::EC2::SpotFleet.ClassicLoadBalancersConfig (added)
      • AWS::EC2::SpotFleet.FleetLaunchTemplateSpecification (added)
      • AWS::EC2::SpotFleet.LaunchTemplateConfig (added)
      • AWS::EC2::SpotFleet.LaunchTemplateOverrides (added)
      • AWS::EC2::SpotFleet.LoadBalancersConfig (added)
      • AWS::EC2::SpotFleet.TargetGroup (added)
      • AWS::EC2::SpotFleet.TargetGroupsConfig (added)
      • AWS::ECS::TaskDefinition.DockerVolumeConfiguration (added)
      • AWS::ECS::TaskDefinition.RepositoryCredentials (added)
      • AWS::ECS::TaskDefinition.Tmpfs (added)
      • AWS::Events::Rule.SqsParameters (added)
      • AWS::RDS::DBCluster.ScalingConfiguration (added)
      • AWS::ApiGateway::Deployment.StageDescription AccessLogSetting (added)
      • AWS::ApiGateway::Deployment.StageDescription CanarySetting (added)
      • AWS::ApiGateway::Method.Integration ConnectionId (added)
      • AWS::ApiGateway::Method.Integration ConnectionType (added)
      • AWS::ApiGateway::Method.Integration TimeoutInMillis (added)
      • AWS::ApiGateway::UsagePlan.ApiStage Throttle (added)
      • AWS::CodeBuild::Project.Artifacts ArtifactIdentifier (added)
      • AWS::CodeBuild::Project.Source SourceIdentifier (added)
      • AWS::CodeBuild::Project.VpcConfig SecurityGroupIds.Required (changed)
        • Old: true
        • New: false
      • AWS::CodeBuild::Project.VpcConfig Subnets.Required (changed)
        • Old: true
        • New: false
      • AWS::CodeBuild::Project.VpcConfig VpcId.Required (changed)
        • Old: true
        • New: false
      • AWS::CodeDeploy::DeploymentGroup.EC2TagFilter Key.Documentation (changed)
      • AWS::CodeDeploy::DeploymentGroup.EC2TagFilter Type.Documentati...
Read more

v0.9.2

20 Sep 20:59
d68b6c3
Compare
Choose a tag to compare

NOTICE: This release includes a framework-wide breaking change which changes the type of all the string resource attributes across the framework. Instead of using strong-types that extend cdk.Token (such as QueueArn, TopicName, etc), we now represent all these attributes as normal strings, and codify the tokens into the string (using the feature introduced in #168).

Furthermore, the cdk.Arn type has been removed. In order to format/parse ARNs, use the static methods on cdk.ArnUtils.

See motivation and discussion in #695.

Breaking Changes

  • cfn2ts: use stringified tokens for resource attributes instead of strong types (#712) (6508f78), closes #518 #695 #744
  • aws-dynamodb: Attribute type for keys, changes the signature of the addPartitionKey and addSortKey methods to be consistent across the board. (#720) (e6cc189)
  • aws-codebuild: fix typo "priviledged" -> "privileged

Bug Fixes

Features

  • aws-apigateway: new API Gateway Construct Library (#665) (b0f3857)
  • aws-cdk: detect presence of EC2 credentials (#724) (8e8c295), closes #702 #130
  • aws-codepipeline: make the Stage insertion API in CodePipeline more flexible (#460) (d182818)
  • aws-codepipeline: new "Pipeline#addStage" convenience method (#647) (25c9fa0)
  • aws-rds: add support for parameter groups (#729) (2541508), closes #719
  • docs: add documentation for CDK toolkit plugings (#733) (965b918)
  • dependencies: upgrade to jsii 0.7.6

v0.9.1

14 Sep 09:26
eee56d8
Compare
Choose a tag to compare

Bug Fixes

  • aws-cdk: Fix proxy support for account lookup (#693) (5468225), closes #645

Features

  • aws-ec2 BREAKING: Move LoadBalancer to aws-elasticloadbalancing package (#705) (4bd1cf2)
  • aws-serverless BREAKING: Rename @aws-cdk/aws-serverless to @aws-cdk/aws-sam (#704) (3a67d5d)
  • aws-dynamodb: Support DynamoDB TTL (#691) (35b6206)
  • aws-dynamodb: Support DynamoDB PITR (#701) (7a4d7b7)
  • aws-ecr: Add support for ECR repositories (#697) (c6c09bf)
  • aws-lambda: Add support for XRay Tracing (#675) (b4435cc)
  • cfnspec: Add DeploymentPreference Patch for SAM Spec (#681) (#681) (f96c487)

v0.9.0

11 Sep 11:35
b222731
Compare
Choose a tag to compare

0.9.0 -- 2018-09-10

The headliners of this release are .NET support, and a wealth of commits by external contributors who are stepping up to fix the CDK for their use cases! Thanks all for the effort put into this release!

Features

  • Add strongly-named .NET targets, and a cdk init template for C# projects (@mpiroc in #617, #643).
  • @aws-cdk/aws-autoscaling: Allow attaching additional security groups to Launch Configuration (@moofish32 in #636).
  • @aws-cdk/aws-autoscaling: Support update and creation policies on AutoScalingGroups (@rix0rrr in #595).
  • @aws-cdk/aws-codebuild: Add support for running script from an asset (@rix0rrr in #677).
  • @aws-cdk/aws-codebuild: New method addBuildToPipeline on Project (@skinny85 in 783dcb3).
  • @aws-cdk/aws-codecommit: New method addToPipeline on Repository (@skinny85 in #616).
  • @aws-cdk/aws-codedeploy: Add initial support for CodeDeploy (@skinny85 in #593, #641).
  • @aws-cdk/aws-dynamodb: Add support for DynamoDB autoscaling (@SeekerWing in #637).
  • @aws-cdk/aws-dynamodb: Add support for DynamoDB streams (@rhboyd in #633).
  • @aws-cdk/aws-dynamodb: Add support for server-side encryption (@jungseoklee in #684).
  • @aws-cdk/aws-ec2 (BREAKING): SecurityGroup can now be used as a Connectable #582).
  • @aws-cdk/aws-ec2: Add VPC tagging ([@moofish] in #538).
  • @aws-cdk/aws-ec2: Add support for InstanceSize.Nano (@rix0rrr in #581)
  • @aws-cdk/aws-lambda: Add support for dead letter queues (@SeekerWing in #663).
  • @aws-cdk/aws-lambda: Add support for placing a Lambda in a VPC (@rix0rrr in #598).
  • @aws-cdk/aws-logs: Add extractMetric() helper function (@rix0rrr in #676).
  • @aws-cdk/aws-rds: Add support for Aurora PostreSQL/MySQL engines (@cookejames in #586)
  • @aws-cdk/aws-s3: Additional grant methods for Buckets (@eladb in #591)
  • @aws-cdk/aws-s3: New method addToPipeline on Bucket (@skinny85 in c8b7a49).
  • aws-cdk: Add support for HTTP proxies (@rix0rrr in #666).
  • aws-cdk: Toolkit now shows failure reason if stack update fails (@rix0rrr in #609).
  • cdk-build-tools: Add support for running experiment JSII versions (@RomainMuller in #649).

Changes

  • BREAKING: Generate classes and types for the CloudFormation resource .ref attributes (@rix0rrr in #627).
  • BREAKING: Make types accepted in Policy-related classes narrower (from any to Arn, for example) to reduce typing mistakes (@rix0rrr in #629).
  • @aws-cdk/aws-codepipeline (BREAKING): Align the CodePipeline APIs (@skinny85 in #492, #568)
  • @aws-cdk/aws-ec2 (BREAKING): Move Fleet/AutoScalingGroup to its own package (@rix0rrr in #608).
  • aws-cdk: Simplify plugin protocol (@RomainMuller in #646).

Bug Fixes

  • @aws-cdk/aws-cloudfront: Fix CloudFront behavior for ViewerProtocolPolicy (@mindstorms6 in #615).
  • @aws-cdk/aws-ec2: VPC Placement now supports picking Isolated subnets (@rix0rrr in #610).
  • @aws-cdk/aws-logs: Add export()/import() capabilities (@rix0rrr in #630).
  • @aws-cdk/aws-rds: Fix a bug where a cluster with 1 instance could not be created (@cookejames in #578)
  • @aws-cdk/aws-s3: Bucket notifications can now add dependencies, fixing creation order (@eladb in #584).
  • @aws-cdk/aws-s3: Remove useless bucket name validation (@rix0rrr in #628).
  • @aws-cdk/aws-sqs: Make QueueRef.encryptionMasterKey readonly (@RomainMuller in #650).
  • assets: S3 read permissions are granted on a prefix to fix lost permissions during asset update (@rix0rrr in #510).
  • aws-cdk: Remove bootstrapping error if multiple stacks are in the same environment (@RomainMuller in #625).
  • aws-cdk: Report and continue if git throws errors during cdk init (@rix0rrr in #587).

CloudFormation Changes

  • @aws-cdk/cfnspec: Updated [CloudFormation resource specification] to v2.6.0 (@RomainMuller in #594)
    • New AWS Construct Library
      • @aws-cdk/aws-sagemaker supports AWS::SageMaker resources
    • New Resource Types
      • AWS::AmazonMQ::Broker
      • AWS::AmazonMQ::Configuration
      • AWS::CodePipeline::Webhook
      • AWS::Config::AggregationAuthorization
      • AWS::Config::ConfigurationAggregator
      • AWS::EC2::VPCEndpointConnectionNotification
      • AWS::EC2::VPCEndpointServicePermissions
      • AWS::IAM::ServiceLinkedRole
      • AWS::SSM::ResourceDataSync
      • AWS::SageMaker::Endpoint
      • AWS::SageMaker::EndpointConfig
      • AWS::SageMaker::Model
      • AWS::SageMaker::NotebookInstance
      • AWS::SageMaker::NotebookInstanceLifecycleConfig
    • Attribute Changes
      • AWS::CodePipeline::Pipeline Version (added)
    • Property Changes
      • AWS::AppSync::DataSource HttpConfig (added)
      • AWS::DAX::Cluster SSESpecification (added)
      • AWS::DynamoDB::Table Stream (added)
      • AWS::DynamoDB::Table AutoScalingSupport (added)
      • AWS::EC2::VPCEndpoint IsPrivateDnsEnabled (added)
      • AWS::EC2::VPCEndpoint SecurityGroupIds (added)
      • AWS::EC2::VPCEndpoint SubnetIds (added)
      • AWS::EC2::VPCEndpoint VPCEndpointType (added)
      • AWS::EC2::VPCEndpoint RouteTableIds.DuplicatesAllowed (deleted)
      • AWS::EC2::VPCPeeringConnection PeerRegion (added)
      • AWS::EFS::FileSystem ProvisionedThroughputInMibps (added)
      • AWS::EFS::FileSystem ThroughputMode (added)
      • AWS::EMR::Cluster KerberosAttributes (added)
      • AWS::Glue::Classifier JsonClassifier (added)
      • AWS::Glue::Classifier XMLClassifier (added)
      • AWS::Glue::Crawler Configuration (added)
      • AWS::Lambda::Lambda DLQConfigurationSupport (added)
      • AWS::Neptune::DBInstance DBSubnetGroupName.UpdateType (changed)
        • Old: Mutable
        • New: Immutable
      • AWS::SNS::Subscription DeliveryPolicy (added)
      • AWS::SNS::Subscription FilterPolicy (added)
      • AWS::SNS::Subscription RawMessageDelivery (added)
      • AWS::SNS::Subscription Region (added)
      • AWS::SQS::Queue Tags (added)
      • AWS::ServiceDiscovery::Service HealthCheckCustomConfig (added)
    • Property Type Changes
      • AWS::AppSync::DataSource.HttpConfig (added)
      • AWS::DAX::Cluster.SSESpecification (added)
      • AWS::EMR::Cluster.KerberosAttributes (added)
      • AWS::Glue::Classifier.JsonClassifier (added)
      • AWS::Glue::Classifier.XMLClassifier (added)
      • AWS::ServiceDiscovery::Service.HealthCheckCustomConfig (added)
      • AWS::CloudFront::Distribution.CacheBehavior FieldLevelEncryptionId (added)
      • AWS::CloudFront::Distribution.DefaultCacheBehavior FieldLevelEncryptionId (added)
      • AWS::CodeBuild::Project.Artifacts EncryptionDisabled (added)
      • AWS::CodeBuild::Project.Artifacts OverrideArtifactName (added)
      • AWS::CodeBuild::Project.Environment Certificate (added)
      • AWS::CodeBuild::Project.Source ReportBuildStatus (added)
      • AWS::ServiceDiscovery::Service.DnsConfig RoutingPolicy (added)
      • AWS::WAF::WebACL.ActivatedRu...
Read more