Initial commit: add .gitignore and README
This commit is contained in:
55
terraform/modules/kubernetes/namespace/main.tf
Normal file
55
terraform/modules/kubernetes/namespace/main.tf
Normal file
@@ -0,0 +1,55 @@
|
||||
# Kubernetes Namespace Module
|
||||
# Main resources
|
||||
|
||||
terraform {
|
||||
required_providers {
|
||||
kubernetes = {
|
||||
source = "hashicorp/kubernetes"
|
||||
version = "~> 2.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Namespace
|
||||
resource "kubernetes_namespace" "main" {
|
||||
metadata {
|
||||
name = var.name
|
||||
labels = var.labels
|
||||
annotations = var.annotations
|
||||
}
|
||||
}
|
||||
|
||||
# Resource Quota (if specified)
|
||||
resource "kubernetes_resource_quota" "quota" {
|
||||
count = length(var.resource_quota) > 0 ? 1 : 0
|
||||
|
||||
metadata {
|
||||
name = "${var.name}-quota"
|
||||
namespace = kubernetes_namespace.main.metadata[0].name
|
||||
}
|
||||
|
||||
spec {
|
||||
hard = var.resource_quota
|
||||
}
|
||||
}
|
||||
|
||||
# Limit Range (if specified)
|
||||
resource "kubernetes_limit_range" "limits" {
|
||||
count = length(var.limit_range) > 0 ? 1 : 0
|
||||
|
||||
metadata {
|
||||
name = "${var.name}-limits"
|
||||
namespace = kubernetes_namespace.main.metadata[0].name
|
||||
}
|
||||
|
||||
spec {
|
||||
limit {
|
||||
default = var.limit_range.default
|
||||
default_request = var.limit_range.default_request
|
||||
max = var.limit_range.max
|
||||
min = var.limit_range.min
|
||||
max_limit_request_ratio = var.limit_range.max_limit_request_ratio
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user