fix(yaml): allow filtering of invalid multidoc (#31963)

pull/31964/head 38.124.0
Rhys Arkins 2024-10-15 12:08:01 +02:00 committed by GitHub
parent fbc3ba8db2
commit b923c40e0b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 3 additions and 3 deletions

View File

@ -63,19 +63,19 @@ export function parseYaml<ResT = unknown>(
const results: ResT[] = [];
for (const rawDocument of rawDocuments) {
const document = rawDocument.toJS({ maxAliasCount: 10000 });
const errors = rawDocument.errors;
// handle YAML parse errors
if (errors?.length) {
const error = new AggregateError(errors, 'Failed to parse YAML file');
if (options?.failureBehaviour === 'filter') {
logger.debug({ error, document }, 'Failed to parse YAML');
logger.debug(`Failed to parse YAML file: ${error.message}`);
continue;
}
throw error;
}
const document = rawDocument.toJS({ maxAliasCount: 10000 });
// skip schema validation if no schema is provided
if (!schema) {
results.push(document as ResT);