Normalize PR and commit author names to lowercase
Ensure PR and commit authors are checked in lowercase for authorization.
This commit is contained in:
parent
b98bd0bb79
commit
34b2e2a78a
|
|
@ -40,24 +40,26 @@ jobs:
|
||||||
with:
|
with:
|
||||||
github-token: ${{ secrets.PR_CLOSE_TOKEN }}
|
github-token: ${{ secrets.PR_CLOSE_TOKEN }}
|
||||||
script: |
|
script: |
|
||||||
|
// List of allowed users (all lowercase)
|
||||||
const allowed = [
|
const allowed = [
|
||||||
"expsa",
|
"expsa",
|
||||||
"moutazmuhammad",
|
"moutazmuhammad",
|
||||||
"ronozoro",
|
"ronozoro",
|
||||||
"Abubaker-Altaib",
|
"abubaker-altaib",
|
||||||
"altexp",
|
"altexp",
|
||||||
"the5abir",
|
"the5abir",
|
||||||
"ahmadaking",
|
"ahmadaking",
|
||||||
"kchyounes19",
|
"kchyounes19",
|
||||||
"abdurrahman-saber"
|
"abdurrahman-saber"
|
||||||
];
|
].map(u => u.toLowerCase());
|
||||||
|
|
||||||
const pr = context.payload.pull_request;
|
const pr = context.payload.pull_request;
|
||||||
const prAuthor = pr.user.login;
|
const prAuthor = pr.user.login.toLowerCase();
|
||||||
const owner = context.repo.owner;
|
const owner = context.repo.owner;
|
||||||
const repo = context.repo.repo;
|
const repo = context.repo.repo;
|
||||||
|
|
||||||
core.info(`PR author: ${prAuthor}`);
|
core.info(`PR author: ${prAuthor}`);
|
||||||
|
core.info(`Allowed users: ${allowed.join(", ")}`);
|
||||||
|
|
||||||
// Check PR author
|
// Check PR author
|
||||||
if (!allowed.includes(prAuthor)) {
|
if (!allowed.includes(prAuthor)) {
|
||||||
|
|
@ -79,7 +81,11 @@ jobs:
|
||||||
});
|
});
|
||||||
|
|
||||||
for (const commit of commitList.data) {
|
for (const commit of commitList.data) {
|
||||||
const commitAuthor = commit.author ? commit.author.login : null;
|
const commitAuthor = commit.author ? commit.author.login.toLowerCase() : null;
|
||||||
|
|
||||||
|
if (!commit.author) {
|
||||||
|
core.warning(`Commit ${commit.sha} has no GitHub-linked author.`);
|
||||||
|
}
|
||||||
|
|
||||||
if (commitAuthor && !allowed.includes(commitAuthor)) {
|
if (commitAuthor && !allowed.includes(commitAuthor)) {
|
||||||
core.error(`Unauthorized commit author: ${commitAuthor}. Closing PR...`);
|
core.error(`Unauthorized commit author: ${commitAuthor}. Closing PR...`);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue