Refactor to use localizer to create error with status
This commit is contained in:
parent
bd801af984
commit
b9fb6c5f5f
@ -7,7 +7,6 @@ import (
|
|||||||
|
|
||||||
"github.com/hashicorp/go-argmapper"
|
"github.com/hashicorp/go-argmapper"
|
||||||
"github.com/hashicorp/go-hclog"
|
"github.com/hashicorp/go-hclog"
|
||||||
"google.golang.org/genproto/googleapis/rpc/errdetails"
|
|
||||||
"google.golang.org/grpc/codes"
|
"google.golang.org/grpc/codes"
|
||||||
"google.golang.org/grpc/status"
|
"google.golang.org/grpc/status"
|
||||||
|
|
||||||
@ -521,24 +520,13 @@ func (v *Vagrantfile) TargetConfig(
|
|||||||
if validateProvider {
|
if validateProvider {
|
||||||
usable, err := pp.Component.(core.Provider).Usable()
|
usable, err := pp.Component.(core.Provider).Usable()
|
||||||
if !usable {
|
if !usable {
|
||||||
errStatus, ok := status.FromError(err)
|
if errStatus, ok := status.FromError(err); ok {
|
||||||
if !ok {
|
return nil, localizer.LocalizeStatusErr(
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
msg := localizer.LocalizeMsg(
|
|
||||||
"provider_not_usable",
|
"provider_not_usable",
|
||||||
map[string]string{"Provider": provider, "Machine": name},
|
map[string]string{"Provider": provider, "Machine": name},
|
||||||
|
errStatus,
|
||||||
)
|
)
|
||||||
localizedProtoMsg := &errdetails.LocalizedMessage{
|
|
||||||
Message: msg,
|
|
||||||
Locale: "en",
|
|
||||||
}
|
}
|
||||||
returnErr := status.New(errStatus.Code(), msg)
|
|
||||||
returnErr, _ = returnErr.WithDetails(localizedProtoMsg)
|
|
||||||
for _, d := range errStatus.Details() {
|
|
||||||
returnErr, _ = returnErr.WithDetails(d.(*errdetails.LocalizedMessage))
|
|
||||||
}
|
|
||||||
return nil, returnErr.Err()
|
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user