Skip to content

sudo-terraform-modules/tf-module-boilerplate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Terraform Module Boilerplate

A standardized template for creating Terraform modules with consistent structure and best practices.

Overview

This repository provides a boilerplate structure for developing reusable Terraform modules. It includes essential files, configuration examples, and documentation templates to ensure consistency across module development.

Structure

├── .github/
│   ├── workflows/
│   │   └── main.yml       # CI/CD pipeline configuration
│   └── contributing.md    # Contribution guidelines
├── .gitignore             # Git ignore patterns for Terraform
├── LICENSE                # Module license
├── main.tf                # Primary module configuration
├── outputs.tf             # Module output definitions
├── README.md              # Module documentation
├── variables.tf           # Input variable declarations
└── versions.tf            # Provider and Terraform version constraints

Development

Testing

Ensure your module follows Terraform best practices:

  1. Run terraform fmt to format code
  2. Run terraform validate to validate syntax
  3. Run terraform plan to verify configuration
  4. Test with multiple provider versions

Documentation

Update the following sections when developing your module:

  • Module description and purpose
  • Input variables with descriptions and types
  • Output values and their usage
  • Usage examples
  • Requirements and dependencies

Contributing

We welcome contributions! Please see our Contributing Guidelines for detailed information on:

  • Development setup and workflow
  • Pull request process
  • Coding standards and testing requirements
  • Semantic commit message format

Quick start:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

License

This module is licensed under the Apache 2.0 License. See LICENSE file for details.

About

Base template repository for SUDO Terraform modules

Resources

License

Contributing

Stars

Watchers

Forks

Contributors

Languages