cfn-python-lint
rain
Our great sponsors
cfn-python-lint | rain | |
---|---|---|
20 | 3 | |
2,342 | 699 | |
0.9% | 3.7% | |
9.1 | 9.6 | |
6 days ago | 6 days ago | |
Python | Go | |
MIT No Attribution | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
cfn-python-lint
-
Deploy config rules across your organization
Now the first 3 options are pretty straight forward. The template itself is a bit more complicated. In my example I used an inline template, I did this for the sake of this blog. But you can also reference an existing object on S3. This way you can use linting tools like cfn-lint on your conformance pack. This will reduce errors during deployment as you can catch them before you commit and push your code.
-
Managing low-code environments with AWS CloudFormation and Azure Resource Manager
Automate testing and validation: Before deploying your templates, it's important to test and validate them to ensure that they will work as expected. Use tools like AWS CloudFormation Linter and Azure Resource Manager Template Tester to automate this process.
-
Alternatives to Terraform
Honestly I've had good luck writing clean Cloud Formation. It's AWS only. But Nested Stacks can help keep things pretty clean and tools like cfn-lint do a pretty good job of preventing you from going too crazy with spaghetti code. Additionally, as it's all json/yaml, you can parse it to look for common problems your organization wants to enforce. So you can ensure things like specific tags your roles/vpc etc..., or usage of an "approved" set of AMI, requiring an EKS/RDS cluster to be split across availability zones; they're all just a test in your CI pipeline away.
-
Creating a Multi-Account CI/CD Pipeline with AWS CodePipeline
CodeBuild will run a linting check against the CloudFormation Template using cfn-lint and will then run cfn-nag to check for patterns that indicate insecure resources within the CloudFormation template.
-
App with self-contained infrastructure on AWS
A linter for our AWSCloudformation stack called cfn-lint
-
how did you get good at iac-cloudformation
cfn-lint and cfn_nag or other tools of that nature to check as you write so you don't need to continually try to deploy only to find that you've done something dumb.
-
Validating cloudFormation templates
https://github.com/aws-cloudformation/cfn-lint as mentioned will do what you've explicitly called-out.
-
CloudFormation locally
cfn-lint can do basic validation and rule-based linting. Highly recommend using it even if it doesn't solve your problem.
-
Source Control your AWS CloudFormation templates with GitHub
To help validate your AWS CloudFormation templates you can use a tool called cfn-lint.
rain
-
Cfnctl - Terraform cli experience for AWS Cloudformation
Similar and also written in Go: Rain https://github.com/aws-cloudformation/rain
-
Show HN: Precloud – Dynamic tests for infrastructure-as-code. Open source
Some similar IaC dynamic analysis tools written in golang:
https://github.com/terraform-linters/tflint-ruleset-aws/blob...
-
DevOps tools you should have on your belt
🌧 Rain A development workflow tool for working with CloudFormation. ❗️Rain is currently in preview and shouldn't yet be considered stable enough for production use.
What are some alternatives?
cfn_nag - Linting tool for CloudFormation templates
aws-codebuild-docker-images - Official AWS CodeBuild repository for managed Docker images http://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref.html
sls-dev-tools - Dev Tools for the Serverless World - Issues, PRs and ⭐️welcome!
cloudformation-guard - Guard offers a policy-as-code domain-specific language (DSL) to write rules and validate JSON- and YAML-formatted data such as CloudFormation Templates, K8s configurations, and Terraform JSON plans/configurations against those rules. Take this survey to provide feedback about cfn-guard: https://amazonmr.au1.qualtrics.com/jfe/form/SV_bpyzpfoYGGuuUl0
StackJanitor - StackJanitor is a serverless, event-driven stack cleanup tool.
terraform-aws-icons - Annotate Terraform graphs with AWS icons.
terratag - Terratag is a CLI tool that enables users of Terraform to automatically create and maintain tags across their entire set of AWS, Azure, and GCP resources
aws-toolkit-vscode - Amazon Q, CodeWhisperer, CodeCatalyst, Local Lambda debug, SAM/CFN syntax, ECS Terminal, AWS resources
precloud - An open source command line interface that runs checks on infrastructure as code to catch potential deployment issues before deploying.
aws-iam-generator - Generate Multi-Account IAM users/groups/roles/policies from a simple YAML configuration file and Jinja2 templates.