Skip to content

Commit

Permalink
Ensure incompatible artifact actions aren't synced to GHES
Browse files Browse the repository at this point in the history
  • Loading branch information
joshmgross committed Jan 17, 2025
1 parent 890c78b commit dac07c6
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions script/sync-ghes/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,27 @@ async function checkWorkflow(
})
),
]);

// The v4 versions of upload and download artifact are not yet supported on GHES
console.group("Updating all compatible workflows to use v3 of the artifact actions");
for (const workflow of result.compatibleWorkflows) {
const path = join(workflow.folder, `${workflow.id}.yml`);
console.log(`Updating ${path}`);
const contents = await fs.readFile(path, "utf8");

if (contents.includes("actions/upload-artifact@v4") || contents.includes("actions/download-artifact@v4")) {
console.log("Found v4 artifact actions, updating to v3");
} else {
continue;
}

let updatedContents = contents.replace(/actions\/upload-artifact@v4/g, "actions/upload-artifact@v3");
updatedContents = updatedContents.replace(/actions\/download-artifact@v4/g, "actions/download-artifact@v3");

await fs.writeFile(path, updatedContents);
}
console.groupEnd();

} catch (e) {
console.error("Unhandled error while syncing workflows", e);
process.exitCode = 1;
Expand Down

0 comments on commit dac07c6

Please sign in to comment.