Skip to content

v1.35.0 — Полный Go SDK и расширенный Terraform-провайдер

Choose a tag to compare

@NAGenaev NAGenaev released this 20 Jun 09:46
· 78 commits to main since this release

Обзор

Версия 1.35.0 завершает формирование экосистемы интеграций Tuck: Go SDK получил полное покрытие всех подсистем платформы, Terraform-провайдер расширен ресурсом управления точками монтирования.


Состав изменений

Go SDK — pkg/client

Добавлены типизированные клиенты для всех подсистем хранения и криптографии:

Клиент Методы
DB() PutConfig, GetConfig, DeleteConfig, PutRole, GetRole, DeleteRole, GenerateCreds, RevokeLease
AWS() PutConfig, GetConfig, DeleteConfig, PutRole, GetRole, DeleteRole, GenerateCreds, RevokeLease
GCP() PutConfig, GetConfig, DeleteConfig, PutRole, GetRole, DeleteRole, GenerateCreds, RevokeLease
Azure() PutConfig, GetConfig, DeleteConfig, PutRole, GetRole, DeleteRole, GenerateCreds, RevokeLease
Transit() CreateKey, GetKey, DeleteKey, RotateKey, Encrypt, Decrypt, Sign, Verify, HMAC
PKI() GenerateCA, GetCACert, PutRole, GetRole, DeleteRole, IssueCert, RevokeCert, GetCert
SSH() GenerateCA, GetCAPublicKey, PutRole, GetRole, DeleteRole, Sign
TOTP() CreateKey, GetKey, DeleteKey, GenerateCode, ValidateCode
AppRole() PutRole, GetRole, DeleteRole, ListRoles, GenerateSecretID, LookupSecretID, DestroySecretID
Mounts() List, Enable, Disable
Leases() Get, Renew, Revoke, List

Terraform-провайдер — contrib/terraform-provider-tuck

  • Новый ресурс tuck_mount — управление точками монтирования движков секретов. Атрибуты: path, type, description, вычисляемый accessor. Изменение path или type инициирует замену ресурса.
  • Обновлены примеры (examples/main.tf) — демонстрация полного цикла: пространства имён, точки монтирования, политики, token roles, AppRole, KV v1/v2, источники данных.

Исправления CI/CD

  • Устранена ошибка сборки Docker-образов в goreleaser: Dockerfile.server, Dockerfile.operator, Dockerfile.csi переведены на схему копирования готового бинаря (без пересборки из исходных текстов).
  • Устранена ошибка golangci-lint: добавлен GOTOOLCHAIN=local для совместимости линтера go1.24 с модулем, требующим go1.25.

Совместимость

Обратная совместимость API полностью сохранена. Все существующие ресурсы Terraform и методы SDK продолжают работать без изменений.


Технические характеристики

  • Язык реализации: Go 1.25
  • Охват API: 194 HTTP-эндпоинта
  • Тестовых пакетов: 39 (все проходят)
  • Лицензия: MIT