3.7 KiB
3.7 KiB
Резюме + план действий (новый чат)
Дата: 2026-02-01
Контекст
- Репозиторий: /home/naeel/terra
- Генератор провайдера: /home/naeel/terra/nubes_provider_gen
- Адрес провайдера (актуально): registry.kube5s.ru/nubes/nubes
- Registry S3 bucket: terraform-registry (endpoint s3.msk-1.ngcloud.ru)
- Dev override: /home/naeel/terra/test_persistent/dev_override.tfrc
Что уже сделано
- VM ресурс сгенерирован:
- YAML: /home/naeel/terra/nubes_provider_gen/resources_yaml/vm.yaml
- Go: /home/naeel/terra/nubes_provider_gen/internal/resources_gen/vm_resource.go
- Тестовая конфигурация:
- /home/naeel/terra/test_persistent/main.tf
- Добавлен ресурс nubes_vm.test_vm (использует vapp_uid xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, образ Ubuntu_22-20G).
- Провайдер v2.0.0 собран и загружен в registry:
- Артефакты в S3 по пути: s3://terraform-registry/registry.kube5s.ru/nubes/nubes/2.0.0/
- Файлы: terraform-provider-nubes_2.0.0_linux_amd64.zip, _SHA256SUMS, _SHA256SUMS.sig
- GPG ключ в наличии:
- Key ID: FFE0F4D723F14BCA
- Токены:
- Правило: имя файла = время окончания токена (HH-MM-SS). Последний: /home/naeel/terra/23-25-49.token
- Параметры VM:
- vapp_uid найден в debug_vm/terraform.tfvars
Текущие проблемы
- Terraform init без dev_override лезет в registry.kube5s.ru и может падать.
- Для apply нужны актуальные токены (401 были частые).
План действий (VM)
-
Проверить токен:
- Убедиться, что в /home/naeel/terra/test_persistent/terraform.tfvars актуальный api_token.
- Если новый токен получен — сохранить его как /home/naeel/terra/HH-MM-SS.token (время exp). Обновить terraform.tfvars.
-
Init/Apply через dev_override:
- В /home/naeel/terra/test_persistent выполнить:
- TF_CLI_CONFIG_FILE=./dev_override.tfrc terraform init
- TF_CLI_CONFIG_FILE=./dev_override.tfrc terraform apply -auto-approve
- В /home/naeel/terra/test_persistent выполнить:
-
Создание VM:
- Проверить, что nubes_vm.test_vm создаётся.
- Если TLS handshake timeout — повторять apply (как ранее с Postgres).
-
Modify тесты (один инстанс):
- Менять параметры (vm_cpu / vm_ram / access_port_list / need_add_zabbix_template) последовательно.
- После каждого modify — apply, ждать завершения.
-
Suspend/Resume:
- delete_mode = "suspend", resume_if_exists = true
- terraform destroy -target nubes_vm.test_vm -auto-approve
- terraform apply -auto-approve (должен сделать resume)
-
Если VM тесты не пройдут:
- Тогда анализировать HAR в /home/naeel/terra/har/ (инструкции: сначала тесты, потом HAR).
Важные файлы
- VM YAML: nubes_provider_gen/resources_yaml/vm.yaml
- VM Go: nubes_provider_gen/internal/resources_gen/vm_resource.go
- Test config: test_persistent/main.tf
- Token file: /home/naeel/terra/23-25-49.token (пример)
Команды (шаблон)
- Build:
- cd /home/naeel/terra/nubes_provider_gen && go build -o terraform-provider-nubes
- Apply:
- cd /home/naeel/terra/test_persistent
- TF_CLI_CONFIG_FILE=./dev_override.tfrc terraform init
- TF_CLI_CONFIG_FILE=./dev_override.tfrc terraform apply -auto-approve