feat: add import support and unit tests for provider resources

This commit is contained in:
Naeel
2026-04-14 23:00:46 +03:00
parent a2688e5f2c
commit 81852c28b1
12 changed files with 366 additions and 0 deletions
+20
View File
@@ -108,3 +108,23 @@
- список реализованных ресурсов MVP
- запуск через Terraform dev override
- текущие ограничения MVP
### Обновление этапа (import + тесты)
- Добавлена поддержка `terraform import` для всех 4 ресурсов:
- `fission_environment`
- `fission_package`
- `fission_function`
- `fission_http_trigger`
- Формат import ID: `namespace/name`.
- Добавлены unit-тесты в `terraform/provider/internal/resources/*_test.go`:
- парсинг import ID
- конвертация model <-> unstructured
- валидация package source
- базовая проверка HTTP trigger round-trip
- Прогон валидации:
- `go test ./...` — успешно
- smoke `terraform plan/apply` — успешно
- endpoint `GET /tf-hello``hello from fission via terraform`
### Следующий шаг
- Добавить acceptance-тесты с опциональным запуском по env-флагу.
+19
View File
@@ -137,3 +137,22 @@
- После фиксов выполнен повторный apply и проверка endpoint:
- `https://fission.kube5s.ru/tf-hello` -> `hello from fission via terraform`.
- MVP-цепочка ресурсов работает end-to-end на кластере.
---
Агент: GitHub Copilot
Модель: GPT-5.3-Codex
## План (до действий, этап 8)
1. Добавить поддержку `terraform import` для всех реализованных ресурсов.
2. Добавить unit-тесты на критичную логику конвертации и валидации.
3. Прогнать `go test` и повторный smoke `terraform plan/apply`.
## Результат (после действий, этап 8)
- Добавлен общий helper парсинга import ID (`namespace/name`).
- Добавлен `ImportState` для ресурсов Environment/Package/Function/HTTPTrigger.
- Добавлены unit-тесты для `internal/resources`.
- Прогон `go test ./...` успешен.
- Повторный `terraform apply` успешен.
- Финальная проверка endpoint:
- `GET /tf-hello` -> `hello from fission via terraform`.