feat: complete MVP resources and validate end-to-end terraform flow

This commit is contained in:
Naeel
2026-04-14 22:53:33 +03:00
parent cf55828ba6
commit f0446742fe
8 changed files with 215 additions and 76 deletions
+48
View File
@@ -0,0 +1,48 @@
# Terraform Provider Fission (MVP)
Текущий MVP провайдера управляет Fission CRD через Kubernetes API:
- `fission_environment`
- `fission_package`
- `fission_function`
- `fission_http_trigger`
## Быстрый запуск (dev override)
1. Собрать бинарник провайдера:
```bash
cd terraform/provider
go build -o bin/terraform-provider-fission .
```
2. Положить бинарник в локальный каталог dev plugins:
```bash
mkdir -p ~/.terraform.d/dev-plugins/Nail/fission
cp terraform/provider/bin/terraform-provider-fission ~/.terraform.d/dev-plugins/Nail/fission/
```
3. Создать файл Terraform CLI config (пример `/tmp/terraformrc-fission`):
```hcl
provider_installation {
dev_overrides {
"nail/fission" = "/home/naeel/.terraform.d/dev-plugins/Nail/fission"
}
direct {}
}
```
4. Запустить пример:
```bash
cd examples/hello-python
TF_CLI_CONFIG_FILE=/tmp/terraformrc-fission terraform plan
TF_CLI_CONFIG_FILE=/tmp/terraformrc-fission terraform apply -auto-approve
```
## Ограничения MVP
- `fission_package.source_dir` в текущей реализации ожидает файл `main.py` в корне указанной директории.
- Реализация ориентирована на Python flow через `spec.deployment.literal`.
- Дополнительные сценарии сборки (`build_command`, многофайловые архивы и т.д.) будут расширены в следующих этапах.