diff --git a/CHANGELOG.md b/CHANGELOG.md
index 36ffdc4..d415f3a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,4 +9,4 @@ BREAKING CHANGES:
* Variable `agent_disable_update` is now `agent_auto_update` which defaults to minor and must be one of *disabled*, *minor*, or *patch* (#7)
IMPROVEMENTS:
-* [Example usage](examples/default/) added to the examples/default directory (#7)
\ No newline at end of file
+* [Example usage](examples/default/) added to the examples/default directory (#7)
diff --git a/README.md b/README.md
index f08d046..3cb0853 100644
--- a/README.md
+++ b/README.md
@@ -7,7 +7,7 @@ provider "kubernetes" {}
module "terraform-cloud-agent-kubernetes" {
source = "redeux/terraform-cloud-agent/kubernetes"
- version = "0.1.0"
+ version = "~> 1.0.1"
namespace = "terraform-cloud-agent"
create_namespace = true
@@ -67,6 +67,8 @@ No modules.
| [namespace](#input\_namespace) | The namespace to deploy the agent into. Unless create\_namespace is true, the namespace must already exist. | `string` | n/a | yes |
| [requests\_cpu](#input\_requests\_cpu) | CPU requests. | `string` | `"500m"` | no |
| [requests\_memory](#input\_requests\_memory) | Memory requests. | `string` | `"250Mi"` | no |
+| [service\_account\_annotations](#input\_service\_account\_annotations) | Annotations to add to the Kubernetes service account. Can be used to annotate the IRSA. | `map(string)` | `{}` | no |
+| [service\_account\_name](#input\_service\_account\_name) | Name of the service account. | `string` | `"terraform-cloud-agent"` | no |
| [tfc\_url](#input\_tfc\_url) | The Terraform Cloud endpoint. Must be changed if using Terraform Enterprise. | `string` | `"https://app.terraform.io"` | no |
## Outputs
diff --git a/kubernetes_cluster_role_binding.tf b/kubernetes_cluster_role_binding.tf
index 4a29100..dff8cbb 100644
--- a/kubernetes_cluster_role_binding.tf
+++ b/kubernetes_cluster_role_binding.tf
@@ -21,4 +21,4 @@ resource "kubernetes_cluster_role_binding" "tfc_agent_cluster_role_binding" {
name = kubernetes_service_account.tfc_agent_service_account[0].metadata[0].name
namespace = var.namespace
}
-}
\ No newline at end of file
+}
diff --git a/kubernetes_namespace.tf b/kubernetes_namespace.tf
index bb99e50..ccb11fc 100644
--- a/kubernetes_namespace.tf
+++ b/kubernetes_namespace.tf
@@ -10,4 +10,4 @@ resource "kubernetes_namespace" "tfc_agent_namespace" {
name = var.namespace
}
-}
\ No newline at end of file
+}
diff --git a/kubernetes_secret.tf b/kubernetes_secret.tf
index 63ddb21..7c34a1c 100644
--- a/kubernetes_secret.tf
+++ b/kubernetes_secret.tf
@@ -13,4 +13,4 @@ resource "kubernetes_secret" "tfc_agent_token" {
data = {
"token" = var.agent_token
}
-}
\ No newline at end of file
+}
diff --git a/kubernetes_service_account.tf b/kubernetes_service_account.tf
index 582b81c..64dc07f 100644
--- a/kubernetes_service_account.tf
+++ b/kubernetes_service_account.tf
@@ -7,8 +7,8 @@ resource "kubernetes_service_account" "tfc_agent_service_account" {
"app.kubernetes.io/module-version" = local.module-version
"app.kubernetes.io/managed-by" = "terraform"
}
-
- name = "terraform-cloud-agent"
- namespace = var.create_namespace ? kubernetes_namespace.tfc_agent_namespace[0].metadata[0].name : var.namespace
+ name = var.service_account_name
+ namespace = var.create_namespace ? kubernetes_namespace.tfc_agent_namespace[0].metadata[0].name : var.namespace
+ annotations = var.service_account_annotations
}
-}
\ No newline at end of file
+}
diff --git a/variables.tf b/variables.tf
index 6dd5e9c..90a763b 100644
--- a/variables.tf
+++ b/variables.tf
@@ -102,3 +102,14 @@ variable "tfc_url" {
description = "The Terraform Cloud endpoint. Must be changed if using Terraform Enterprise."
}
+variable "service_account_name" {
+ type = string
+ default = "terraform-cloud-agent"
+ description = "Name of the service account."
+}
+
+variable "service_account_annotations" {
+ type = map(string)
+ default = {}
+ description = "Annotations to add to the Kubernetes service account. Can be used to annotate the IRSA."
+}