add: documentation

This commit is contained in:
“Naeel”
2026-06-30 15:45:24 +04:00
parent 540c1f7293
commit ca276d200f
1055 changed files with 47294 additions and 0 deletions
@@ -0,0 +1,49 @@
# VM Provisioning Failures Investigation
## Overview
As of Jan 2026, VM creation is failing on the environment due to a backend error in the Cloud Director / Nubes platform.
## Technical Details
### The "String[] to GUID" Crash
The server returns a ColdFusion error indicating a type mismatch during parameter validation.
**Error Log:**
```
"detail": "The value String [] cannot be converted to a value of type [guid].",
"message": "Cannot cast String [] to a value of type [guid]",
"rootCause": {
"message": "Invalid call of the function [checkParam]",
...
}
```
### Failure Stage
Using detailed HAR capture and analysis (`analyze_har_vm.py`), we identified the exact workflow step where the crash occurs.
**Workflow:**
1. `vm.create` (Success)
2. `vm.config_network` (Success)
3. `vm.configure_vip` (Success)
4. `vm.fw_rules` -> **FAILURE**
**HAR Extract:**
```json
{
"stage": "Работа с сервисом",
"stageMsg": "Добавление правил FW",
"isSuccessful": false
}
```
### Provider Verification
We performed a code audit to ensure the Terraform Provider was not accidentally sending a malformed "list of strings" where a GUID was expected.
- **File**: `internal/provider/vm_resource.go`
- **Function**: `submitVMOperationParams`
- **Finding**: The provider sets `SvcOperationCfsParamId` (int) and `ParamValue` (string). It specifically *omits* optional GUID fields. Use of `analyze_har_vm.py` on the HTTP dump verified that the request payload from Terraform is identical to the (also failing) manual request.
## Conclusion
The firewall rule application logic on the backend is reacting to an empty or malformed input (likely an empty list `[]`) that it fails to validate before casting to a GUID.
**Action Item**: Elevate to Cloud Support.