Skip to content

Commit 8c9e943

Browse files
committed
refactor: split into separate datasources
Signed-off-by: Mauritz Uphoff <mauritz.uphoff@stackit.cloud>
1 parent 9315710 commit 8c9e943

File tree

26 files changed

+1923
-389
lines changed

26 files changed

+1923
-389
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "stackit_ske_availability_zones Data Source - stackit"
4+
subcategory: ""
5+
description: |-
6+
Returns a list of supported Kubernetes Availability Zones for the region.
7+
---
8+
9+
# stackit_ske_availability_zones (Data Source)
10+
11+
Returns a list of supported Kubernetes Availability Zones for the region.
12+
13+
## Example Usage
14+
15+
```terraform
16+
data "stackit_ske_availability_zones" "example" {
17+
region = "eu01"
18+
}
19+
20+
resource "stackit_ske_cluster" "example" {
21+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
22+
name = "example"
23+
kubernetes_version_min = "x.x"
24+
node_pools = [
25+
{
26+
name = "np-example"
27+
machine_type = "x.x"
28+
os_version = "x.x.x"
29+
os_name = "xxx"
30+
minimum = "2"
31+
maximum = "3"
32+
availability_zones = data.stackit_ske_availability_zones.example.availability_zones
33+
volume_type = "storage_premium_perf6"
34+
volume_size = "48"
35+
}
36+
]
37+
}
38+
```
39+
40+
<!-- schema generated by tfplugindocs -->
41+
## Schema
42+
43+
### Optional
44+
45+
- `region` (String) Region override. If omitted, the provider’s region will be used.
46+
47+
### Read-Only
48+
49+
- `availability_zones` (List of String) List of availability zones in the selected region.
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "stackit_ske_kubernetes_versions Data Source - stackit"
4+
subcategory: ""
5+
description: |-
6+
Returns a list of supported Kubernetes versions for the cluster nodes.
7+
---
8+
9+
# stackit_ske_kubernetes_versions (Data Source)
10+
11+
Returns a list of supported Kubernetes versions for the cluster nodes.
12+
13+
## Example Usage
14+
15+
```terraform
16+
data "stackit_ske_kubernetes_versions" "example" {
17+
region = "eu01"
18+
}
19+
20+
resource "stackit_ske_cluster" "example" {
21+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
22+
name = "example"
23+
# TODO
24+
kubernetes_version = "x.x"
25+
node_pools = [
26+
{
27+
name = "np-example"
28+
machine_type = "x.x"
29+
os_version = "x.x.x"
30+
os_name = "xxx"
31+
minimum = "2"
32+
maximum = "3"
33+
availability_zones = ["eu01-1"]
34+
volume_type = "storage_premium_perf6"
35+
volume_size = "48"
36+
}
37+
]
38+
}
39+
```
40+
41+
<!-- schema generated by tfplugindocs -->
42+
## Schema
43+
44+
### Optional
45+
46+
- `region` (String) Region override. If omitted, the provider’s region will be used.
47+
48+
### Read-Only
49+
50+
- `kubernetes_versions` (Attributes List) Supported Kubernetes versions. (see [below for nested schema](#nestedatt--kubernetes_versions))
51+
52+
<a id="nestedatt--kubernetes_versions"></a>
53+
### Nested Schema for `kubernetes_versions`
54+
55+
Read-Only:
56+
57+
- `expiration_date` (String) Expiration date of the version in RFC3339 format.
58+
- `state` (String) Version state, such as `supported`, `preview`, or `deprecated`.
59+
- `version` (String) Kubernetes version string (e.g., `1.33`).
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "stackit_ske_machine_image_versions Data Source - stackit"
4+
subcategory: ""
5+
description: |-
6+
Returns a list of supported Kubernetes machine image versions for the cluster nodes.
7+
---
8+
9+
# stackit_ske_machine_image_versions (Data Source)
10+
11+
Returns a list of supported Kubernetes machine image versions for the cluster nodes.
12+
13+
## Example Usage
14+
15+
```terraform
16+
data "stackit_ske_machine_image_versions" "example" {}
17+
18+
resource "stackit_ske_cluster" "example" {
19+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
20+
name = "example"
21+
kubernetes_version = "x.x"
22+
node_pools = [
23+
{
24+
name = "np-example"
25+
machine_type = "x.x"
26+
# TODO
27+
os_version = "x.x.x"
28+
os_name = "xxx"
29+
minimum = "2"
30+
maximum = "3"
31+
availability_zones = ["eu01-1"]
32+
volume_type = "storage_premium_perf6"
33+
volume_size = "48"
34+
}
35+
]
36+
}
37+
```
38+
39+
<!-- schema generated by tfplugindocs -->
40+
## Schema
41+
42+
### Optional
43+
44+
- `region` (String) Region override. If omitted, the provider’s region will be used.
45+
46+
### Read-Only
47+
48+
- `machine_images` (Attributes List) Supported machine image types and software versions. (see [below for nested schema](#nestedatt--machine_images))
49+
50+
<a id="nestedatt--machine_images"></a>
51+
### Nested Schema for `machine_images`
52+
53+
Read-Only:
54+
55+
- `name` (String) Name of the OS image (e.g., `ubuntu`).
56+
- `versions` (Attributes List) Supported versions of the image. (see [below for nested schema](#nestedatt--machine_images--versions))
57+
58+
<a id="nestedatt--machine_images--versions"></a>
59+
### Nested Schema for `machine_images.versions`
60+
61+
Read-Only:
62+
63+
- `cri` (List of String) Container runtimes supported (e.g., `containerd`).
64+
- `expiration_date` (String) Expiration date of the version in RFC3339 format.
65+
- `state` (String) State of the image version (e.g., `supported`, `preview`, `deprecated`).
66+
- `version` (String) Machine image version string.
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "stackit_ske_machine_types Data Source - stackit"
4+
subcategory: ""
5+
description: |-
6+
Returns a list of supported machine types for the cluster nodes.
7+
---
8+
9+
# stackit_ske_machine_types (Data Source)
10+
11+
Returns a list of supported machine types for the cluster nodes.
12+
13+
## Example Usage
14+
15+
```terraform
16+
data "stackit_ske_machine_types" "example" {}
17+
18+
locals {
19+
matched_machine = [
20+
for machine in data.stackit_ske_machine_types.example.machine_types : machine.name
21+
if machine.cpu == 8 && machine.memory == 16
22+
]
23+
}
24+
25+
resource "stackit_ske_cluster" "example" {
26+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
27+
name = "example"
28+
kubernetes_version_min = "x.x"
29+
node_pools = [
30+
{
31+
name = "np-example"
32+
machine_type = local.matched_machine[0]
33+
os_version = "x.x.x"
34+
os_name = "xxx"
35+
minimum = "2"
36+
maximum = "3"
37+
availability_zones = ["eu01-1"]
38+
volume_type = "storage_premium_perf6"
39+
volume_size = "48"
40+
}
41+
]
42+
}
43+
```
44+
45+
<!-- schema generated by tfplugindocs -->
46+
## Schema
47+
48+
### Optional
49+
50+
- `region` (String) Region override. If omitted, the provider’s region will be used.
51+
52+
### Read-Only
53+
54+
- `machine_types` (Attributes List) List of machine types (node sizes) available in the region. (see [below for nested schema](#nestedatt--machine_types))
55+
56+
<a id="nestedatt--machine_types"></a>
57+
### Nested Schema for `machine_types`
58+
59+
Read-Only:
60+
61+
- `architecture` (String) CPU architecture (e.g., `x86_64`, `arm64`).
62+
- `cpu` (Number) Number of virtual CPUs.
63+
- `gpu` (Number) Number of GPUs included.
64+
- `memory` (Number) Memory size in GB.
65+
- `name` (String) Machine type name (e.g., `c2i.2`).

docs/data-sources/ske_provider_options.md

Lines changed: 0 additions & 101 deletions
This file was deleted.
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
---
2+
# generated by https://github.com/hashicorp/terraform-plugin-docs
3+
page_title: "stackit_ske_volume_types Data Source - stackit"
4+
subcategory: ""
5+
description: |-
6+
Returns a list of supported volume types for the cluster nodes.
7+
---
8+
9+
# stackit_ske_volume_types (Data Source)
10+
11+
Returns a list of supported volume types for the cluster nodes.
12+
13+
## Example Usage
14+
15+
```terraform
16+
data "stackit_ske_volume_types" "example" {}
17+
18+
resource "stackit_ske_cluster" "example" {
19+
project_id = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
20+
name = "example"
21+
kubernetes_version = "x.x"
22+
node_pools = [
23+
{
24+
name = "np-example"
25+
machine_type = "x.x"
26+
os_version = "x.x.x"
27+
os_name = "xxx"
28+
minimum = "2"
29+
maximum = "3"
30+
availability_zones = ["eu01-1"]
31+
# TODO
32+
volume_type = "storage_premium_perf6"
33+
volume_size = "48"
34+
}
35+
]
36+
}
37+
```
38+
39+
<!-- schema generated by tfplugindocs -->
40+
## Schema
41+
42+
### Optional
43+
44+
- `region` (String) Region override. If omitted, the provider’s region will be used.
45+
46+
### Read-Only
47+
48+
- `volume_types` (List of String) Supported root volume types (e.g., `storage_premium_perf1`).

0 commit comments

Comments
 (0)