mirror of
https://github.com/twigphp/Twig.git
synced 2026-09-13 10:56:38 +00:00
Auto-close PRs on subtree-splits
This commit is contained in:
committed by
Nicolas Grekas
parent
ad934312cd
commit
b212f1bb2f
@@ -0,0 +1,71 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
if ('cli' !== PHP_SAPI) {
|
||||||
|
echo "This script can only be run from the command line.\n";
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
$mainRepo = 'https://github.com/twigphp/Twig';
|
||||||
|
exec('find extra/ -name composer.json', $packages);
|
||||||
|
|
||||||
|
foreach ($packages as $package) {
|
||||||
|
$package = dirname($package);
|
||||||
|
$c = file_get_contents($package.'/.gitattributes');
|
||||||
|
$c = preg_replace('{^/\.git.*+\n}m', '', $c);
|
||||||
|
$c .= "/.git* export-ignore\n";
|
||||||
|
file_put_contents($package.'/.gitattributes', $c);
|
||||||
|
|
||||||
|
|
||||||
|
@mkdir($package.'/.github');
|
||||||
|
file_put_contents($package.'/.github/PULL_REQUEST_TEMPLATE.md', <<<EOTXT
|
||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
{$mainRepo}
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
|
||||||
|
EOTXT
|
||||||
|
);
|
||||||
|
|
||||||
|
@mkdir($package.'/.github/workflows');
|
||||||
|
file_put_contents($package.'/.github/workflows/check-subtree-split.yml', <<<EOTXT
|
||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
{$mainRepo}
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
EOTXT
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
name: Verify Packages
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- extra/**
|
||||||
|
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
verify:
|
||||||
|
name: Verify Packages
|
||||||
|
runs-on: Ubuntu-20.04
|
||||||
|
steps:
|
||||||
|
- name: Checkout code
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Fetch branch from where the PR started
|
||||||
|
run: git fetch --no-tags --prune --depth=1 origin +refs/heads/*:refs/remotes/origin/*
|
||||||
|
|
||||||
|
- name: Verify subtree-splits are auto-closed
|
||||||
|
run: |
|
||||||
|
php .github/sync-packages.php
|
||||||
|
git add extra/
|
||||||
|
git diff --staged --exit-code || (echo '::error::Please run "php .github/sync-packages.php".' && exit 1)
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
/Tests export-ignore
|
/Tests export-ignore
|
||||||
/phpunit.xml.dist export-ignore
|
/phpunit.xml.dist export-ignore
|
||||||
|
/.git* export-ignore
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Please do not submit any Pull Requests here. They will be closed.
|
||||||
|
---
|
||||||
|
|
||||||
|
Please submit your PR here instead:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
name: Check subtree split
|
||||||
|
on:
|
||||||
|
pull_request_target:
|
||||||
|
jobs:
|
||||||
|
close-pull-request:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Close pull request
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
if (context.repo.owner === "twigphp") {
|
||||||
|
github.rest.issues.createComment({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
issue_number: context.issue.number,
|
||||||
|
body: `
|
||||||
|
Thanks for your Pull Request! We love contributions.
|
||||||
|
|
||||||
|
However, you should instead open your PR on the main repository:
|
||||||
|
https://github.com/twigphp/Twig
|
||||||
|
|
||||||
|
This repository is what we call a "subtree split": a read-only subset of that main repository.
|
||||||
|
We're looking forward to your PR there!
|
||||||
|
`
|
||||||
|
});
|
||||||
|
github.rest.pulls.update({
|
||||||
|
owner: "twigphp",
|
||||||
|
repo: context.repo.repo,
|
||||||
|
pull_number: context.issue.number,
|
||||||
|
state: "closed"
|
||||||
|
});
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user