Product
Introducing License Enforcement in Socket
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
@aws-cdk/cloudformation-diff
Advanced tools
Utilities to diff CDK stacks against CloudFormation templates
@aws-cdk/cloudformation-diff is a package that provides tools to compare AWS CloudFormation templates. It helps in identifying the differences between two CloudFormation templates, which is useful for understanding changes before applying them.
Template Diffing
This feature allows you to compare two CloudFormation templates and identify the differences. The `diffTemplate` function takes two templates as input and returns the differences.
const { diffTemplate } = require('@aws-cdk/cloudformation-diff');
const templateA = require('./templateA.json');
const templateB = require('./templateB.json');
const differences = diffTemplate(templateA, templateB);
console.log(differences);
Change Detection
This feature helps in detecting specific changes between two templates. By iterating over the differences, you can log or handle each change individually.
const { diffTemplate } = require('@aws-cdk/cloudformation-diff');
const templateA = require('./templateA.json');
const templateB = require('./templateB.json');
const differences = diffTemplate(templateA, templateB);
differences.forEach(diff => {
console.log(`Change detected: ${diff}`);
});
Resource Comparison
This feature focuses on comparing resources within the templates. It allows you to identify changes specific to resources, which is useful for understanding the impact on infrastructure.
const { diffTemplate } = require('@aws-cdk/cloudformation-diff');
const templateA = require('./templateA.json');
const templateB = require('./templateB.json');
const differences = diffTemplate(templateA, templateB);
differences.resources.forEach(resourceDiff => {
console.log(`Resource change detected: ${resourceDiff}`);
});
cfn-diff is a package that provides similar functionality for comparing AWS CloudFormation templates. It offers tools to detect changes and differences between templates, similar to @aws-cdk/cloudformation-diff. However, it may not be as tightly integrated with the AWS CDK ecosystem.
This is a developer preview (public beta) module.
All classes with the
Cfn
prefix in this module (CFN Resources) are auto-generated from CloudFormation. They are stable and safe to use.However, all other classes, i.e., higher level constructs, are under active development and subject to non-backward compatible changes or removal in any future version. These are not subject to the Semantic Versioning model. This means that while you may use them, you may need to update your source code when upgrading to a newer version of this package.
This module is part of the AWS Cloud Development Kit project.
1.32.0 (2020-04-07)
UserPoolClient
construct no longer has the property
userPoolClientClientSecret
. The functionality to retrieve the client
secret never existed in CloudFormation, so this property was not
working in the first place.userPoolClientName
property on the UserPoolClient
construct will throw an error if client name was not configured on the
UserPoolClient
during initialization. This property was previously
incorrectly configured and was returning a not-implemented message from
CloudFormation every time.sourceCodeProvider
prop to connect your app to a source
code provider. The props repository
, accessToken
and oauthToken
do not exist
anymore in AppProps
.retentionPeriodHours
is now retentionPeriod
and of type Duration
Cluster
now creates a default managed nodegroup as its default capacity. Set the new cluster property defaultCapacityType
to DefaultCapacityType.EC2
to preserve EC2
as its default capacity.add*Trigger()
methods to configure
lambda triggers has now been replaced by a single
addTrigger()
method.addTrigger()
method will fail if a trigger
was already configured for that user pool operation.{[key: string]: any}
instead of plain any
. You were always supposed to pass a map/dictionary in these locations, but the type system didn't enforce it. It now does.aws:SecureTransport
for staging bucket (#7192) (ed106ea)Size
unit representing digital information quantity (#6940) (22a560d)acm-certificatemanager: DnsValidatedCertificateHandler support for SubjectAlternativeNames
(#7050) (a711c01), closes #4659
aws-kinesis: test assume order between stacks (#7065) (17aab37)
cli: can't use credential providers for stacks with assets (#7022) (afd7045), closes #7005
cloudtrail: include s3KeyPrefix in bucket policy resource (#7053) (b49881f), closes #6741
cognito: user pool - passwordPolicy.minLength
is not optional in all cases (#6971) (49cdd8f)
dynamodb: cannot use attribute as key in a GSI, non-key in another (#7075) (a6bd34f), closes #4398
ecs: default Service throws in a VPC without private subnets (#7188) (0ef6a95), closes #7062
events: Batch target does not work (#7191) (6f00783), closes #7137
kinesis: retention period does not use Duration type (#7037) (1186227), closes #7036
rewrite-imports: incorrect main in package.json (#7021) (2bf85b3)
stepfunctions-tasks: batch job - can not use task input as array size (#7008) (923d2a1), closes #6922
stepfunctions-tasks: confusion between multiple ways to run a Lambda (#6796) (7485448), closes #4801
FAQs
Utilities to diff CDK stacks against CloudFormation templates
The npm package @aws-cdk/cloudformation-diff receives a total of 155,233 weekly downloads. As such, @aws-cdk/cloudformation-diff popularity was classified as popular.
We found that @aws-cdk/cloudformation-diff demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Product
Ensure open-source compliance with Socket’s License Enforcement Beta. Set up your License Policy and secure your software!
Product
We're launching a new set of license analysis and compliance features for analyzing, managing, and complying with licenses across a range of supported languages and ecosystems.
Product
We're excited to introduce Socket Optimize, a powerful CLI command to secure open source dependencies with tested, optimized package overrides.