Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scripts for closing pull requests for Hacktoberfest #11587

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions scripts/close_pull_requests_with_awaiting_changes.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/bin/bash

# List all open pull requests
prs=$(gh pr list --state open --json number,title,labels --limit 500)

# Loop through each pull request
echo "$prs" | jq -c '.[]' | while read -r pr; do
pr_number=$(echo "$pr" | jq -r '.number')
pr_title=$(echo "$pr" | jq -r '.title')
pr_labels=$(echo "$pr" | jq -r '.labels')

# Check if the "awaiting changes" label is present
awaiting_changes=$(echo "$pr_labels" | jq -r '.[] | select(.name == "awaiting changes")')
echo "Checking PR #$pr_number $pr_title ($awaiting_changes) ($pr_labels)"

# If awaiting_changes, close the pull request
if [[ -n "$awaiting_changes" ]]; then
echo "Closing PR #$pr_number $pr_title due to awaiting_changes label"
gh pr close "$pr_number" --comment "Closing awaiting_changes PRs to prepare for Hacktoberfest"
sleep 2
fi
done
22 changes: 22 additions & 0 deletions scripts/close_pull_requests_with_failing_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/bin/bash

# List all open pull requests
prs=$(gh pr list --state open --json number,title,labels --limit 500)

# Loop through each pull request
echo "$prs" | jq -c '.[]' | while read -r pr; do
pr_number=$(echo "$pr" | jq -r '.number')
pr_title=$(echo "$pr" | jq -r '.title')
pr_labels=$(echo "$pr" | jq -r '.labels')

# Check if the "tests are failing" label is present
tests_are_failing=$(echo "$pr_labels" | jq -r '.[] | select(.name == "tests are failing")')
echo "Checking PR #$pr_number $pr_title ($tests_are_failing) ($pr_labels)"

# If there are failing tests, close the pull request
if [[ -n "$tests_are_failing" ]]; then
echo "Closing PR #$pr_number $pr_title due to tests_are_failing label"
gh pr close "$pr_number" --comment "Closing tests_are_failing PRs to prepare for Hacktoberfest"
sleep 2
fi
done
21 changes: 21 additions & 0 deletions scripts/close_pull_requests_with_require_descriptive_names.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/bash

# List all open pull requests
prs=$(gh pr list --state open --json number,title,labels --limit 500)

# Loop through each pull request
echo "$prs" | jq -c '.[]' | while read -r pr; do
pr_number=$(echo "$pr" | jq -r '.number')
pr_title=$(echo "$pr" | jq -r '.title')
pr_labels=$(echo "$pr" | jq -r '.labels')

# Check if the "require descriptive names" label is present
require_descriptive_names=$(echo "$pr_labels" | jq -r '.[] | select(.name == "require descriptive names")')
echo "Checking PR #$pr_number $pr_title ($require_descriptive_names) ($pr_labels)"

# If there are require_descriptive_names, close the pull request
if [[ -n "$require_descriptive_names" ]]; then
echo "Closing PR #$pr_number $pr_title due to require_descriptive_names label"
gh pr close "$pr_number" --comment "Closing require_descriptive_names PRs to prepare for Hacktoberfest"
fi
done
22 changes: 22 additions & 0 deletions scripts/close_pull_requests_with_require_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/bin/bash

# List all open pull requests
prs=$(gh pr list --state open --json number,title,labels --limit 500)

# Loop through each pull request
echo "$prs" | jq -c '.[]' | while read -r pr; do
pr_number=$(echo "$pr" | jq -r '.number')
pr_title=$(echo "$pr" | jq -r '.title')
pr_labels=$(echo "$pr" | jq -r '.labels')

# Check if the "require_tests" label is present
require_tests=$(echo "$pr_labels" | jq -r '.[] | select(.name == "require tests")')
echo "Checking PR #$pr_number $pr_title ($require_tests) ($pr_labels)"

# If there require tests, close the pull request
if [[ -n "$require_tests" ]]; then
echo "Closing PR #$pr_number $pr_title due to require_tests label"
gh pr close "$pr_number" --comment "Closing require_tests PRs to prepare for Hacktoberfest"
# sleep 2
fi
done
21 changes: 21 additions & 0 deletions scripts/close_pull_requests_with_require_type_hints.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/bash

# List all open pull requests
prs=$(gh pr list --state open --json number,title,labels --limit 500)

# Loop through each pull request
echo "$prs" | jq -c '.[]' | while read -r pr; do
pr_number=$(echo "$pr" | jq -r '.number')
pr_title=$(echo "$pr" | jq -r '.title')
pr_labels=$(echo "$pr" | jq -r '.labels')

# Check if the "require type hints" label is present
require_type_hints=$(echo "$pr_labels" | jq -r '.[] | select(.name == "require type hints")')
echo "Checking PR #$pr_number $pr_title ($require_type_hints) ($pr_labels)"

# If require_type_hints, close the pull request
if [[ -n "$require_type_hints" ]]; then
echo "Closing PR #$pr_number $pr_title due to require_type_hints label"
gh pr close "$pr_number" --comment "Closing require_type_hints PRs to prepare for Hacktoberfest"
fi
done