don't surface entire node content in error message

This commit is contained in:
natasha41575
2021-12-22 15:41:22 -08:00
parent 233f1a3c2a
commit c659306ee2
7 changed files with 26 additions and 73 deletions

View File

@@ -51,9 +51,8 @@ func (fltr Filter) Filter(obj *yaml.RNode) (*yaml.RNode, error) {
}
fltr.path = utils.PathSplitter(fltr.FieldSpec.Path, "/")
if err := fltr.filter(obj); err != nil {
s, _ := obj.String()
return nil, errors.WrapPrefixf(err,
"considering field '%s' of object\n%v", fltr.FieldSpec.Path, s)
"considering field '%s' of object %s", fltr.FieldSpec.Path, resid.FromRNode(obj))
}
return obj, nil
}

View File

@@ -59,14 +59,7 @@ apiVersion: foo
kind: Bar
xxx:
`,
error: `considering field '' of object
apiVersion: foo/v1
kind: Bar
xxx:
metadata:
annotations:
internal.config.kubernetes.io/annotations-migration-resource-id: '0'
: cannot set or create an empty field name`,
error: `considering field '' of object Bar.v1.foo/[noName].[noNs]: cannot set or create an empty field name`,
filter: fieldspec.Filter{
SetValue: filtersutil.SetScalar("e"),
},
@@ -219,14 +212,7 @@ kind: Bar
a:
b: a
`,
error: `considering field 'a/b/c' of object
kind: Bar
a:
b: a
metadata:
annotations:
internal.config.kubernetes.io/annotations-migration-resource-id: '0'
: expected sequence or mapping node`,
error: `considering field 'a/b/c' of object Bar.[noVer].[noGrp]/[noName].[noNs]: expected sequence or mapping node`,
filter: fieldspec.Filter{
SetValue: filtersutil.SetScalar("e"),
},

View File

@@ -243,19 +243,7 @@ metadata:
data:
slice:
- false`,
expectedError: `considering field 'data/slice' of object
apiVersion: apps/v1
kind: Deployment
metadata:
name: dep
annotations:
config.kubernetes.io/index: '0'
internal.config.kubernetes.io/index: '0'
internal.config.kubernetes.io/annotations-migration-resource-id: '0'
data:
slice:
- false
: invalid value type expect a string`,
expectedError: `considering field 'data/slice' of object Deployment.v1.apps/dep.[noNs]: invalid value type expect a string`,
filter: Filter{
MappingFunc: makeMf(map[string]interface{}{
"VAR": int64(5),
@@ -271,18 +259,7 @@ metadata:
name: dep
data:
1: str`,
expectedError: `considering field 'data' of object
apiVersion: apps/v1
kind: Deployment
metadata:
name: dep
annotations:
config.kubernetes.io/index: '0'
internal.config.kubernetes.io/index: '0'
internal.config.kubernetes.io/annotations-migration-resource-id: '0'
data:
1: str
: invalid map key: value='1', tag='` + yaml.NodeTagInt + `'`,
expectedError: `considering field 'data' of object Deployment.v1.apps/dep.[noNs]: invalid map key: value='1', tag='` + yaml.NodeTagInt + `'`,
filter: Filter{
MappingFunc: makeMf(map[string]interface{}{
"VAR": int64(5),