mirror of https://github.com/grpc/grpc.git
Merge pull request #12647 from nicolasnoble/pull_request_interval_script
Adding script to generate pull request list from an interval.pull/12750/head^2
commit
9c15cb9329
1 changed files with 80 additions and 0 deletions
@ -0,0 +1,80 @@ |
|||||||
|
#!/bin/bash |
||||||
|
# Copyright 2017 gRPC authors. |
||||||
|
# |
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License"); |
||||||
|
# you may not use this file except in compliance with the License. |
||||||
|
# You may obtain a copy of the License at |
||||||
|
# |
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0 |
||||||
|
# |
||||||
|
# Unless required by applicable law or agreed to in writing, software |
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS, |
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||||
|
# See the License for the specific language governing permissions and |
||||||
|
# limitations under the License. |
||||||
|
|
||||||
|
if [ "x$1" = "x" ] ; then |
||||||
|
echo "Usage: $0 <first ref> [second ref]" |
||||||
|
exit 1 |
||||||
|
else |
||||||
|
first=$1 |
||||||
|
fi |
||||||
|
|
||||||
|
if [ -n $2 ] ; then |
||||||
|
second=HEAD |
||||||
|
fi |
||||||
|
|
||||||
|
if [ -e ~/github-credentials.vars ] ; then |
||||||
|
. ~/github-credentials.vars |
||||||
|
fi |
||||||
|
|
||||||
|
if [ "x$github_client_id" = "x" ] || [ "x$github_client_secret" = "x" ] ; then |
||||||
|
echo "Warning: you don't have github credentials set." |
||||||
|
echo |
||||||
|
echo "You may end up exceeding guest quota quickly." |
||||||
|
echo "You can create an application for yourself," |
||||||
|
echo "and get its credentials. Go to" |
||||||
|
echo |
||||||
|
echo " https://github.com/settings/developers" |
||||||
|
echo |
||||||
|
echo "and click 'Register a new application'." |
||||||
|
echo |
||||||
|
echo "From the application's information, copy/paste" |
||||||
|
echo "its Client ID and Client Secret, into the file" |
||||||
|
echo |
||||||
|
echo " ~/github-credentials.vars" |
||||||
|
echo |
||||||
|
echo "with the following format:" |
||||||
|
echo |
||||||
|
echo "github_client_id=0123456789abcdef0123" |
||||||
|
echo "github_client_secret=0123456789abcdef0123456789abcdef" |
||||||
|
echo |
||||||
|
echo |
||||||
|
addendum="" |
||||||
|
else |
||||||
|
addendum="?client_id=$github_client_id&client_secret=$github_client_secret" |
||||||
|
fi |
||||||
|
|
||||||
|
unset notfirst |
||||||
|
echo "[" |
||||||
|
git log --pretty=oneline $1..$2 | |
||||||
|
grep '[^ ]\+ Merge pull request #[0-9]\{4,6\} ' | |
||||||
|
cut -f 2 -d# | |
||||||
|
cut -f 1 -d\ | |
||||||
|
sort -u | |
||||||
|
while read id ; do |
||||||
|
if [ "x$notfirst" = "x" ] ; then |
||||||
|
notfirst=true |
||||||
|
else |
||||||
|
echo "," |
||||||
|
fi |
||||||
|
echo -n " {\"url\": \"https://github.com/grpc/grpc/pull/$id\"," |
||||||
|
out=`mktemp` |
||||||
|
curl -s "https://api.github.com/repos/grpc/grpc/pulls/$id$addendum" > $out |
||||||
|
echo -n " "`grep '"title"' $out` |
||||||
|
echo -n " "`grep '"login"' $out | head -1` |
||||||
|
echo -n " \"pr\": $id }" |
||||||
|
rm $out |
||||||
|
done |
||||||
|
echo |
||||||
|
echo "]" |
Loading…
Reference in new issue