diff --git a/README.md b/README.md
index 6ac3343..81c672e 100644
--- a/README.md
+++ b/README.md
@@ -113,7 +113,7 @@ If you are interested in contributing to EKS Blueprints, see the Contribution (h
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 0.14.0 |
-| [aws](#requirement\_aws) | >= 4.0.0, < 5.0.0 |
+| [aws](#requirement\_aws) | >= 4.0.0 |
| [awscc](#requirement\_awscc) | >= 0.24.0 |
| [grafana](#requirement\_grafana) | 1.25.0 |
@@ -121,7 +121,7 @@ If you are interested in contributing to EKS Blueprints, see the Contribution (h
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 4.0.0, < 5.0.0 |
+| [aws](#provider\_aws) | >= 4.0.0 |
| [grafana](#provider\_grafana) | 1.25.0 |
## Modules
diff --git a/examples/eks-cluster-with-vpc/versions.tf b/examples/eks-cluster-with-vpc/versions.tf
new file mode 100644
index 0000000..7bec64c
--- /dev/null
+++ b/examples/eks-cluster-with-vpc/versions.tf
@@ -0,0 +1,26 @@
+terraform {
+ required_version = ">= 1.0.0"
+
+ required_providers {
+ aws = {
+ source = "hashicorp/aws"
+ version = ">= 4.0.0"
+ }
+ kubernetes = {
+ source = "hashicorp/kubernetes"
+ version = ">= 2.10"
+ }
+ kubectl = {
+ source = "gavinbunney/kubectl"
+ version = ">= 1.14"
+ }
+ helm = {
+ source = "hashicorp/helm"
+ version = ">= 2.4.1"
+ }
+ grafana = {
+ source = "grafana/grafana"
+ version = ">= 1.25.0"
+ }
+ }
+}
diff --git a/examples/existing-cluster-with-base-and-infra/README.md b/examples/existing-cluster-with-base-and-infra/README.md
index 2b40349..939e7ae 100644
--- a/examples/existing-cluster-with-base-and-infra/README.md
+++ b/examples/existing-cluster-with-base-and-infra/README.md
@@ -131,13 +131,19 @@ add this `managed_prometheus_region=xxx` and `managed_prometheus_workspace_id=ws
| Name | Version |
|------|---------|
+| [terraform](#requirement\_terraform) | >= 1.0.0 |
+| [aws](#requirement\_aws) | >= 4.0.0 |
| [grafana](#requirement\_grafana) | >= 1.25.0 |
+| [grafana](#requirement\_grafana) | >= 1.25.0 |
+| [helm](#requirement\_helm) | >= 2.4.1 |
+| [kubectl](#requirement\_kubectl) | >= 1.14 |
+| [kubernetes](#requirement\_kubernetes) | >= 2.10 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | n/a |
+| [aws](#provider\_aws) | >= 4.0.0 |
## Modules
diff --git a/examples/existing-cluster-with-base-and-infra/main.tf b/examples/existing-cluster-with-base-and-infra/main.tf
index 677c54a..08b0350 100644
--- a/examples/existing-cluster-with-base-and-infra/main.tf
+++ b/examples/existing-cluster-with-base-and-infra/main.tf
@@ -24,15 +24,6 @@ provider "helm" {
}
}
-terraform {
- required_providers {
- grafana = {
- source = "grafana/grafana"
- version = ">= 1.25.0"
- }
- }
-}
-
locals {
region = var.aws_region
eks_cluster_endpoint = data.aws_eks_cluster.this.endpoint
diff --git a/examples/existing-cluster-with-base-and-infra/versions.tf b/examples/existing-cluster-with-base-and-infra/versions.tf
new file mode 100644
index 0000000..3a4f278
--- /dev/null
+++ b/examples/existing-cluster-with-base-and-infra/versions.tf
@@ -0,0 +1,25 @@
+terraform {
+ required_version = ">= 1.0.0"
+ required_providers {
+ aws = {
+ source = "hashicorp/aws"
+ version = ">= 4.0.0"
+ }
+ kubernetes = {
+ source = "hashicorp/kubernetes"
+ version = ">= 2.10"
+ }
+ kubectl = {
+ source = "gavinbunney/kubectl"
+ version = ">= 1.14"
+ }
+ helm = {
+ source = "hashicorp/helm"
+ version = ">= 2.4.1"
+ }
+ grafana = {
+ source = "grafana/grafana"
+ version = ">= 1.25.0"
+ }
+ }
+}
diff --git a/modules/workloads/infra/README.md b/modules/workloads/infra/README.md
index 2d82d70..a73c122 100644
--- a/modules/workloads/infra/README.md
+++ b/modules/workloads/infra/README.md
@@ -11,15 +11,20 @@ This module provides EKS cluster monitoring with the following resources:
| Name | Version |
|------|---------|
-| [grafana](#requirement\_grafana) | 1.25.0 |
+| [terraform](#requirement\_terraform) | >= 1.0.0 |
+| [aws](#requirement\_aws) | >= 4.0.0 |
+| [grafana](#requirement\_grafana) | >= 1.25.0 |
+| [helm](#requirement\_helm) | >= 2.4.1 |
+| [kubectl](#requirement\_kubectl) | >= 1.14 |
+| [kubernetes](#requirement\_kubernetes) | >= 2.10 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | n/a |
-| [grafana](#provider\_grafana) | 1.25.0 |
-| [helm](#provider\_helm) | n/a |
+| [aws](#provider\_aws) | >= 4.0.0 |
+| [grafana](#provider\_grafana) | >= 1.25.0 |
+| [helm](#provider\_helm) | >= 2.4.1 |
## Modules
@@ -33,18 +38,18 @@ This module provides EKS cluster monitoring with the following resources:
|------|------|
| [aws_prometheus_rule_group_namespace.alerting_rules](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/prometheus_rule_group_namespace) | resource |
| [aws_prometheus_rule_group_namespace.recording_rules](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/prometheus_rule_group_namespace) | resource |
-| [grafana_dashboard.cluster](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.clusternw](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.kubelet](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.nodes](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.nsnw](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.nsnwworkload](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.nspods](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.nsworkload](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.nwworload](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.podnetwork](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.pods](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
-| [grafana_dashboard.workloads](https://registry.terraform.io/providers/grafana/grafana/1.25.0/docs/resources/dashboard) | resource |
+| [grafana_dashboard.cluster](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.clusternw](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.kubelet](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.nodes](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.nsnw](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.nsnwworkload](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.nspods](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.nsworkload](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.nwworload](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.podnetwork](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.pods](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
+| [grafana_dashboard.workloads](https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/dashboard) | resource |
| [helm_release.kube_state_metrics](https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release) | resource |
| [helm_release.prometheus_node_exporter](https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release) | resource |
| [aws_caller_identity.current](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/caller_identity) | data source |
diff --git a/modules/workloads/infra/main.tf b/modules/workloads/infra/main.tf
index 9b94cbd..925e10a 100644
--- a/modules/workloads/infra/main.tf
+++ b/modules/workloads/infra/main.tf
@@ -1,12 +1,3 @@
-terraform {
- required_providers {
- grafana = {
- source = "grafana/grafana"
- version = "1.25.0"
- }
- }
-}
-
resource "helm_release" "kube_state_metrics" {
count = var.enable_kube_state_metrics ? 1 : 0
chart = var.ksm_config.helm_chart_name
diff --git a/modules/workloads/infra/versions.tf b/modules/workloads/infra/versions.tf
new file mode 100644
index 0000000..3a4f278
--- /dev/null
+++ b/modules/workloads/infra/versions.tf
@@ -0,0 +1,25 @@
+terraform {
+ required_version = ">= 1.0.0"
+ required_providers {
+ aws = {
+ source = "hashicorp/aws"
+ version = ">= 4.0.0"
+ }
+ kubernetes = {
+ source = "hashicorp/kubernetes"
+ version = ">= 2.10"
+ }
+ kubectl = {
+ source = "gavinbunney/kubectl"
+ version = ">= 1.14"
+ }
+ helm = {
+ source = "hashicorp/helm"
+ version = ">= 2.4.1"
+ }
+ grafana = {
+ source = "grafana/grafana"
+ version = ">= 1.25.0"
+ }
+ }
+}
diff --git a/modules/workloads/java/README.md b/modules/workloads/java/README.md
index 67447b2..2c2c3ab 100644
--- a/modules/workloads/java/README.md
+++ b/modules/workloads/java/README.md
@@ -11,14 +11,19 @@ This module provides monitoring for Java based workloads with the following reso
| Name | Version |
|------|---------|
-| [grafana](#requirement\_grafana) | ~> 1.25.0 |
+| [terraform](#requirement\_terraform) | >= 1.0.0 |
+| [aws](#requirement\_aws) | >= 4.0.0 |
+| [grafana](#requirement\_grafana) | >= 1.25.0 |
+| [helm](#requirement\_helm) | >= 2.4.1 |
+| [kubectl](#requirement\_kubectl) | >= 1.14 |
+| [kubernetes](#requirement\_kubernetes) | >= 2.10 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | n/a |
-| [grafana](#provider\_grafana) | ~> 1.25.0 |
+| [aws](#provider\_aws) | >= 4.0.0 |
+| [grafana](#provider\_grafana) | >= 1.25.0 |
## Modules
diff --git a/modules/workloads/java/main.tf b/modules/workloads/java/main.tf
index 8caefd9..61692eb 100644
--- a/modules/workloads/java/main.tf
+++ b/modules/workloads/java/main.tf
@@ -3,15 +3,6 @@ locals {
namespace = try(var.helm_config.namespace, local.name)
}
-terraform {
- required_providers {
- grafana = {
- source = "grafana/grafana"
- version = "~> 1.25.0"
- }
- }
-}
-
data "aws_partition" "current" {}
# deploys collector
diff --git a/modules/workloads/java/versions.tf b/modules/workloads/java/versions.tf
new file mode 100644
index 0000000..3a4f278
--- /dev/null
+++ b/modules/workloads/java/versions.tf
@@ -0,0 +1,25 @@
+terraform {
+ required_version = ">= 1.0.0"
+ required_providers {
+ aws = {
+ source = "hashicorp/aws"
+ version = ">= 4.0.0"
+ }
+ kubernetes = {
+ source = "hashicorp/kubernetes"
+ version = ">= 2.10"
+ }
+ kubectl = {
+ source = "gavinbunney/kubectl"
+ version = ">= 1.14"
+ }
+ helm = {
+ source = "hashicorp/helm"
+ version = ">= 2.4.1"
+ }
+ grafana = {
+ source = "grafana/grafana"
+ version = ">= 1.25.0"
+ }
+ }
+}
diff --git a/modules/workloads/nginx/README.md b/modules/workloads/nginx/README.md
index f2aac70..04df389 100644
--- a/modules/workloads/nginx/README.md
+++ b/modules/workloads/nginx/README.md
@@ -13,14 +13,14 @@ It provides the following resources:
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.0.0 |
-| [aws](#requirement\_aws) | >= 3.72 |
+| [aws](#requirement\_aws) | >= 4.0.0 |
| [kubernetes](#requirement\_kubernetes) | >= 2.10 |
## Providers
| Name | Version |
|------|---------|
-| [aws](#provider\_aws) | >= 3.72 |
+| [aws](#provider\_aws) | >= 4.0.0 |
## Modules
diff --git a/modules/workloads/nginx/versions.tf b/modules/workloads/nginx/versions.tf
index d2ddf87..024e519 100644
--- a/modules/workloads/nginx/versions.tf
+++ b/modules/workloads/nginx/versions.tf
@@ -4,7 +4,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 3.72"
+ version = ">= 4.0.0"
}
kubernetes = {
source = "hashicorp/kubernetes"
diff --git a/providers.tf b/versions.tf
similarity index 88%
rename from providers.tf
rename to versions.tf
index 3f4e291..9021e3f 100644
--- a/providers.tf
+++ b/versions.tf
@@ -3,7 +3,7 @@ terraform {
required_providers {
aws = {
source = "hashicorp/aws"
- version = ">= 4.0.0, < 5.0.0"
+ version = ">= 4.0.0"
}
awscc = {
source = "hashicorp/awscc"