Skip to content

Commit 1baf568

Browse files
authored
ci: fail integration test if cannot fetch templates
1 parent 4c71975 commit 1baf568

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

tasks/fetch-connector-templates.js

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,7 @@ async function fetchTemplates() {
3131
let response = await fetch(URL);
3232

3333
if (!response.ok) {
34-
console.warn(`Failed to fetch templates from ${ URL } (HTTP ${ response.status })`);
35-
36-
return [];
34+
throw new Error(`Failed to fetch templates from ${ URL } (HTTP ${ response.status })`);
3735
}
3836

3937
/** @type {TemplatesByIdMetadata} */
@@ -49,7 +47,15 @@ async function fetchTemplates() {
4947
}
5048
}
5149

52-
return (await Promise.all(tasks)).filter(template => template !== null);
50+
// Collect all results to display all errors at once
51+
const results = await Promise.allSettled(tasks);
52+
const failed = results.filter(result => result.status === 'rejected');
53+
54+
if (failed.length > 0) {
55+
throw new Error(`Failed to fetch some templates:\n${ failed.map(result => result.reason.message).join('\n') }`);
56+
}
57+
58+
return results.filter(r => r.status === 'fulfilled').map(r => r.value);
5359
}
5460

5561
async function fetchTemplate(templateMetadata, id) {
@@ -58,9 +64,7 @@ async function fetchTemplate(templateMetadata, id) {
5864
const response = await fetch(ref);
5965

6066
if (!response.ok) {
61-
console.warn(`Failed to fetch template ${ id } version ${ templateMetadata.version } from ${ ref } (HTTP ${ response.status })`);
62-
63-
return null;
67+
throw new Error(`Failed to fetch template ${ id } version ${ templateMetadata.version } from ${ ref } (HTTP ${ response.status })`);
6468
}
6569

6670
try {
@@ -71,8 +75,6 @@ async function fetchTemplate(templateMetadata, id) {
7175

7276
return templateJson;
7377
} catch (error) {
74-
console.warn(`Failed to parse template ${ id } version ${ templateMetadata.version } fetched from ${ ref }`, error);
75-
76-
return null;
78+
throw new Error(`Failed to parse template ${ id } version ${ templateMetadata.version } fetched from ${ ref } (error: ${error.message})`);
7779
}
7880
}

0 commit comments

Comments
 (0)