Auth: Surface organization membership error (#71750)

surface organization membership error
This commit is contained in:
Jo
2023-07-17 16:35:59 +02:00
committed by GitHub
parent 24eef7a3d2
commit 914e0bf87e
3 changed files with 33 additions and 6 deletions
+17 -1
View File
@@ -427,10 +427,26 @@ func getLoginExternalError(err error) string {
return createTokenErr.ExternalErr
}
// unwrap until we get to the error message
gfErr := &errutil.Error{}
if errors.As(err, gfErr) {
return gfErr.Public().Message
return getFirstPublicErrorMessage(gfErr)
}
return err.Error()
}
// Get the first public error message from an error chain.
func getFirstPublicErrorMessage(err *errutil.Error) string {
errPublic := err.Public()
if err.PublicMessage != "" {
return errPublic.Message
}
underlyingErr := &errutil.Error{}
if err.Underlying != nil && errors.As(err.Underlying, underlyingErr) {
return getFirstPublicErrorMessage(underlyingErr)
}
return errPublic.Message
}