func()

in pkg/gcv/validator.go [205:228]


func (v *Validator) ReviewAsset(ctx context.Context, asset *validator.Asset) ([]*validator.Violation, error) {
	// Sanitize the ancestry path first, so that an asset that only provides ancestors
	// can still pass ValidateAsset.
	if err := asset2.SanitizeAncestryPath(asset); err != nil {
		return nil, err
	}

	if err := asset2.ValidateAsset(asset); err != nil {
		return nil, err
	}

	assetInterface, err := asset2.ConvertResourceViaJSONToInterface(asset)
	if err != nil {
		return nil, err
	}

	assetMapInterface := assetInterface.(map[string]interface{})
	result, err := v.ReviewUnmarshalledJSON(ctx, assetMapInterface)
	if err != nil {
		return nil, err
	}

	return result.ToViolations()
}