@aws-cdk/aws-s3
Advanced tools
Changelog
1.0.0 (2019-07-09)
We are excited to announce the 1.0.0 release of the AWS CDK β including GA support for TypeScript, JavaScript, and Python!
We want to thank all of our early customers, and the hundreds of contributors, for all the help and support in making this release a reality. Thank you for the patience to deal with the many, many breaking changes that happened along the way. This product would not be what it is today if it weren't for all the feedback, diligent issue reporting (bugs, missing features, unclear documentation, etc.), and code contributions from the community.
Special thanks go out to a few of our most prolific contributors who went above and beyond to help improve the CDK:
1.0.0 is a huge milestone for us, but it's still only the beginning! We are excited to continue evolving the CDK, to introduce support for new languages and capabilities, and to continue working closely with the open-source community.
Changelog
0.39.0 (2019-07-08)
assets
, aws-ecr-assets
and aws-s3-assets
are now experimental instead of stableassets
is now experimental instead of stableaws-ecr-assets
is now experimental instead of stableaws-s3-assets
is now experimental instead of stableChangelog
0.38.0 (2019-07-08)
LinuxBuildImage.fromDockerHub()
has been renamed to fromDockerRegistry()
and WindowsBuildImage.fromDockerHub()
has been renamed to fromDockerRegistry()
aws-iam.User
and Group
: managedPolicyArns
=>
managedPolicies
.IPv4
=> Ipv4
, IPv6
=>
Ipv6
, AZs
=> Azs
.Changelog
0.37.0 (2019-07-04)
construct.findChild()
now only looks up direct childrenPort.toRuleJSON
was renamed to toRuleJson
PipelineProject.addSecondaryArtifact
now returns void (formerly any)Project.addSecondaryArtifact
now returns void (formerly any)Changelog
0.36.2 (2019-07-03)
Changelog
0.36.1 (2019-07-01)
Changelog
0.36.0 (2019-06-24)
clusterName
from Services (#2980) (a6e4f6a)onXxx()
methods (#2921) (ea10f0d), closes #2913@aws-cdk/cdk
module was renamed to @aws-cdk/core
, python: aws_cdk.core
, java: the artifact cdk
in groupId software.amazon.awscdk
was renamed to core
@aws-cdk/cdk.Duration
instead of number
, and were renamed to exclude any unit indication.app.run()
has been removed (use app.synth()
).CfnResource.options
property was renamed to CfnResource.cfnOptions
to avoid conflicts with properties introduced by derived classes.CfnXxx.cfnResourceTypeName
is now CFN_RESOURCE_TYPE_NAME
in generated CFN resources.ContextProvider
is no longer designed to be extended. Use ContextProvider.getValue
and ContextProvider.getKey
as utilities.Context.getSsmParameter
has been removed. Use ssm.StringParameter.valueFromLookup
Context.getAvailabilityZones
has been removed. Use stack.availabilityZones
Context.getDefaultAccount
and getDefaultRegion
have been removed an no longer available. Use the environment variables CDK_DEFAULT_ACCOUNT
and CDK_DEFAULT_REGION
instead.StackProps.autoRun
was renamed to StackProps.autoSynth
.CfnElement.refAsString
renamed to ref
of string
type. The IResolvable
version have been removed.IStringValue
renamed to IStringProducer
Include
renamed to CfnInclude
Cfn
prefix was added to the following types: CfnCreationPolicy
, CfnResourceAutoScalingCreationPolicy
, CfnResourceAutoScalingCreationPolicy
, CfnDeletionPolicy
, CfnUpdatePolicy
, CfnAutoScalingRollingUpdate
, CfnAutoScalingReplacingUpdate
, CfnAutoScalingScheduledAction
, CfnCodeDeployLambdaAliasUpdate
, CfnTag
CfnRuleAssertion
, CfnDynamicReferenceProps
deepMerge
is no longer exported.CfnOutputProps.export
was renamed to exportName
.CfnOutput
all properties are now privateStringListCfnOutput
has been removedFn
were made static
, and the Fn
constructor was made private.VpcNetworkProvider
has been removed. Use Vpc.fromLookup
.ec2.MachineImage
will now resolve AMIs from SSM during deployment.ecs.EcsOptimizedAmi
will now resolve AMis from SSM during deployment.hardwareType
was STANDARD
. Now it always defaults to Amazon Linux v2.service.clusterName
has been replaced with .cluster
.requiredTransform
is now REQUIRED_TRANSFORM
in generated code.AwsCustomResource
class was moved to a new module called @aws-cdk/custom-resourcecapabilities
property is now an array to support multiple capabilities.Pipeline.crossRegionScaffoldStacks
has been renamed to crossRegionSupport
, and its type changed from CrossRegionScaffoldStack
to CrossRegionSupport
.CodeCommitAction.pollForSourceChanges
to trigger
and make it an enum.trigger
, and make it an enum.CloudFormationAction
and CloudFormationDeployAction
.HostedZoneProvider
has been removed. Use HostedZone.fromLookup
.Changelog
0.35.0 (2019-06-19)
cdk context
(#2870) (b8a1c8e), closes #2854name
in StageProps
to stageName
. (#2882) (be574a1)hwType
to hardwareType
(#2916) (1aa0589), closes #2896aws-sns-subscribers
(#2804) (9ef899c)AssetProps.packaging
has been removed and is now automatically discovered based on the file type.ZipDirectoryAsset
has been removed, use aws-s3-assets.Asset
.FileAsset
has been removed, use aws-s3-assets.Asset
.Code.directory
and Code.file
have been removed. Use Code.asset
.hardwareType
from hwType
.TableOptions.pitrEnabled
renamed to pointInTimeRecovery
.TableOptions.sseEnabled
renamed to serverSideEncryption
.TableOptions.ttlAttributeName
renamed to timeToLiveAttribute
.TableOptions.streamSpecification
renamed stream
.ContainerImage.fromAsset()
now takes only build directory
directly (no need to pass scope
or id
anymore).ISecret.secretJsonValue
renamed to secretValueFromJson
.ParameterStoreString
has been removed. Use StringParameter.fromStringParameterAttributes
.ParameterStoreSecureString
has been removed. Use StringParameter.fromSecureStringParameterAttributes
.ParameterOptions.name
was renamed to parameterName
.newStream
renamed to addStream
and doesn't need a scopenewSubscriptionFilter
renamed to addSubscriptionFilter
and doesn't need a scopenewMetricFilter
renamed to addMetricFilter
and doesn't need a scopeNewSubscriptionFilterProps
renamed to SubscriptionProps
NewLogStreamProps
renamed to LogStreamOptions
NewMetricFilterProps
renamed to MetricFilterOptions
JSONPattern
renamed to JsonPattern
MethodOptions.authorizerId
is now called authorizer
and accepts an IAuthorizer
which is a placeholder interface for the authorizer resource.restapi.executeApiArn
renamed to arnForExecuteApi
.restapi.latestDeployment
and deploymentStage
are now read-only.EventPattern.detail
is now a map.scheduleExpression: string
is now schedule: Schedule
.cdk.RemovalPolicy
to configure the resource's removal policy.applyRemovalPolicy
is now CfnResource.applyRemovalPolicy
.RemovalPolicy.Orphan
has been renamed to Retain
.RemovalPolicy.Forbid
has been removed, use Retain
.RepositoryProps.retain
is now removalPolicy
, and defaults to Retain
instead of remove since ECR is a stateful resourceKeyProps.retain
is now removalPolicy
LogGroupProps.retainLogGroup
is now removalPolicy
LogStreamProps.retainLogStream
is now removalPolicy
DatabaseClusterProps.deleteReplacePolicy
is now removalPolicy
DatabaseInstanceNewProps.deleteReplacePolicy
is now removalPolicy
attr
instead of the resource type. For example, in S3 bucket.bucketArn
is now bucket.attrArn
.propertyOverrides
has been removed from all "Cfn" resources, instead
users can now read/write resource properties directly on the resource class. For example, instead of lambda.propertyOverrides.runtime
just use lambda.runtime
.stageName
instead of name
Function.addLayer
to addLayers
and made it variadicIFunction.handler
propertyIVersion.versionArn
property (the value is at functionArn
)SingletonLayerVersion
LogRetention
PolicyStatement
no longer has a fluid API, and accepts a
props object to be able to set the important fields.ImportedResourcePrincipal
to UnknownPrincipal
.managedPolicyArns
renamed to managedPolicies
, takes
return value from ManagedPolicy.fromAwsManagedPolicyName()
.PolicyDocument.postProcess()
is now removed.PolicyDocument.addStatement()
renamed to addStatements
.PolicyStatement
is no longer IResolvable
, call .toStatementJson()
to retrieve the IAM policy statement JSON.AwsPrincipal
has been removed, use ArnPrincipal
instead.s3.StorageClass
is now an enum-like class instead of a regular
enum. This means that you need to call .value
in order to obtain it's value.s3.Coordinates
renamed to s3.Location
Artifact.s3Coordinates
renamed to Artifact.s3Location
.BuildSpec
object.lambda.Runtime.NodeJS*
are now lambda.Runtime.Nodejs*
Stack
APIstack.name
renamed to stack.stackName
stack.stackName
will return the concrete stack name. Use Aws.stackName
to indicate { Ref: "AWS::StackName" }.stack.account
and stack.region
will return the concrete account/region only if they are explicitly specified when the stack is defined (under the env
prop). Otherwise, they will return a token that resolves to the AWS::AccountId and AWS::Region intrinsic references. Use Context.getDefaultAccount()
and Context.getDefaultRegion()
to obtain the defaults passed through the toolkit in case those are needed. Use Token.isUnresolved(v)
to check if you have a concrete or intrinsic.stack.logicalId
has been removed. Use stack.getLogicalId()
stack.env
has been removed, use stack.account
, stack.region
and stack.environment
insteadstack.accountId
renamed to stack.account
(to allow treating account more abstractly)AvailabilityZoneProvider
can now be accessed through Context.getAvailabilityZones()
SSMParameterProvider
can now be accessed through Context.getSsmParameter()
parseArn
is now Arn.parse
arnFromComponents
is now arn.format
node.lock
and node.unlock
are now privatestack.requireRegion
and requireAccountId
have been removed. Use Token.unresolved(stack.region)
insteadstack.parentApp
have been removed. Use App.isApp(stack.node.root)
instead.stack.missingContext
is now privatestack.renameLogical
have been renamed to stack.renameLogicalId
IAddressingScheme
, HashedAddressingScheme
and LogicalIDs
are now internal. Override Stack.allocateLogicalId
to customize how logical IDs are allocated to resources.--rename
, and the stack
names are now immutable on the stack artifact.@aws-cdk/aws-sns-subscribers
package.roleName
in RoleProps
is now of type PhysicalName
bucketName
in BucketProps
is now of type PhysicalName
roleName
in RoleProps
is now of type PhysicalName
Changelog
0.34.0 (2019-06-07)
aws-cloudwatch-actions
(#2688) (e3df21a)recordValue: string
prop in route53.TxtRecord
changed to values: string[]
recordValue
prop in route53.CnameRecord
renamed to domainName
route53.AliasRecord
has been removed, use route53.ARecord
or route53.AaaaRecord
with the target
prop.EncryptionKeyAlias
class was renamed to Alias
.
Associated types (such as EncryptionKeyAliasProps
) were renamed in the
same way.App.run()
was renamed to App.synth()
(soft deprecation, it will be removed in the next release).node.stack
is now Stack.of(construct)
(fixes #2766)node.resolve
has been moved to stack.resolve
.node.stringifyJson
has been moved to stack.stringifyJson
.node.validateTree
is now ConstructNode.validate(node)
node.prepareTree
is now ConstructNode.prepare(node)
node.getContext
is now node.tryGetContext
node.recordReference
is now node.addReference
node.apply
is now node.applyAspect
node.ancestors()
is now node.scopes
node.required
has been removed.node.typename
has been removed.node.addChild
is now privatenode.findReferences()
is now node.references
node.findDependencies()
is now node.dependencies
stack.dependencies()
is now stack.dependencies
CfnElement.stackPath
has been removed.CloudFormationLang
is now internal (use stack.toJsonString()
)@aws-cdk/aws-cloudwatch-actions
package.targets.EcsEc2Task
renamed to targets.EcsTask
endpoint
is now type string
(previously any
)result
in the Pass state is now type map
(previously any
)@aws-cdk/applet-js
, @aws-cdk/aws-autoscaling-api
, @aws-cdk/aws-codedeploy-api
addPropertyOverride
should match in capitalization to the CloudFormation schema (normally pascal case). For example, addPropertyOverride('accessControl', 'xxx')
should now be addPropertyOverride('AccessControl', 'xxx')
.rds.RotationSingleUser
renamed to rds.SecretRotation
rds.ClusterParameterGroup
no longer has setParameter()
and removeParameter()
methods, use the parameters prop directly in the constructor instead.