PromucFlow_constructor/.github/workflows/scripts/client-build-compliance.js
2024-05-20 20:47:15 +05:30

29 lines
940 B
JavaScript

module.exports = async ({core, github, context}) => {
const prNumber = process.env.PR_NUMBER;
const affectedFiles = await github.paginate(github.rest.pulls.listFiles, {
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: prNumber,
per_page: 100,
});
console.log(affectedFiles);
const nonTsFiles = affectedFiles.filter(f => f.status === "added" && f.filename.startsWith("app/client/cypress/e2e/") && !f.filename.endsWith(".ts"));
console.log(nonTsFiles);
if (nonTsFiles.length > 0) {
const body = [
"🔴 There's new test files in JS, please port to TS and re-trigger Cypress tests:",
`1. ${nonTsFiles.map(f => f.filename).join("\n1. ")}`,
].join("\n");
github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
body,
});
core.setFailed("There's new test files in JS\n" + body);
}
};