Changelog
[v1.8.3] - 15.10.2026
Базы данных
twc_database_cluster
- feat:
maintenance_slot— окно обслуживания кластера: в любое время (any_time) или в заданный интервал (fixed_time,from/toв форматеHH:MMZ, UTC). - feat:
disk_autoscaling— автоматическое увеличение диска: шаг (step_size, кратно 5120 МБ) и порог заполнения (threshold_percent: 80, 90 или 95). - feat:
is_soft_remove_recovery— платная защита от удаления: кластер можно восстановить после удаления. - feat:
replications(1, 3 или 5 — общее число нод вместе с мастером) теперь реально меняется без пересоздания кластера и показывает фактическое значение. - feat: новые поля только для чтения:
domains(технические домены кластера) и сведения о локальной сети вnetworks. - feat: блок
timeouts— можно задать время ожидания операций (по умолчанию: создание и изменение — 60 минут, удаление — 30 минут). - fix:
terraform planдля существующих кластеров устаревших типов (например,postgres,redis,mysql5) больше не завершается ошибкой. - fix:
replications = 1больше не вызывает ошибку у типов БД без репликации. - fix: недопустимые настройки теперь отклоняются уже на этапе
plan, а не во времяapply: уменьшение числа реплик, изменение реплик не у PostgreSQL, реплики вместе сdisk_autoscalingилиis_soft_remove_recovery, окно обслуживания короче 60 минут,fixed_timeбезfrom/to. - fix: если изменение кластера прервалось ошибкой, неприменённые значения не попадают в состояние Terraform.
- fix: при создании кластера база по умолчанию больше не остаётся физически на сервере после удаления; создание кластера не зависает, если база по умолчанию долго не создаётся.
twc_database_instance
- feat:
extensionsиextensions_is_global— установка расширений в базу (PostgreSQL, RabbitMQ), в том числе одинаковый набор для всех баз кластера. - feat:
config_parameters— параметры топика Kafka (partitions,retention_ms,cleanup_policyи другие); большие значения сохраняются точно; удаление всех параметров возвращает значения по умолчанию. - feat:
owner_login— логин владельца базы (только для чтения). - feat: блок
timeouts(по умолчанию 30 минут); провайдер дожидается готовности базы после создания и изменения. - fix: изменение
nameу базы PostgreSQL переименовывает её без пересоздания и потери данных; у остальных типов БД база по-прежнему пересоздаётся. - fix:
owner_idприменяется сразу при создании базы (раньше требовался повторныйapply). - fix: попытка установить выведенное из употребления расширение
pgagentотклоняется на этапеplan. - fix: уменьшение
partitionsу топика Kafka отклоняется на этапеplan(раньше молча игнорировалось). - fix: база, удалённая сразу после создания, больше не остаётся физически на сервере.
twc_database_user
- feat: блок
timeouts(по умолчанию 30 минут); провайдер дожидается фактического применения прав. - fix: пользователь с блоками
instanceбольше не получает права на базы, которых нет в его конфигурации. - fix: права, которые не были выданы (например, на базы, созданные позже пользователя), видны в
planи выдаются приapply. - fix: изменение прав на одной базе или её удаление из
instanceбольше не снимает с пользователя глобальные привилегии (CREATEDB,CREATEROLEи т.п.). - fix: смена пароля или описания больше не завершается ошибкой, если пользователь — владелец одной из баз в
instance; изменение прав на собственной базе даёт предупреждение вместо ошибки. - fix:
hostтеперь действительно задаётся при создании; изменениеhostпересоздаёт пользователя. - fix: нет постоянных изменений
passwordвplanпри API-ключе со скрытием секретных данных.
Data sources
- feat(twc_database_preset): новые поля
cpu_frequencyиtags; поддержаны дробные цены вpriceиprice_filter. - feat(twc_database_cluster): новые поля
replications,maintenance_slot,disk_autoscaling,domainsи сведения о сети; находит кластеры устаревших типов. - feat(twc_database_instance): новые поля
owner_login,extensions,extensions_is_global. - feat(twc_database_user):
instances[].is_owner— является ли пользователь владельцем базы.
Документация
- chore: обновлены примеры
twc_database_cluster,twc_database_instance,twc_database_user: актуальные типы БД (postgres17,redis8_1), локацияru-3и рабочие фильтры цен, окно обслуживания, автоувеличение диска, защита от удаления,timeouts, расширения, владелец базы, топик Kafka, ограничение пользователя поhost. - chore: в примеры data sources БД добавлено использование новых полей: цена и характеристики пресета, настройки и домены кластера, владелец и расширения базы, базы во владении пользователя.
Kubernetes
twc_k8s_node_group
- fix: taints, заданные при создании группы, применяются к нодам (раньше ноды могли запуститься без них).
- fix: ноды, добавленные при увеличении
node_count, получают labels и taints группы (раньше добавлялись без них). - fix: изменение только labels больше не снимает taints с нод, и наоборот; провайдер дожидается применения изменений на нодах.
- fix: значение
taints.effectпроверяется на этапеplan(NoSchedule,PreferNoSchedule,NoExecute). - feat: блок
timeouts(по умолчанию: создание и изменение — 60 минут, удаление — 30 минут).
twc_k8s_cluster
- feat: блок
timeouts(по умолчанию: создание и изменение — 60 минут, удаление — 30 минут). - fix: если кластер не оплачен или удаляется, провайдер сразу сообщает об ошибке, а не ждёт до истечения времени.
- fix: кластер гарантированно попадает в проект, указанный в
project_id. - fix: кратковременная ошибка доступа сразу после создания кластера больше не прерывает
apply. - fix: если API-ключ скрывает секретные данные, kubeconfig не сохраняется в состояние, а провайдер выводит предупреждение.
twc_k8s_cluster_addon
- feat: блок
timeouts(по умолчанию 30 минут).
Документация
- chore: в примерах
twc_k8s_node_group,twc_k8s_cluster,twc_k8s_addonпоказаны несколько taints с разнымиeffect, размещение кластера в проекте и блокиtimeouts.
Сеть
twc_router
- feat:
public_ip— фактический IP-адрес роутера (в том числе заказанный черезips.ip = "create_ip"); удобно использовать в ссылках, например вtwc_router_dnat_rule. - fix:
nat_ipпроверяется на этапеplan: это должен быть IP самого роутера изips; приcreate_ipпровайдер подсказывает использовать блокips.nat. Ссылки наtwc_floating_ipиз той же конфигурации поддерживаются. - fix: если указанный IP уже привязан к другому ресурсу, провайдер сразу сообщает понятную ошибку.
- fix: роутер с VPC, создаваемой в той же конфигурации, создаётся без ошибок, и сеть не теряется.
- fix: SNAT из блока
ips.natприменяется ко всем сетям роутера. - fix: предупреждения облака при создании роутера и подключении сетей выводятся в Terraform.
- fix: исключено создание дубликата роутера при повторе запроса.
- fix: нет постоянных изменений
networksвplan, если SNAT задан черезips.nat, аis_dhcp_enabledне указан; незаданныйis_dhcp_enabledне выключает DHCP.
twc_router_dnat_rule / twc_router_static_route
- fix: правила и маршруты одного роутера применяются по очереди, роутер не перегружается при создании большого числа правил.
twc_router_preset (data source)
- fix: поддержаны дробные цены в
priceиprice_filter.
twc_vpc
- fix: VPC, удалённая вне Terraform, больше не ломает
planиdestroy— она будет создана заново.
twc_floating_ip
- fix:
destroyбольше не завершается ошибкой, если IP уже удалён вместе с роутером (delete_ips_on_destroy); IP, удалённый вне Terraform, больше не ломаетplan.
Документация
- chore: примеры
twc_routerиtwc_router_presetперенесены в локациюru-3(вru-1нет тарифов роутеров); SNAT настроен на собственный IP роутера изtwc_floating_ip; добавлено правило проброса портов на IP, заказанный черезcreate_ip.
Общее
- feat: при истечении времени ожидания в ошибке указываются последний статус ресурса и сколько длилось ожидание.