diff --git a/plugins/catalog-import/src/api/CatalogImportClient.ts b/plugins/catalog-import/src/api/CatalogImportClient.ts index 78e54ac98c..0cd1268522 100644 --- a/plugins/catalog-import/src/api/CatalogImportClient.ts +++ b/plugins/catalog-import/src/api/CatalogImportClient.ts @@ -174,14 +174,17 @@ the component will become available.\n\nFor more information, read an \ body: string; }): Promise<{ link: string; location: string }> { const { repositoryUrl, fileContent, title, body } = options; - const parseData = YAML.parse(fileContent); - const validationResponse = await this.catalogApi.validateEntity( - parseData, - `url:${repositoryUrl}`, - ); - if (!validationResponse.valid) { - throw new Error(validationResponse.errors[0].message); + const parseData = YAML.parseAllDocuments(fileContent); + + for (const document of parseData) { + const validationResponse = await this.catalogApi.validateEntity( + document.toJS(), + `url:${repositoryUrl}`, + ); + if (!validationResponse.valid) { + throw new Error(validationResponse.errors[0].message); + } } const provider = this.scmIntegrationsApi.byUrl(repositoryUrl);