OpenTofu Module to deploy Keycloak Identity Management on the Kubernetes Cluster
Required Modules to deploy Keycloak Identity Management:
| Name | Version |
|---|---|
| kubernetes | 2.38.0 |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| acme_server | URL for the ACME Server to be used, defaults to production URL for LetsEncrypt | string |
"https://acme-v02.api.letsencrypt.org/directory" |
no |
| app_name | App name for deploying Keycloak Identity Platform solution | string |
"keycloak" |
no |
| certificate_authority_name | Name of the Certificate Authority to be associated with Keycloak Identity Platform solution | string |
"keycloak-certificate-authority" |
no |
| cloudflare_email | Email for generating Ingress Certificates to be associated with Keycloak Identity Platform solution | string |
n/a | yes |
| cloudflare_issuer_name | Name of the Cloudflare Issuer to be associated with Keycloak Identity Platform solution | string |
"keycloak-cloudflare-issuer" |
no |
| cloudflare_token | Token for generating Ingress Certificates to be associated with Keycloak Identity Platform solution | string |
n/a | yes |
| cluster_issuer_name | Name for the Cluster Issuer to be used to generate internal self signed certificates | string |
n/a | yes |
| cluster_name | Database Cluster Name to allow Network Connections to | string |
n/a | yes |
| cluster_secret_store_name | Name of the cluster secret store to be used for pulling and pushing secrets to OpenBao | string |
n/a | yes |
| country_name | Country name for deploying Keycloak Identity Platform solution | string |
"India" |
no |
| database_client_certificate_name | Client Certificate to be used for Keycloak User | string |
n/a | yes |
| database_credentials | Name of the secret which contains the database credentials for Keycloak | string |
n/a | yes |
| database_server_certificate_authority_name | Server Certificate Authority being used for the database | string |
n/a | yes |
| domain | Domain for which Ingress Certificate is to be generated for | string |
n/a | yes |
| host_name | Host name for which Ingress Certificate is to be generated for | string |
"auth" |
no |
| image | Docker image to be used for deployment of Keycloak | string |
"keycloak" |
no |
| ingress_certificate_name | Name of the Ingress Certificate to be associated with Keycloak Identity Platform solution | string |
"keycloak-ingress-certificate" |
no |
| internal_certificate_name | Name of the Internal Certificate to be associated with Keycloak Identity Platform solution | string |
"keycloak-internal-certificate" |
no |
| issuer_name | Name of the Issuer to be associated with Keycloak Identity Platform solution | string |
"keycloak-certificate-issuer" |
no |
| keycloak_credentials | Name of the secret which contains the credentials for the Keycloak Cluster | string |
"default-credentials" |
no |
| keycloak_environment_variables | Environment variables for Keycloak Configuration | list |
[ |
no |
| keycloak_ports | Keycloak Ports Configuration | list |
[ |
no |
| namespace | Namespace to be used for deploying Keycloak Identity Platform solution | string |
"keycloak" |
no |
| observability_namespace | Namespace where all components for observability are deployed | string |
n/a | yes |
| organization_name | Organization name for deploying Keycloak Identity Platform solution | string |
"cloud" |
no |
| postgres_namespace | Namespace for the PostgreSQL Deployment for database connections | string |
n/a | yes |
| realm_settings | Realm Settings for pre-installing a realm with Keycloak | object({ |
n/a | yes |
| replicas | Number of replicas to run for Keycloak cluster | number |
1 |
no |
| repository | Repository to be used for deployment of Keycloak | string |
"quay.io/keycloak" |
no |
| tag | Docker tag to be used for deployment of Keycloak | string |
"26.4.5" |
no |
No outputs.