Skip to content

Latest commit

 

History

History
87 lines (64 loc) · 2.74 KB

CONTRIBUTING.md

File metadata and controls

87 lines (64 loc) · 2.74 KB

Creating modules for Terraform

This repository contains code for an application that is published using the Application Builder Platform (ABP).

Module Standards

For best practices and information on developing with Terraform, see the I&A Module Standards

Contributing Code

In order to contibute code to this repository, you must submit a Pull Request. To do so, you must fork this repostiory, make your changes in your forked version and submit a Pull Request.

Writing Documentation

‼️ Do not manually update README.md.

README.md is automatically generated by pulling in content from other files. For instructions, including a fill-in-the-blank content template, see Create readmes for Terraform-based Partner Solutions.

Checks and Validation

Pull Requests (PRs) submitted against this repository undergo a series of static and functional checks.

❗ Note: Failures during funtional or static checks will prevent a pull request from being accepted.

It is a best practice to perform these checks locally prior to submitting a pull request.

Checks Performed

  • TFLint
  • tfsec
  • Markdown Lint
  • Checkov
  • Terraform test

‼️ The readme.md file will be created after all checks have completed successfuly, it is recommended that you install terraform-docs locally in order to preview your readme.md file prior to publication.

Install the required tools

Prerequisites:

Performing Checks manually

Preparation

terraform init
terraform validate

Checks

tflint

tflint --init
tflint

tfsec

tfsec .

Markdown Lint

mdl .header.md

Checkov

terraform init
terraform plan -out tf.plan
terraform show -json tf.plan  > tf.json 
checkov 

Documentation

terraform-docs

# from the root of the repository
terraform-docs --lockfile=false ./