@aws-cdk/aws-codepipeline-api
Advanced tools
Changelog
0.15.0 (2018-11-06)
js-yaml
to yaml
(#1092) (0b132b5)securityGroup
to securityGroups
(an array of security group objects).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.
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.Changelog
0.14.0 (2018-10-26)
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 ...)
addReadAutoScaling()
, call autoScaleReadCapacity()
, and similar for write scaling.XxxName
properties back into Name
. These will match the CloudFormation property names.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.Changelog
0.13.0 (2018-10-19)
proxy: false
and construct more complex resource paths yourself.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.Changelog
0.12.0 (2018-10-12)
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
aws-codepipeline: this commit contains the following breaking changes:
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.
Changelog
0.11.0 (2018-10-11)
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
framework: The cdk.App
constructor doesn't accept any arguments, and app.run()
does not return a string
anymore. All AWS CDK apps in all languages would need to be modified to adhere to the new API of the cdk.App
construct.
Instead of:
const app = new App(process.argv); // ERROR
// add stacks
process.stdout.write(app.run()); // ERROR
The new usage is:
const app = new App();
// add stacks
app.run();
framework: The CDK is no longer shipped with built-in support for JSX. You can still use JSX but you will have to manually configure it.
aws-iam: PolicyDocument
, PolicyStatement
and all PolicyPrincipal
classes moved from the @aws-cdk/cdk module and into the @aws-cdk/aws-iam module.
aws-codepipeline-api: Artifact.subartifact
method of the CodePipeline API was renamed to Artifact.atPath
.
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.
Changelog
0.10.0 (2018-09-27)
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 = 'amzn-s3-demo-bucket';
// weakly-typed overrides
bucketResource.addPropertyOverride('BucketName', 'amzn-s3-demo-bucket1');
TagManager
has changed. initialTags
is now passed inside a props object.@aws-cdk/util
is no longer available@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
Attribute Changes
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)
AWS::EC2::FlowLog LogGroupName.Required (changed)
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)
AWS::ECS::Service SchedulingStrategy (added)
AWS::ECS::Service ServiceRegistries.UpdateType (changed)
AWS::ElastiCache::ReplicationGroup NodeGroupConfiguration.UpdateType (changed)
AWS::ElastiCache::ReplicationGroup NumNodeGroups.UpdateType (changed)
AWS::RDS::DBCluster EngineMode (added)
AWS::RDS::DBCluster ScalingConfiguration (added)
AWS::SageMaker::NotebookInstance LifecycleConfigName.UpdateType (changed)
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)
AWS::CodeBuild::Project.VpcConfig Subnets.Required (changed)
AWS::CodeBuild::Project.VpcConfig VpcId.Required (changed)
AWS::CodeDeploy::DeploymentGroup.EC2TagFilter Key.Documentation (changed)
AWS::CodeDeploy::DeploymentGroup.EC2TagFilter Type.Documentation (changed)
AWS::CodeDeploy::DeploymentGroup.EC2TagFilter Value.Documentation (changed)
AWS::CodeDeploy::DeploymentGroup.TagFilter Key.Documentation (changed)
AWS::CodeDeploy::DeploymentGroup.TagFilter Type.Documentation (changed)
AWS::CodeDeploy::DeploymentGroup.TagFilter Value.Documentation (changed)
AWS::EC2::SpotFleet.SpotFleetRequestConfigData InstanceInterruptionBehavior (added)
AWS::EC2::SpotFleet.SpotFleetRequestConfigData LaunchTemplateConfigs (added)
AWS::EC2::SpotFleet.SpotFleetRequestConfigData LoadBalancersConfig (added)
AWS::EC2::SpotFleet.SpotPlacement Tenancy (added)
AWS::ECS::Service.ServiceRegistry ContainerName (added)
AWS::ECS::Service.ServiceRegistry ContainerPort (added)
AWS::ECS::Service.ServiceRegistry Port.UpdateType (changed)
AWS::ECS::Service.ServiceRegistry RegistryArn.UpdateType (changed)
AWS::ECS::TaskDefinition.ContainerDefinition RepositoryCredentials (added)
AWS::ECS::TaskDefinition.LinuxParameters SharedMemorySize (added)
AWS::ECS::TaskDefinition.LinuxParameters Tmpfs (added)
AWS::ECS::TaskDefinition.Volume DockerVolumeConfiguration (added)
AWS::ElastiCache::ReplicationGroup.NodeGroupConfiguration NodeGroupId (added)
AWS::Events::Rule.Target SqsParameters (added)
AWS::RDS::OptionGroup.OptionConfiguration OptionSettings.DuplicatesAllowed (added)
AWS::RDS::OptionGroup.OptionConfiguration OptionSettings.ItemType (added)
AWS::RDS::OptionGroup.OptionConfiguration OptionSettings.Type (changed)
Changelog
0.9.2 (2018-09-20)
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 string
s, 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.
addPartitionKey
and addSortKey
methods to be consistent across the board. (#720) (e6cc189)policy
argument (#730) (a79190c), closes #672Changelog
0.9.1 (2018-09-13)
Changelog
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!
cdk init
template for C# projects ([@mpiroc] in #617, #643).addBuildToPipeline
on Project ([@skinny85] in 783dcb3).addToPipeline
on Repository ([@skinny85] in #616).InstanceSize.Nano
([@rix0rrr] in #581)extractMetric()
helper function ([@rix0rrr] in #676).addToPipeline
on Bucket ([@skinny85] in c8b7a49)..ref
attributes ([@rix0rrr] in #627).any
to Arn
, for example) to reduce typing mistakes ([@rix0rrr] in #629).export()/import()
capabilities ([@rix0rrr] in #630).QueueRef.encryptionMasterKey
readonly ([@RomainMuller] in #650).cdk init
([@rix0rrr] in #587).@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 resourcesNew Resource Types
Attribute Changes
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)
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.ActivatedRule Action.Required (changed)
@aws-cdk/cfnspec: Updated Serverless Application Model (SAM) Resource Specification ([@RomainMuller] in #594)
Property Changes
Property Type Changes
AWS::Serverless::Function.SQSEvent (added)
AWS::Serverless::Function.EventSource Properties.Types (changed)