diff --git a/sample-env b/sample-env index 39826d2..b183ab5 100644 --- a/sample-env +++ b/sample-env @@ -1,6 +1,7 @@ GITHUB_ACCESS_TOKEN=xxx -COMMENT_ACTOR=ci-comment-username +COMMENT_ACTOR=username COMMENT_BODY_REGEXP=build failed COMMENT_BODY_REGEXP_FLAGS=i PULL_LABEL_FILTER= +PULL_AUTHOR_FILTER= PULL_RETEST_BODY=retest diff --git a/src/index.mjs b/src/index.mjs index f70b100..f9e0aab 100644 --- a/src/index.mjs +++ b/src/index.mjs @@ -18,6 +18,7 @@ export default async function() { COMMENT_BODY_REGEXP_FLAGS, COMMENT_ACTOR, PULL_LABEL_FILTER, + PULL_AUTHOR_FILTER, PULL_RETEST_BODY, } = process.env; @@ -36,6 +37,7 @@ export default async function() { const pull = await getPull(repo, comment.number); if (pull.state !== 'open') return false; // filter out any closed pulls + if (PULL_AUTHOR_FILTER && !pull.owner !== PULL_AUTHOR_FILTER) return false; // filter on owner if (PULL_LABEL_FILTER && !pull.labels.includes(PULL_LABEL_FILTER)) return false; // filter on label return { comment, pull }; diff --git a/src/lib/get_pull.mjs b/src/lib/get_pull.mjs index 1296505..07c7e3f 100644 --- a/src/lib/get_pull.mjs +++ b/src/lib/get_pull.mjs @@ -4,6 +4,7 @@ export default async function getPull(repo, id) { id: pull.id, url: pull.url, number: pull.number, + owner: pull.user.login, state: pull.state, title: pull.title, labels: pull.labels.map(label => label.name),