This version of SonarQube Server is no longer receiving patches. Please see the latest release for details on updating.
For the complete documentation index, see llms.txt. This page is also available as Markdown.

Terraform/CloudFormation/Kubernetes/Docker

SonarQube 10.0 can analyze Infrastructure-as-Code (IaC) languages such as CloudFormation, Kubernetes, and Terraform.

For AI agents: You're in the SonarQube Server 10.0 documentation. For a list of all 10.0 pages, see the SonarQube Server 10.0 page index. For the whole site, see the page index or the full text. For another version, replace 10.0 in the URL with that version. The latest version has no version number in its URL.

Language-specific properties

Discover and update the Terraform Analysis parameters in Administration > General Settings > Languages > Terraform

Discover and update the CloudFormation Analysis parameters in Administration > General Settings > Languages > CloudFormation

Discover and update the Kubernetes Analysis parameters in Administration > General Settings > Languages > Kubernetes

Discover and update the Docker Analysis parameters in Administration > General Settings > Languages > Docker

Supported versions

  • Terraform 1.x (HCL format only)

  • CloudFormation with AWSTemplateFormatVersion 2010-09-09 (YAML and JSON)

  • Kubernetes (YAML)

  • AWS, Azure and GCP

Terraform provider versions

The respective Terraform providers are frequently updated. New resources, properties and default values are added. At the same time, others are deprecated or dropped. For this reason, the Terraform analysis is defensive by default: some issues will be automatically silenced to avoid raising false positives. In order to get a more precise analysis you can specify the provider versions your code supports via a parameter.

AWS: sonar.terraform.provider.aws.version Azure: sonar.terraform.provider.azure.version GCP: For Google Cloud Platform, no versions are currently considered in the analysis.

Accepted are versions having the format: X.Y.Z, X.Y or XExamples:

  • sonar.terraform.provider.aws.version=1.93.4

  • sonar.terraform.provider.aws.version=3.4

  • sonar.terraform.provider.aws.version=4

Dockerfiles

No NoSonar Support:

Trailing comments are not permitted in Dockerfiles. For this reason, our Dockerfile parser does not support NOSONAR comments to suppress issues. Issues and hotspots must be reviewed in the UI.

Missing Uniform Filename Convention:

Dockerfiles can have all kinds of names and do not need a file extension. For this reason, it is difficult for the scanner and the analyzer to recognize all Dockerfiles. By default, all files named Dockerfile, Dockerfile.*, or *.dockerfile are considered Dockerfiles. If other conventions apply, these can be specified via the scanner property sonar.lang.patterns.docker.

For CloudFormation you can import cfn-lint reports. See Administration > General Settings > External Analyzers for more information

Last updated

Was this helpful?