3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-07-04 14:26:10 +00:00

Add pull_request trigger to mark-prs-ready-for-review workflow

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot] 2026-03-12 16:30:09 +00:00
parent 0060608d73
commit f461876e8a

View file

@ -1,6 +1,8 @@
name: Mark Pull Requests Ready for Review name: Mark Pull Requests Ready for Review
on: on:
pull_request:
types: [opened]
workflow_dispatch: workflow_dispatch:
schedule: schedule:
- cron: '0 0 * * *' - cron: '0 0 * * *'
@ -17,17 +19,8 @@ jobs:
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8 uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8
with: with:
script: | script: |
const pulls = await github.paginate(github.rest.pulls.list, { async function markReady(nodeId, number, title) {
owner: context.repo.owner, core.info(`Marking PR #${number} "${title}" ready for review.`);
repo: context.repo.repo,
state: 'open',
});
const drafts = pulls.filter(pr => pr.draft);
core.info(`Found ${drafts.length} draft pull request(s).`);
for (const pr of drafts) {
core.info(`Marking PR #${pr.number} "${pr.title}" ready for review.`);
try { try {
await github.graphql(` await github.graphql(`
mutation($id: ID!) { mutation($id: ID!) {
@ -35,9 +28,31 @@ jobs:
pullRequest { number isDraft } pullRequest { number isDraft }
} }
} }
`, { id: pr.node_id }); `, { id: nodeId });
} catch (err) { } catch (err) {
core.warning(`Failed to mark PR #${pr.number} ready for review: ${err.message}`); core.warning(`Failed to mark PR #${number} ready for review: ${err.message}`);
}
}
if (context.eventName === 'pull_request') {
const pr = context.payload.pull_request;
if (pr.draft) {
await markReady(pr.node_id, pr.number, pr.title);
} else {
core.info(`PR #${pr.number} is already ready for review. Nothing to do.`);
}
} else {
const pulls = await github.paginate(github.rest.pulls.list, {
owner: context.repo.owner,
repo: context.repo.repo,
state: 'open',
});
const drafts = pulls.filter(pr => pr.draft);
core.info(`Found ${drafts.length} draft pull request(s).`);
for (const pr of drafts) {
await markReady(pr.node_id, pr.number, pr.title);
} }
} }