Skip to content

Terraform Module to deploy Helm Apps to your Kubernetes Cluster.

License

Notifications You must be signed in to change notification settings

ruanbekker/terraform-kubernetes-apps-module

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

terraform-kubernetes-apps-module

Terraform Module to deploy Helm Apps to your Kubernetes Cluster.

About

This Terraform module deploys Helm releases to your Kubernetes cluster using the helm_release provider. The module defines default configurations for various applications, and you can easily deploy these applications by specifying them in the apps list. If you need to override the default values, you can provide your own values file.

Features

  • Deploy multiple Helm releases by specifying their names.
  • Use default configurations or provide custom values.
  • Automatically creates namespaces if specified.

Applications Available

A list of available apps can be found in the variable release defined in ./variables.tf.

To install them, you can pass them to the apps list variable, for a example see examples.

Requirements

No requirements.

Providers

Name Version
helm n/a
null n/a

Modules

No modules.

Resources

Name Type
helm_release.apps resource
null_resource.wait_for_cluster resource

Inputs

Name Description Type Default Required
apps List of apps that will be deployed. list(string) [] no
cluster_endpoint The endpoint of the Kubernetes cluster. string null no
cluster_ready_trigger A trigger to indicate the Kubernetes cluster is ready. any n/a yes
release n/a
map(object({
chart = string
repository = string
version = string
namespace = string
create_namespace = bool
values_file = string
}))
{
"whoami": {
"chart": "whoami",
"create_namespace": true,
"namespace": "apps",
"repository": "https://cowboysysop.github.io/charts/",
"values_file": "templates/whoami/values.yaml",
"version": "5.1.1"
}
}
no

Outputs

No outputs.

Example

You can see a full example at ./example/.

module "kubernetes" {
  source  = "git::https://github.com/ruanbekker/terraform-kubernetes-vultr-module.git?ref=stable"

  cluster_name    = "test-cluster"
  cluster_version = "v1.29.4+1"
}

module "apps" {
  source = "../"

  apps = [
    "whoami"
  ]

  cluster_endpoint       = module.kubernetes.endpoint
  cluster_ready_trigger  = module.kubernetes

}

About

Terraform Module to deploy Helm Apps to your Kubernetes Cluster.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages