From ac0cad46584010ab9a14c04f316d3c5275c188cd Mon Sep 17 00:00:00 2001 From: Dan Bode Date: Mon, 25 Jun 2012 20:23:03 -0700 Subject: [PATCH] Adds rake task for pull request stats This commit adds a pull request to gather stats on a count off all open pull requests for all projects. --- Rakefile | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/Rakefile b/Rakefile index 257eba5..d415882 100644 --- a/Rakefile +++ b/Rakefile @@ -55,3 +55,27 @@ namespace :modules do end end end + +namespace :github do + desc 'check all dependeny projects and generate a report about open pull requests' + task 'pull_request_stats' do + require 'net/https' + require 'uri' + require 'puppet' + repo_hash = YAML.load_file(File.join(File.dirname(__FILE__), repo_file)) + (repo_hash['repos'] || {})['repo_paths'].keys.each do |url| + if url =~ /\w+:\/\/github\.com\/(\S+)?\/(\S+)/ + uri = URI.parse("https://api.github.com/repos/#{$1}/#{$2}/pulls") + http = Net::HTTP.new(uri.host, uri.port) + http.use_ssl = true + http.verify_mode = OpenSSL::SSL::VERIFY_NONE + request = Net::HTTP::Get.new(uri.request_uri) + response = http.request(request) + pull_requests = PSON.parse(response.body).size + puts "repo: #{$1}-#{$2}=#{pull_requests}" + else + puts "repo: #{url} does not seem to be valid" + end + end + end +end