Skip to content

An example Terraform module repository used to showcase automation and tooling.

License

Notifications You must be signed in to change notification settings

kgabriel-hashicorp/terraform-aws-app

 
 

Repository files navigation

Example App Terraform Module

This repository contains the standards we recommend having for a child module in Terraform.

Usage

This terraform module will create an S3 Bucket.

Module Version Updates

  • This module relies on dependabot to manage the module dependencies.
  • A PULL REQUEST will automatically be raised if there are new versions of the child modules from either the public or private Terraform Registry.
  • The PULL REQUEST will have to approved by the CODEOWNERS.
  • More details can be found under .github/workflows/README.md

Requirements

Name Version
terraform ~> 1.1
aws 5.27.0

Providers

Name Version
aws 5.27.0

Modules

No modules.

Resources

Name Type
aws_dynamodb_table.terraform_state_locks resource
aws_s3_bucket.terraform_state resource
aws_s3_bucket_acl.terraform_state_acl resource
aws_s3_bucket_public_access_block.terraform_state_public_access_block resource
aws_s3_bucket_server_side_encryption_configuration.terraform_state_sse resource
aws_s3_bucket_versioning.terraform_state_versioning resource
aws_caller_identity.current data source
aws_region.current data source

Inputs

No inputs.

Outputs

Name Description
bucket The name of the S3 bucket containing the Terraform state file.
dynamodb_table The name of the DynamoDB table handling Terraform state.
encrypt Whether or not the S3 bucket is encrypted.
key The name of the state file that will exist in the S3 bucket.
kms_key_id The name of the KMS key used to encrypt the S3 bucket.
region The AWS region the S3 bucket is deployed to.

Reference

Link to the [ModuleStandardizationPage]

Module Dependencies

  • This module relies on dependabot to manage the module dependencies.
  • A PULL REQUEST will automatically be raised if there are new versions of the child modules from either the public or private Terraform Registry.
  • The PULL REQUEST will have to approved by the CODEOWNERS.
  • More details can be found under .github/workflows/README.md

Release Management

  • Following Conventional Commits a new release is created depending on the PR title prefix and commits.
  • The list of allowed PR title prefix can be found validate
  • Root Modules that have dependabot setup for this child module will automatically get the new versions via a PR.

Contributing

  • Commit messages and PR titles must follow Conventional Commits
  • Pull requests will need to be reviewed by the CODEOWNERS.

Maintainers

CODEOWNERS file contain the maintainers of this repository This can also include a link to a [Slack] Channel

test create major version

About

An example Terraform module repository used to showcase automation and tooling.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HCL 100.0%