Add sqlserverflex instance (#381)

* Draft implementation sqlserverflex instance

* Finish implementation

* Fix acc test

* Changes after review
This commit is contained in:
Vicente Pinto 2024-05-31 15:54:05 +01:00 committed by GitHub
parent 6db3a550e6
commit 335e1cabb6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 2400 additions and 104 deletions

View file

@ -0,0 +1,61 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "stackit_sqlserverflex_instance Data Source - stackit"
subcategory: ""
description: |-
MongoDB Flex instance data source schema. Must have a region specified in the provider configuration.
---
# stackit_sqlserverflex_instance (Data Source)
MongoDB Flex instance data source schema. Must have a `region` specified in the provider configuration.
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- `instance_id` (String) ID of the MongoDB Flex instance.
- `project_id` (String) STACKIT project ID to which the instance is associated.
### Read-Only
- `acl` (List of String) The Access Control List (ACL) for the MongoDB Flex instance.
- `backup_schedule` (String) The backup schedule. Should follow the cron scheduling system format (e.g. "0 0 * * *").
- `flavor` (Attributes) (see [below for nested schema](#nestedatt--flavor))
- `id` (String) Terraform's internal data source. ID. It is structured as "`project_id`,`instance_id`".
- `name` (String) Instance name.
- `options` (Attributes) Custom parameters for the MongoDB Flex instance. (see [below for nested schema](#nestedatt--options))
- `replicas` (Number)
- `storage` (Attributes) (see [below for nested schema](#nestedatt--storage))
- `version` (String)
<a id="nestedatt--flavor"></a>
### Nested Schema for `flavor`
Read-Only:
- `cpu` (Number)
- `description` (String)
- `id` (String)
- `ram` (Number)
<a id="nestedatt--options"></a>
### Nested Schema for `options`
Read-Only:
- `edition` (String)
- `retention_days` (Number)
<a id="nestedatt--storage"></a>
### Nested Schema for `storage`
Read-Only:
- `class` (String)
- `size` (Number)

View file

@ -165,4 +165,5 @@ Note: AWS specific checks must be skipped as they do not work on STACKIT. For de
- `service_account_key_path` (String) Path for the service account key used for authentication. If set, the key flow will be used to authenticate all operations.
- `service_account_token` (String) Token used for authentication. If set, the token flow will be used to authenticate all operations.
- `ske_custom_endpoint` (String) Custom endpoint for the Kubernetes Engine (SKE) service
- `sqlserverflex_custom_endpoint` (String) Custom endpoint for the SQL Server Flex service
- `token_custom_endpoint` (String) Custom endpoint for the token API, which is used to request access tokens when using the key flow

View file

@ -81,7 +81,7 @@ Optional:
- `max_surge` (Number) Maximum number of additional VMs that are created during an update.
- `max_unavailable` (Number) Maximum number of VMs that that can be unavailable during an update.
- `os_name` (String) The name of the OS image. Defaults to `flatcar`.
- `os_version` (String, Deprecated) This field is deprecated, use `os_version_min` to configure the version and `os_version_used` to get the currently used version instead
- `os_version` (String, Deprecated) This field is deprecated, use `os_version_min` to configure the version and `os_version_used` to get the currently used version instead.
- `os_version_min` (String) The minimum OS image version. This field will be used to set the minimum OS image version on creation/update of the cluster. If unset, the latest supported OS image version will be used. SKE automatically updates the cluster Kubernetes version if you have set `maintenance.enable_kubernetes_version_updates` to true or if there is a mandatory update, as described in [Updates for Kubernetes versions and Operating System versions in SKE](https://docs.stackit.cloud/stackit/en/version-updates-in-ske-10125631.html). To get the current OS image version being used for the node pool, use the read-only `os_version_used` field.
- `taints` (Attributes List) Specifies a taint list as defined below. (see [below for nested schema](#nestedatt--node_pools--taints))
- `volume_size` (Number) The volume size in GB. Defaults to `20`

View file

@ -0,0 +1,67 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "stackit_sqlserverflex_instance Resource - stackit"
subcategory: ""
description: |-
SQL Server Flex instance resource schema. Must have a region specified in the provider configuration.
---
# stackit_sqlserverflex_instance (Resource)
SQL Server Flex instance resource schema. Must have a `region` specified in the provider configuration.
<!-- schema generated by tfplugindocs -->
## Schema
### Required
- `flavor` (Attributes) (see [below for nested schema](#nestedatt--flavor))
- `name` (String) Instance name.
- `project_id` (String) STACKIT project ID to which the instance is associated.
### Optional
- `acl` (List of String) The Access Control List (ACL) for the SQL Server Flex instance.
- `backup_schedule` (String) The backup schedule. Should follow the cron scheduling system format (e.g. "0 0 * * *")
- `options` (Attributes) (see [below for nested schema](#nestedatt--options))
- `storage` (Attributes) (see [below for nested schema](#nestedatt--storage))
- `version` (String)
### Read-Only
- `id` (String) Terraform's internal resource ID. It is structured as "`project_id`,`instance_id`".
- `instance_id` (String) ID of the SQL Server Flex instance.
- `replicas` (Number)
<a id="nestedatt--flavor"></a>
### Nested Schema for `flavor`
Required:
- `cpu` (Number)
- `ram` (Number)
Read-Only:
- `description` (String)
- `id` (String)
<a id="nestedatt--options"></a>
### Nested Schema for `options`
Optional:
- `edition` (String)
- `retention_days` (Number)
<a id="nestedatt--storage"></a>
### Nested Schema for `storage`
Optional:
- `class` (String)
- `size` (Number)