1
This commit is contained in:
@@ -313,12 +313,11 @@ func (r *{{ToCamel .Name}}Resource) Create(ctx context.Context, req resource.Cre
|
||||
}
|
||||
id, err := resources_core.CreateResourceWithTimeout(ctx, r.client, {{.ServiceID}}, resourceName, data.AdoptExistingOnCreate.ValueBool(), params, operationTimeout)
|
||||
if err != nil {
|
||||
// Partial state (Q5): если инстанс успел создаться (id != ""), фиксируем его в state.
|
||||
// Иначе облачный инстанс «осиротеет»: Terraform о нём не знает, а повторный apply
|
||||
// упрётся в страж дубликатов. Read затем сверит/очистит состояние.
|
||||
// Partial state (Q5): фиксируем ТОЛЬКО id. Остальные атрибуты плана могут быть
|
||||
// unknown/computed — запись их в state даёт "invalid new value ... unknown" и
|
||||
// маскирует исходную ошибку. Read затем синхронизирует реальное состояние.
|
||||
if id != "" {
|
||||
data.ID = types.StringValue(id)
|
||||
resp.Diagnostics.Append(resp.State.Set(ctx, &data)...)
|
||||
resp.Diagnostics.Append(resp.State.SetAttribute(ctx, path.Root("id"), types.StringValue(id))...)
|
||||
}
|
||||
resp.Diagnostics.AddError("Ошибка клиента", err.Error())
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user