sbercloud-terraform / terraform-provider-sbercloud

Terraform SberCloud Provider
https://registry.terraform.io/providers/sbercloud-terraform/sbercloud/latest/docs
Mozilla Public License 2.0
34 stars 21 forks source link

Не работает добавление Alias для CCE через Terraform #301

Closed legkovalex closed 3 months ago

legkovalex commented 4 months ago

Добрый день. Мы приводим имена кластеров ССЕ к единым правилам, Так как нет возможности переименовать кластер, пытаюсь создать Alias для ССЕ кластера через Terraform. terraform plan отрабатывает корректно:

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  # module.cceCLUSTER.sbercloud_cce_cluster.cluster will be updated in-place
  ~ resource "sbercloud_cce_cluster" "cluster" {
      ~ alias                  = "dev-private-cluster-1" -> "dev-private-cluster-2"
        id                     = "718f6b4f-97d5-11ed-92d6-0255ac100089"
        name                   = "dev-cluster-2"
        tags                   = {}
        # (28 unchanged attributes hidden)

        # (1 unchanged block hidden)
    }

Plan: 0 to add, 1 to change, 0 to destroy.

А вот terraform apply выдаёт ошибку:

module.cceCLUSTER.sbercloud_cce_cluster.cluster: Modifying... [id=718f6b4f-97d5-11ed-92d6-0255ac100089]
╷
│ Error: error updating CCE cluster: Missing input for argument [Spec]
│
│   with module.cceCLUSTER.sbercloud_cce_cluster.cluster,
│   on ../../modules/cceCLUSTER/[main.tf](http://main.tf/) line 37, in resource "sbercloud_cce_cluster" "cluster":
│   37: resource "sbercloud_cce_cluster" "cluster" {

Версия Terraform модуля:

$ terraform version
Terraform v1.9.1
on linux_amd64
+ provider [registry.terraform.io/sbercloud-terraform/sbercloud](http://registry.terraform.io/sbercloud-terraform/sbercloud) v1.12.1
0ohmresistor commented 4 months ago

Добрый день! Для создания alias через terraform, у ресурса sbercloud_cce_cluster должно быть поле custom_san, без него будет ошибка, как приведена у вас. Допишите поле alias и custom_san, чтобы ресурс создавался аналогично примеру ниже:

resource "sbercloud_cce_cluster" "cluster" {
  name                   = "cluster11"
  flavor_id              = "cce.s1.small"
  vpc_id                 = sbercloud_vpc.myvpc.id
  subnet_id              = sbercloud_vpc_subnet.mysubnet.id
  container_network_type = "overlay_l2"
  alias = "alias-sample-00"

  custom_san = [""]
}