terraform-compliance vs Trivy
terraform-compliance
terraform-compliance.comTrivy
trivy.devSide by side
| Figure | terraform-compliance | Trivy |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · IaC Security Scanners | 7.2 (#11) | 8.1 (#6) |
| CI integrations | The documentation includes CI/CD examples for CircleCI and GitHub Actions. | The docs list official Azure DevOps and GitHub Actions integrations, alongside community integrations for other CI systems. |
| Install options | The documentation provides installation through pip and Docker; pip installation requires Python 3.x. | Official installation options include container images, GitHub release binaries, package repositories, Homebrew, and Windows downloads. |
| License | The maker’s site says the project is open source, free to use, and distributed under the MIT license. | The Trivy homepage identifies the project as Go software under the Apache-2.0 License. |
| Purpose | terraform-compliance is a lightweight, security- and compliance-focused test framework for negative testing of infrastructure as code written with Terraform. | Trivy scans code repositories, binary artifacts, container images, and Kubernetes clusters for vulnerabilities and misconfigurations. |
Plans
In their own words
terraform-compliance
terraform-compliance is a free, open-source framework for security and compliance testing of Terraform infrastructure as code. It checks Terraform plan or state output against policies written as behavior-driven feature files, and it can read plan output converted to JSON. Given steps establish context, When steps filter it, and Then steps fail scenarios when conditions are unmet. The project says it works with any Terraform provider and supports Terraform versions newer than 0.12. Checks can run before deployment, in pipelines, or through git hooks. Feature files may come from a local directory or Git repository, with SSH authentication for private repositories. Installation is documented through pip, requiring Python 3.x, or Docker. CI/CD examples cover CircleCI and GitHub Actions. Controls include warning-only failures, skipped-step failures, case-sensitive matching, and resource exclusion. The tool supports policy testing, admission control, and policy reporting, but not runtime enforcement. Its MIT license permits free use.
Trivy
Trivy is a free, Apache-2.0-licensed scanner for code repositories, binary artifacts, container images, and Kubernetes clusters. Its scanners cover vulnerabilities, infrastructure-as-code misconfigurations, secrets, and licenses, and it can generate software bills of materials. Vulnerability checks include operating-system and language-specific packages, some non-packaged software, and Kubernetes components. Configuration checks cover Docker, Kubernetes, Terraform, and CloudFormation files, and users can write custom checks. Trivy supports ecosystems including Ruby, Python, PHP, Node.js, .NET, Java, Go, Rust, C/C++, Elixir, Dart, Swift, Julia, and operating-system packages. It can run as a CI/CD binary without middleware or database dependencies and can be used in air-gapped environments. Installation options include container images, release binaries, package repositories, Homebrew, and Windows downloads; official integrations include Azure DevOps and GitHub Actions. Results can be exported as JUnit XML, SARIF, and ASFF. The vulnerability scanner documentation says third-party or self-compiled packages and binaries are unsupported, and the scanner may skip third-party packages. Trivy automatically fetches and maintains the security databases it needs for scans. The project is identified as Go software under the Apache-2.0 License; Aqua Security is listed as founded in 2015 with headquarters in Boston and Ramat Gan.