Handle duplicate release asset links

This commit is contained in:
2026-09-04 18:58:51 -07:00
parent 32677c9fb2
commit 5f4c47a07c

View File

@@ -134,7 +134,7 @@ function createGitLabRelease(tag, releaseLinks) {
if (err.message.includes('HTTP 409')) {
console.log(`[CI Sync] Release ${tag} already exists. Appending our OS-specific files to it...`);
let promiseChain = Promise.resolve();
for (const link of releaseLinks) {
promiseChain = promiseChain.then(() => {
return sendRequest('POST', `/api/v4/projects/${PROJECT_ID}/releases/${encodeURIComponent(tag)}/assets/links`, {
@@ -142,8 +142,11 @@ function createGitLabRelease(tag, releaseLinks) {
url: link.url,
link_type: link.link_type
}).catch(e => {
if (!e.message.includes('HTTP 409')) throw e;
console.log(`[CI Sync] Link ${link.name} already attached. Skipping.`);
if (e.message.includes('already been taken') || e.message.includes('HTTP 409') || e.message.includes('HTTP 400')) {
console.log(`[CI Sync] Asset link '${link.name}' is already attached. Skipping.`);
return Promise.resolve();
}
throw e;
});
});
}