fix: redeploy now sends CFS params from YAML (RunRedeployOperation + template + loader)

This commit is contained in:
“Naeel”
2026-07-20 07:45:56 +04:00
parent 377542eb45
commit b137c93869
8 changed files with 35 additions and 8 deletions
+13 -3
View File
@@ -534,9 +534,8 @@ func (c *UniversalClient) RunInstanceOperationUniversalWithDefaults(ctx context.
}
// RunRedeployOperation запускает redeploy для сервисов, поддерживающих пересборку из git.
// В отличие от modify, redeploy не требует CFS-параметров — операция запускается без них.
// Используется генератором (gen_v2) согласно ARCHITECTURE.md.
func (c *UniversalClient) RunRedeployOperation(ctx context.Context, instanceUid string, timeoutOverride string) error {
// Если params не nil — отправляет CFS-параметры перед запуском.
func (c *UniversalClient) RunRedeployOperation(ctx context.Context, instanceUid string, timeoutOverride string, params map[int]string) error {
state, err := c.GetInstanceState(ctx, instanceUid)
if err != nil {
return err
@@ -571,6 +570,17 @@ func (c *UniversalClient) RunRedeployOperation(ctx context.Context, instanceUid
return fmt.Errorf("не удалось получить UID операции redeploy")
}
for paramId, value := range params {
pPayload := genericParamReq{
InstanceOperationUid: opUid,
SvcOperationCfsParamId: paramId,
ParamValue: value,
}
if _, _, err := c.doRequest(ctx, "POST", "/instanceOperationCfsParams", pPayload); err != nil {
return fmt.Errorf("не удалось установить параметр %d для redeploy: %w", paramId, err)
}
}
if _, _, err := c.doRequest(ctx, "POST", fmt.Sprintf("/instanceOperations/%s/run", opUid), map[string]interface{}{}); err != nil {
return err
}