Resources
The following resources are used by this module:
-
azurerm_federated_identity_credential.cert_manager (resource)
-
azurerm_role_assignment.dns_zone_contributor (resource)
-
azurerm_user_assigned_identity.cert_manager (resource)
-
null_resource.dependencies (resource)
-
azurerm_dns_zone.this (data source)
-
azurerm_resource_group.node_resource_group (data source)
-
azurerm_subscription.primary (data source)
Required Inputs
The following input variables are required:
cluster_oidc_issuer_url
Description: The OIDC issuer URL that is associated with the cluster.
Type: string
letsencrypt_issuer_email
Description: E-mail address used to register with Let’s Encrypt.
Type: string
Optional Inputs
The following input variables are optional (have default values):
argocd_project
Description: Name of the Argo CD AppProject where the Application should be created. If not set, the Application will be created in a new AppProject only for this Application.
Type: string
Default: null
argocd_labels
Description: Labels to attach to the Argo CD Application resource.
Type: map(string)
Default: {}
destination_cluster
Description: Destination cluster where the application should be deployed.
Type: string
Default: "in-cluster"
target_revision
Description: Override of target revision of the application chart.
Type: string
Default: "v9.0.0"
enable_service_monitor
Description: Enable Prometheus ServiceMonitor in the Helm chart.
Type: bool
Default: true
deep_merge_append_list
Description: A boolean flag to enable/disable appending lists instead of overwriting them.
Type: bool
Default: false
app_autosync
Description: Automated sync options for the Argo CD Application resource.
Type:
object({
allow_empty = optional(bool)
prune = optional(bool)
self_heal = optional(bool)
})
Default:
{
"allow_empty": false,
"prune": true,
"self_heal": true
}
dependency_ids
Description: IDs of the other modules on which this module depends on.
Type: map(string)
Default: {}
resources
Description: Resource limits and requests for cert-manager’s components. Follow the style on official documentation to understand the format of the values.
These are not production values. You should always adjust them to your needs. |
Type:
object({
controller = optional(object({
requests = optional(object({
cpu = optional(string, "50m")
memory = optional(string, "128Mi")
}), {})
limits = optional(object({
cpu = optional(string)
memory = optional(string, "128Mi")
}), {})
}), {})
webhook = optional(object({
requests = optional(object({
cpu = optional(string, "50m")
memory = optional(string, "128Mi")
}), {})
limits = optional(object({
cpu = optional(string)
memory = optional(string, "128Mi")
}), {})
}), {})
cainjector = optional(object({
requests = optional(object({
cpu = optional(string, "50m")
memory = optional(string, "128Mi")
}), {})
limits = optional(object({
cpu = optional(string)
memory = optional(string, "128Mi")
}), {})
}), {})
startupapicheck = optional(object({
requests = optional(object({
cpu = optional(string, "50m")
memory = optional(string, "128Mi")
}), {})
limits = optional(object({
cpu = optional(string)
memory = optional(string, "128Mi")
}), {})
}), {})
})
Default: {}
letsencrypt_issuer_email_main
Description: E-mail address used to register with Let’s Encrypt.
Type: string
Default: null
use_default_dns01_solver
Description: Whether to use the default dns01 solver configuration.
Type: bool
Default: true
use_default_http01_solver
Description: Whether to use the default http01 solver configuration.
Type: bool
Default: true
custom_solver_configurations
Description: List of additional solver configurations, appended to the default dns01 and http01 solvers (if enabled).
Type: list(any)
Default: []
Outputs
The following outputs are exported:
id
Description: ID to pass other modules in order to refer to this module as a dependency.
cluster_issuers
Description: List of cluster issuers created by cert-manager. = Requirements
Name | Version |
---|---|
>= 6 |
|
>= 3 |
|
>= 1 |
Providers
Name | Version |
---|---|
>= 3 |
|
n/a |
Modules
Name | Source | Version |
---|---|---|
Resources
Name | Type |
---|---|
resource |
|
resource |
|
resource |
|
resource |
|
data source |
|
data source |
|
data source |
Inputs
Name | Description | Type | Default | Required | ||
---|---|---|---|---|---|---|
The name of the Kubernetes cluster to create. |
|
n/a |
yes |
|||
The base domain used for Ingresses. |
|
n/a |
yes |
|||
The managed AKS resource group name. |
|
n/a |
yes |
|||
The Azure DNS zone’s resource group name. |
|
n/a |
yes |
|||
The OIDC issuer URL that is associated with the cluster. |
|
n/a |
yes |
|||
E-mail address used to register with Let’s Encrypt. |
|
n/a |
yes |
|||
Name of the Argo CD AppProject where the Application should be created. If not set, the Application will be created in a new AppProject only for this Application. |
|
|
no |
|||
Labels to attach to the Argo CD Application resource. |
|
|
no |
|||
Destination cluster where the application should be deployed. |
|
|
no |
|||
Override of target revision of the application chart. |
|
|
no |
|||
Enable Prometheus ServiceMonitor in the Helm chart. |
|
|
no |
|||
Helm values, passed as a list of HCL structures. |
|
|
no |
|||
A boolean flag to enable/disable appending lists instead of overwriting them. |
|
|
no |
|||
Automated sync options for the Argo CD Application resource. |
|
|
no |
|||
IDs of the other modules on which this module depends on. |
|
|
no |
|||
Resource limits and requests for cert-manager’s components. Follow the style on official documentation to understand the format of the values.
|
|
|
no |
|||
E-mail address used to register with Let’s Encrypt. |
|
|
no |
|||
Whether to use the default dns01 solver configuration. |
|
|
no |
|||
Whether to use the default http01 solver configuration. |
|
|
no |
|||
List of additional solver configurations, appended to the default dns01 and http01 solvers (if enabled). |
|
|
no |
Outputs
Name | Description |
---|---|
ID to pass other modules in order to refer to this module as a dependency. |
|
List of cluster issuers created by cert-manager. |