diff --git a/README.md b/README.md
index f8a148d..79431b7 100644
--- a/README.md
+++ b/README.md
@@ -61,6 +61,7 @@ resource "kubernetes_manifest" "example_grafana_datasource" {
| [aws](#requirement\_aws) | >= 5.14.0 |
| [helm](#requirement\_helm) | >= 2.11.0 |
| [kubernetes](#requirement\_kubernetes) | >= 2.23.0 |
+| [null](#requirement\_null) | >= 3.2.1 |
## Providers
@@ -69,6 +70,7 @@ resource "kubernetes_manifest" "example_grafana_datasource" {
| [aws](#provider\_aws) | 5.94.1 |
| [aws.eecr](#provider\_aws.eecr) | 5.94.1 |
| [helm](#provider\_helm) | 2.17.0 |
+| [null](#provider\_null) | 3.2.3 |
| [terraform](#provider\_terraform) | n/a |
## Modules
@@ -84,6 +86,8 @@ resource "kubernetes_manifest" "example_grafana_datasource" {
| Name | Type |
|------|------|
| [helm_release.loki](https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release) | resource |
+| [null_resource.git_version](https://registry.terraform.io/providers/hashicorp/null/latest/docs/resources/resource) | resource |
+| [null_resource.module_name](https://registry.terraform.io/providers/hashicorp/null/latest/docs/resources/resource) | resource |
| [terraform_data.bucket_name_validator](https://registry.terraform.io/providers/hashicorp/terraform/latest/docs/resources/data) | resource |
| [aws_caller_identity.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/caller_identity) | data source |
| [aws_ecr_authorization_token.ecr_token](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/ecr_authorization_token) | data source |
diff --git a/requirements.tf b/requirements.tf
index ae62e15..32e5c6f 100644
--- a/requirements.tf
+++ b/requirements.tf
@@ -14,5 +14,9 @@ terraform {
source = "hashicorp/kubernetes"
version = ">= 2.23.0"
}
+ null = {
+ source = "hashicorp/null"
+ version = ">= 3.2.1"
+ }
}
}
diff --git a/version.tf b/version.tf
index 33ac557..ac138e0 100644
--- a/version.tf
+++ b/version.tf
@@ -1,4 +1,27 @@
+resource "null_resource" "git_version" {
+ triggers = {
+ # Force this to run on every apply to get the latest tag value
+ always_run = timestamp()
+ }
+
+ provisioner "local-exec" {
+ command = "git describe --tags --abbrev=0 2>/dev/null || echo 'unknown' > ${path.module}/.git_tag"
+ on_failure = continue
+ }
+}
+
+resource "null_resource" "module_name" {
+ triggers = {
+ module_path = path.module
+ }
+
+ provisioner "local-exec" {
+ command = "basename $(pwd) > ${path.module}/.module_name"
+ on_failure = continue
+ }
+}
+
locals {
- module_name = "tfmod-loki"
- module_version = "0.1.1"
+ module_name = fileexists("${path.module}/.module_name") ? trimspace(file("${path.module}/.module_name")) : "tfmod-loki"
+ module_version = fileexists("${path.module}/.git_tag") ? trimspace(file("${path.module}/.git_tag")) : "latest"
}