deployment-api
graphnode-technologies/deployment-api/kubernetes
Create a deployment in Kubernetes with autoscaling, service and nginx ingress ready for production.
Install
README
terraform-kubernetes-deployment-api This Terraform module creates a Deployment for Kubernetes along with a Horizontal Pod Autoscaler and a Service. The deployment includes a container with various configurations such as environment variables, volumes, resources, liveness and startup probes, etc. How to use ``hcl module "deployment" { source = "graphnode-technologies/deployment-api/kubernetes" version = "1.4.0" name = "example" namespace = "default" replicas = 1 image = "nginx:latest" args = ["nginx", "-g", "daemon off;"] service_account_name = "example-service-account" environment_vars = { EXAMPLE_VAR = "example_value" } } ` Resources created - Kubernetes Deployment - Kubernetes Horizontal Pod Autoscaler (optional) - Kubernetes Service (optional) - Kubernetes Ingress (optional) Inputs | Na
Inputs (24)
| Name | Type | Description | Default |
|---|---|---|---|
| image | string | required | |
| service_account_name | string | "" | |
| replicas | number | 1 | |
| requests | object({ memory = string | {
"cpu": "10m",
"memory": "50Mi"
} | |
| limits | object({ memory = string | {
"cpu": "250m",
"memory": "500Mi"
} | |
| args | list | [] | |
| extra_annotations | map | {} | |
| extra_volume_secrets | map | {} | |
| health_check | object({ path = string | {
"path": "/health",
"port": 3000
} | |
| name | string | "main" | |
| namespace | string | "default" | |
| extra_ingress_annotations | map | {} | |
| extra_volume_mounts | map | {} | |
| environment_vars | map | {} | |
| secret_environment_vars | map | {} | |
| enable_liveness | bool | true | |
| create_ingress | bool | true | |
| max_replicas | number | 1 | |
| domain_name | string | "" | |
| create_service | bool | true | |
| startup_failure_threshold | number | 30 |
Outputs (1)
nameResources (4)
Details
Similar packages
Azure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,