Skip to content

Update Makefile.inc1 #23

Update Makefile.inc1

Update Makefile.inc1 #23

Workflow file for this run

# XXX: checklist
name: Contribute
on:
pull_request:
types: [ opened, reopened, edited, synchronize ]
jobs:
checklist:
name: Check List
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@v7
with:
# A Javascript function
script: |
const commits = await github.paginate(github.rest.pulls.listCommits, {
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.issue.number
});
const comments = await github.paginate(github.rest.issues.listComments, {
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number
});
let checklist = {};
const tag = "<!--SomethingUnique-->";
const addToChecklist = (msg, sha) => {
if (!checklist[msg])
checklist[msg] = [];
checklist[msg].push(sha);
}
for (const commit of commits) {
const sob_lines = commit.commit.message.match("/^\s*signed-off-by:./i");
if (sob_lines == null && !commit.commit.author.email.endsWith("FreeBSD.org"))
addToChecklist("Missing Signed-off-by: lines", commit.sha);
else {
for (const line in sob_lines) {
if (!line.startsWith("Signed-off-by:"))
addToChecklist("Expected \"Signed-off-by\", got " + line, commit.sha);
else if (!line.endsWith(" "))
addToChecklist("Space required after Signed-off-by", commit.sha);
}
}
if (commit.commit.author.email.includes("noreply"))
addToChecklist("Real email address is needed", commit.sha);
}
if (Object.keys(checklist).length != 0) {
let msg = tag + "Problems found:\n";
for (const c in checklist)
msg += "- " + c + "<sup>" + checklist[c] + "</sup>\n";
console.log(msg);
}