blob: 4a2fddfac97fa597376670b8686887e56dce0268 [file] [log] [blame]
name: Re-run CI tests on open PRs
on:
push:
branches:
- master
jobs:
re-run-github-actions:
runs-on: ubuntu-latest
steps:
- name: (GET-&-PUT Github API) Push empty commit to PR branch
uses: actions/github-script@0.2.0
with:
github-token: ${{secrets.PAT}}
script: |
const owner = context.repo.owner;
const repo = context.repo.repo;
const {data: pullRequests} = await github.pulls.list({
owner,
repo,
base: "master",
state: "open",
});
for (pr of pullRequests) {
try {
let pullReq = {};
while (pullReq.mergeable === undefined || pullReq.mergeable === null) {
pullReq = (
await github.pulls.get({
owner,
repo,
pull_number: pr.number,
})
).data;
}
if(pullReq.mergeable === false) continue;
const {data: commitData} = await github.repos.getCommit({
owner,
repo,
ref: pullReq.head.sha,
});
const {data: createdCommit} = await github.git.createCommit({
owner,
repo,
message: "trigger github actions",
tree: commitData.commit.tree.sha,
parents: [commitData.sha],
commiter: context.payload.pusher,
author: context.payload.pusher,
});
await github.git.updateRef({
owner,
repo,
ref: `heads/${pr.head.ref}`,
sha: createdCommit.sha,
});
} catch (err) {
console.log(err);
}
}