Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/flaconi/terraform-aws-acm-cloudflare

Create ACM certificate with DNS validation and validate using Cloudflare Hosted Zone
https://github.com/flaconi/terraform-aws-acm-cloudflare

aws cloudflare terraform terraform-module

Last synced: about 4 hours ago
JSON representation

Create ACM certificate with DNS validation and validate using Cloudflare Hosted Zone

Awesome Lists containing this project

README

        

# Terraform module: AWS Certificate manager with Cloudflare validation

[![lint](https://github.com/flaconi/terraform-aws-acm-cloudflare/workflows/lint/badge.svg)](https://github.com/flaconi/terraform-aws-acm-cloudflare/actions?query=workflow%3Alint)
[![test](https://github.com/flaconi/terraform-aws-acm-cloudflare/workflows/test/badge.svg)](https://github.com/flaconi/terraform-aws-acm-cloudflare/actions?query=workflow%3Atest)
[![Tag](https://img.shields.io/github/tag/flaconi/terraform-aws-acm-cloudflare.svg)](https://github.com/flaconi/terraform-aws-acm-cloudflare/releases)
[![Terraform](https://img.shields.io/badge/Terraform--registry-aws--acm--cloudflare-brightgreen.svg)](https://registry.terraform.io/modules/flaconi/acm-cloudflare/aws/)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://opensource.org/licenses/MIT)

Create ACM certificate with DNS validation and validate using Cloudflare Hosted Zone

## Providers

| Name | Version |
|------|---------|
| [aws](#provider\_aws) | >= 5 |
| [cloudflare](#provider\_cloudflare) | >= 4.41 |

## Requirements

| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.0 |
| [aws](#requirement\_aws) | >= 5 |
| [cloudflare](#requirement\_cloudflare) | >= 4.41 |

## Required Inputs

The following input variables are required:

### [cloudflare\_api\_token](#input\_cloudflare\_api\_token)

Description: The Cloudflare API token.

Type: `string`

### [zone\_name](#input\_zone\_name)

Description: The Name of the zone to contain this record.

Type: `string`

## Optional Inputs

The following input variables are optional (have default values):

### [create\_certificate](#input\_create\_certificate)

Description: Whether to create ACM certificate

Type: `bool`

Default: `true`

### [validate\_certificate](#input\_validate\_certificate)

Description: Whether to validate certificate by creating DNS record

Type: `bool`

Default: `true`

### [validation\_allow\_overwrite\_records](#input\_validation\_allow\_overwrite\_records)

Description: Whether to allow overwrite of Route53 records

Type: `bool`

Default: `true`

### [wait\_for\_validation](#input\_wait\_for\_validation)

Description: Whether to wait for the validation to complete

Type: `bool`

Default: `true`

### [certificate\_transparency\_logging\_preference](#input\_certificate\_transparency\_logging\_preference)

Description: Specifies whether certificate details should be added to a certificate transparency log

Type: `bool`

Default: `true`

### [domain\_name](#input\_domain\_name)

Description: A domain name for which the certificate should be issued

Type: `string`

Default: `""`

### [subject\_alternative\_names](#input\_subject\_alternative\_names)

Description: A list of domains that should be SANs in the issued certificate

Type: `list(string)`

Default: `[]`

### [tags](#input\_tags)

Description: A mapping of tags to assign to the resource

Type: `map(string)`

Default: `{}`

### [dns\_ttl](#input\_dns\_ttl)

Description: The TTL of DNS recursive resolvers to cache information about this record.

Type: `number`

Default: `120`

## Outputs

| Name | Description |
|------|-------------|
| [acm\_certificate\_arn](#output\_acm\_certificate\_arn) | The ARN of the certificate |
| [acm\_certificate\_domain\_validation\_options](#output\_acm\_certificate\_domain\_validation\_options) | A list of attributes to feed into other resources to complete certificate validation. Can have more than one element, e.g. if SANs are defined. |
| [distinct\_domain\_names](#output\_distinct\_domain\_names) | List of distinct domains names used for the validation. |
| [validation\_dns\_record\_fqdns](#output\_validation\_dns\_record\_fqdns) | List of FQDNs built using the zone domain and name. |
| [validation\_domains](#output\_validation\_domains) | List of distinct domain validation options. This is useful if subject alternative names contain wildcards. |

## License

**[MIT License](LICENSE)**

Copyright (c) 2021 **[Flaconi GmbH](https://github.com/flaconi)**