diff --git a/README.md b/README.md index 0b06fa8..8b2f152 100644 --- a/README.md +++ b/README.md @@ -1,53 +1,16 @@ [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit) [![pre-commit.ci status](https://results.pre-commit.ci/badge/github/brucellino/tfmod-template/main.svg)](https://results.pre-commit.ci/latest/github/brucellino/tfmod-template/main) [![semantic-release: conventional](https://img.shields.io/badge/semantic--release-conventional-e10079?logo=semantic-release)](https://github.com/semantic-release/semantic-release) -# tfmod-template +# Terraform Module for Consul on Digital Ocean - +This module creates a Consul cluster with agents and servers on Digital Ocean, using a load balancer as frontend. -This is the template repository for my terraform modules. -It attempts to follow the [default structure](https://www.terraform.io/language/modules/develop/structure) for terraform modules. - -It is designed to speed up development of new terraform modules by providing: - -1. basic terraform setup for backend, providers, _etc_. - 1. the default required version for terraform is `>1.2.0` -1. common pre-commit hooks configuration -1. semantic release configuration -1. examples directory for testing and demonstration -1. default github actions workflows for testing and releasing - -## How to use - - - -If you want to make a new terraform module from scratch: - -1. create a new repository using this one as template -1. delete the sections commented with `` -1. update `terraform.tf` to declare the module's required providers -1. add the examples you need in `examples/` -1. update the test workflow in `.github/workflows/test.yml` to reflect your examples - -## Pre-commit hooks - - - -The [pre-commit](https://pre-commit.com) framework is used to manage pre-commit hooks for this repository. -A few well-known hooks are provided to cover correctness, security and safety in terraform. +It requires a Vault instance with Digital Ocean tokens in a KV store, and creates an ssh key by adding a GitHub user's public key. ## Examples The `examples/` directory contains the example usage of this module. These examples show how to use the module in your project, and are also use for testing in CI/CD. - - ## Requirements