fix: redeploy now sends CFS params from YAML (RunRedeployOperation + template + loader)
This commit is contained in:
@@ -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
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user