From dcc8079e21be4242f8643f699f1c7b6800999a06 Mon Sep 17 00:00:00 2001 From: Maximilian Schlenz Date: Mon, 7 Jul 2025 14:51:41 +0200 Subject: [PATCH] ske tf module --- ske/main.tf | 12 ++++++++++++ ske/output.tf | 10 ++++++++++ ske/providers.tf | 9 +++++++++ ske/variables.tf | 22 ++++++++++++++++++++++ 4 files changed, 53 insertions(+) create mode 100644 ske/main.tf create mode 100644 ske/output.tf create mode 100644 ske/providers.tf create mode 100644 ske/variables.tf diff --git a/ske/main.tf b/ske/main.tf new file mode 100644 index 0000000..90124a0 --- /dev/null +++ b/ske/main.tf @@ -0,0 +1,12 @@ +resource "stackit_ske_cluster" "this" { + project_id = var.project_id + name = var.name + kubernetes_version_min = var.kubernetes_version_min + node_pools = var.node_pools +} + +resource "stackit_ske_kubeconfig" "admin" { + project_id = var.project_id + cluster_name = stackit_ske_cluster.this.name + refresh = true +} diff --git a/ske/output.tf b/ske/output.tf new file mode 100644 index 0000000..9abc2e4 --- /dev/null +++ b/ske/output.tf @@ -0,0 +1,10 @@ +output "name" { + description = "Name of SKE cluster" + value = stackit_ske_cluster.this.name +} + +output "kubeconfig" { + description = "Kubeconfig of SKE cluster" + value = stackit_ske_kubeconfig.admin.kube_config + sensitive = true +} \ No newline at end of file diff --git a/ske/providers.tf b/ske/providers.tf new file mode 100644 index 0000000..6e038c3 --- /dev/null +++ b/ske/providers.tf @@ -0,0 +1,9 @@ +terraform { + required_version = ">= 1.9.0" + required_providers { + stackit = { + source = "stackitcloud/stackit" + version = "0.56.0" + } + } +} diff --git a/ske/variables.tf b/ske/variables.tf new file mode 100644 index 0000000..53533c0 --- /dev/null +++ b/ske/variables.tf @@ -0,0 +1,22 @@ +variable "project_id" { + type = string +} + +variable "name" { + type = string +} + +variable "kubernetes_version_min" { + type = string +} + +variable "node_pools" { + type = list(object({ + name = string + machine_type = string + availability_zones = list(string) + volume_size = number + minimum = number + maximum = number + })) +}