Skip to content

Angel-Studios/terraform-aws-eks-ebs-csi-driver

 
 

Repository files navigation

terraform-aws-eks-ebs-csi-driver

Deploys the Amazon EBS CSI driver on AWS EKS via Helm.

Usage

Example:

module "aws_ebs_csi_driver" {
  source                           = "github.com/andreswebs/terraform-aws-eks-ebs-csi-driver"
  cluster_name                     = var.eks_cluster_id
  cluster_oidc_provider            = var.eks_cluster_oidc_provider
  iam_role_name                    = "ebs-csi-controller-${var.eks_cluster_id}"
  chart_version_aws_ebs_csi_driver = var.chart_version_aws_ebs_csi_driver
}

Inputs

Name Description Type Default Required
chart_version_aws_ebs_csi_driver Chart version string null no
cluster_name Cluster name string n/a yes
cluster_oidc_provider OpenID Connect (OIDC) Identity Provider associated with the Kubernetes cluster string n/a yes
helm_atomic_creation Purge resources on installation failure ? The wait flag will be set automatically if atomic is used bool true no
helm_cleanup_on_fail Deletion new resources created in this upgrade if the upgrade fails ? bool true no
helm_create_namespace Create the namespace if it does not yet exist ? bool true no
helm_dependency_update Run helm dependency update before installing the chart ? bool false no
helm_force_update Force resource update through delete/recreate if needed ? bool false no
helm_keyring Location of public keys used for verification; used only if verify is true string ".gnupg/pubring.gpg" no
helm_max_history Maximum number of release versions stored per release; 0 means no limit number 3 no
helm_recreate_pods Perform pods restart during upgrade/rollback ? bool true no
helm_release_name Release name string "aws-ebs-csi-driver" no
helm_replace Re-use the given name, even if that name is already used; this is unsafe in production bool false no
helm_reset_values When upgrading, reset the values to the ones built into the chart ? bool false no
helm_reuse_values When upgrading, reuse the last release's values and merge any overrides ? If 'reset_values' is specified, this is ignored bool false no
helm_skip_crds Skip installing CRDs ? bool false no
helm_timeout_seconds Time in seconds to wait for any individual kubernetes operation number 300 no
helm_verify Verify the package before installing it. Helm uses a provenance file to verify the integrity of the chart bool false no
helm_wait_for_completion Wait until all resources are in a ready state before marking the release as successful ? bool true no
helm_wait_for_jobs Wait until all Jobs have been completed before marking the release as successful ? bool true no
iam_role_name Name of the IAM role used by Kubernetes service account string "ebs-csi-controller" no
k8s_namespace Kubernetes namespace on which to install resources string "kube-system" no
k8s_sa_name Name of the Kubernetes service account string "ebs-csi-controller" no
kms_key_arn (Optional) ARN of the AWS KMS key used for volume encryption string "" no

Modules

Name Source Version
iam ./modules/iam n/a
resources ./modules/resources n/a

Outputs

Name Description
namespace The name (metadata.name) of the Kubernetes namespace
release Helm release
role IAM role for the Kubernetes service account

Providers

No providers.

Requirements

Name Version
terraform >= 1.0.0
aws >= 3.48.0
helm >= 2.2.0

Resources

No resources.

Authors

Andre Silva - @andreswebs

License

This project is licensed under the Unlicense.

Packages

No packages published

Languages

  • HCL 94.6%
  • Smarty 5.4%