Preserve ConfigKit result evidence alongside loader errors
This commit is contained in:
@@ -43,17 +43,24 @@ func FromConfigKit[I, S, T any](
|
||||
acquired.Value.Sources = loadError
|
||||
acquired.Value.Findings = &Findings{Records: records, Messages: messages}
|
||||
acquired.Explanation = explanation
|
||||
return acquired, err
|
||||
}
|
||||
return acquired, err
|
||||
}
|
||||
if result == nil {
|
||||
if err != nil {
|
||||
return acquired, err
|
||||
}
|
||||
return commandkit.Acquired[View]{}, fmt.Errorf("ConfigKit scope %q returned a nil result", name)
|
||||
}
|
||||
metadata := result.Metadata()
|
||||
records := result.Diagnostics()
|
||||
messages, explanation := configKitDiagnostics(name, result.Sources(), records)
|
||||
acquired.Value = View{Effective: result, Sources: result, Explanation: result, Metadata: &metadata, Findings: &Findings{Records: records, Messages: messages}}
|
||||
acquired.Value = View{Sources: result, Findings: &Findings{Records: records, Messages: messages}}
|
||||
acquired.Explanation = explanation
|
||||
if err != nil {
|
||||
return acquired, err
|
||||
}
|
||||
metadata := result.Metadata()
|
||||
acquired.Value.Effective, acquired.Value.Explanation, acquired.Value.Metadata = result, result, &metadata
|
||||
return acquired, nil
|
||||
}
|
||||
scope.Compare = func(ctx context.Context, request ComparisonRequest[I], state S) (commandkit.Acquired[[]configkit.Difference], error) {
|
||||
|
||||
Reference in New Issue
Block a user