From f2573d84b9ed0ef9ee5d3dc6381a430af7e77ff2 Mon Sep 17 00:00:00 2001 From: Martynas Mickevicius Date: Wed, 21 May 2014 13:55:41 +0200 Subject: [PATCH] =scr #15002 use github API to get fixed issue list for a milestone --- scripts/release_stats.sh | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/scripts/release_stats.sh b/scripts/release_stats.sh index 3f184d2aee..430bb632f3 100755 --- a/scripts/release_stats.sh +++ b/scripts/release_stats.sh @@ -19,23 +19,24 @@ declare -r script_dir="$(cd -P "$(dirname "${script_path}")" && pwd)" # print usage info function usage { - echo "Usage: ${script_name} v2.1.0 v2.2.0 path_to_assembla_export.csv" + echo "Usage: ${script_name} " + echo "Example: ${script_name} v2.3.2 v2.3.3 2.3.3" } declare -r tag1=$1 declare -r tag2=$2 -declare -r tickets_csv=$3 - -if [ -z "$tickets_csv" ]; then - usage - exit 1 -fi +declare -r milestone_name=$3 declare -r tag_range="$tag1..$tag2" declare authors=$($script_dir/authors.pl $tag_range) declare author_count=$(echo "$authors" | wc -l | grep -o '[1-9].*') declare diff_short=$(git diff --shortstat $tag_range | grep -o '[1-9].*') -declare tickets=$(tail -n +2 $tickets_csv | grep Fixed | cut -d ',' -f 1,2 | sed 's/","/ /g' | tr -d '"' | sort -n) + +declare script_user_agent="User-Agent: Akka-Stats-Script" +declare open_milestones=$(curl -s -H "$script_user_agent" "https://api.github.com/repos/akka/akka/milestones?state=open") +declare closed_milestones=$(curl -s -H "$script_user_agent" "https://api.github.com/repos/akka/akka/milestones?state=closed") +declare milestone_id=$(echo "$open_milestones$closed_milestones" | sed 's/"description"/\n/g' | perl -ne 'm/number":([0-9]+),"title":"(.+?)",/ && print "$1,$2\n"' | grep "$milestone_name" | cut -d"," -f 1) +declare tickets=$(curl -s -H "$script_user_agent" "https://api.github.com/repos/akka/akka/issues?milestone=$milestone_id&state=all&per_page=100" | sed 's/"comments"/\n/g' | perl -ne 'm/number":([0-9]+),"title":"(.+?)",/ && print " - *$1* $2\n"' | sort -n) declare ticket_count=$(echo "$tickets" | wc -l | grep -o '[1-9].*') echo "$tag1 compared to Akka $tag2":