Create the necessary CRDs to serve a service via Ambassador using Terraform.
Each "instance" of this module will create a single Host
, Mapping
, optional TLSContext
and an optional TLSContext
for Mapping
TLS origination. This greatly simplifies the module.
If your service serves multiple hosts, create multiple instances of this module with for_each
.
Name | Version |
---|---|
terraform | >= 0.14.8 |
kubernetes | >= 2.6 |
Name | Version |
---|---|
kubernetes | >= 2.6 |
No modules.
Name | Type |
---|---|
kubernetes_manifest.host | resource |
kubernetes_manifest.mapping | resource |
kubernetes_manifest.tls_origination | resource |
kubernetes_manifest.tlscontext | resource |
Name | Description | Type | Default | Required |
---|---|---|---|---|
acme_provider | ACME Provider configuration if TLS is enabled | map |
{ |
no |
ambassador_id | Ambassador ID to create CRDs for | list |
[ |
no |
host_annotations | Annotations for host | map |
{} |
no |
host_labels | Labels for host | map |
{ |
no |
host_spec | Additional specifications for host | map |
{} |
no |
hostname | Hostname for the endpoint | any |
n/a | yes |
insecure_request_policy | Request policy of insecure requests | map |
{ |
no |
mapping_annotations | Annotations for mapping | map |
{} |
no |
mapping_labels | Labels for mapping | map |
{ |
no |
mapping_spec | Additional specifications for mapping, like resolver | map |
{} |
no |
name | Base name of CRD resources | any |
n/a | yes |
namespace | Namespace to create resources in | string |
"default" |
no |
prefix | Path prefix for the mapping | string |
"/" |
no |
service | Name of the service to map the host to, using the specified resolver | string |
n/a | yes |
tls_enabled | Enable TLS | bool |
false |
no |
tls_original_secret | Name of the secret for TLS origination | string |
"" |
no |
tls_origination_annotations | Annotations for TLSContext for TLS origination | map |
{} |
no |
tls_origination_enable | Enable TLS Origination for the Mapping | bool |
false |
no |
tls_origination_labels | Labels for TLSContext for TLS origination | map |
{ |
no |
tls_origination_name | Name of the TLSContext created for TLS Origination. Defaults to var.name suffixed with -orig | string |
"" |
no |
tls_origination_spec | Additional spec for the TLSContext used in TLS origination | map |
{} |
no |
tls_secret_name | TLS Secret name | any |
null |
no |
tlscontext_annotations | Annotations for tlscontext | map |
{} |
no |
tlscontext_labels | Labels for tlscontext | map |
{ |
no |
tlscontext_spec | Additional specifications for TLSContext | map |
{ |
no |
No outputs.