github_repo_statistics 2.2.11 → 2.2.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 363280a48b1083b29eaceaf52ed9b6fa1f7aed79668f4df3f8eed74706e99652
|
|
4
|
+
data.tar.gz: ec3fb212efb80c2c7332ea0a6c78a3584c940b42ff0c3f1574f71d34615de117
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 003bf782c6f5878e6ede5c82d142c95ef8ab3381aed6cc8317fec61a539433ca21134ed676ec5d12e3037ac64b2072755190d6eeb628b93d79656d0c637a174e
|
|
7
|
+
data.tar.gz: 6cefa1b4344439d38f6c49ae4e0f0ffcfd4ab4ace41074ce00eeefd1e3bee6058b41d85382e617669e0c14401a00381ad9bc7b28bfd5e89dfc013a97031ab0f7
|
data/Gemfile.lock
CHANGED
|
@@ -31,9 +31,6 @@ class ForceMergeReport
|
|
|
31
31
|
|
|
32
32
|
weeks = @duration_in_days / 7
|
|
33
33
|
|
|
34
|
-
require 'pry'
|
|
35
|
-
binding.pry
|
|
36
|
-
|
|
37
34
|
(weekly_pull_requests.keys.sort[-weeks..] || []).each do |month|
|
|
38
35
|
pull_requests_for_month = weekly_pull_requests[month]
|
|
39
36
|
# Iterate through pull requests for the current month
|
|
@@ -94,6 +91,7 @@ class ForceMergeReport
|
|
|
94
91
|
puts " - #{workflow}: #{count}"
|
|
95
92
|
end
|
|
96
93
|
|
|
94
|
+
|
|
97
95
|
if ENV['BQ_CREDENTIALS']
|
|
98
96
|
require "google/cloud/bigquery"
|
|
99
97
|
require "json"
|
|
@@ -113,8 +111,8 @@ class ForceMergeReport
|
|
|
113
111
|
|
|
114
112
|
query = <<~SQL
|
|
115
113
|
MERGE INTO force_merges AS target
|
|
116
|
-
USING (SELECT '#{week}' AS calendar_week) AS source
|
|
117
|
-
ON target.calendar_week = source.calendar_week
|
|
114
|
+
USING (SELECT '#{week}' AS calendar_week, '#{@repo}' AS platform) AS source
|
|
115
|
+
ON target.calendar_week = source.calendar_week AND target.platform = source.platform
|
|
118
116
|
WHEN MATCHED THEN
|
|
119
117
|
UPDATE SET
|
|
120
118
|
target.force_merges_count = #{failed_count},
|
|
@@ -122,10 +120,11 @@ class ForceMergeReport
|
|
|
122
120
|
target.unit_tests_count = #{unit_tests_check},
|
|
123
121
|
target.size_check_count = #{size_check},
|
|
124
122
|
target.sonarqube_count = #{sonarqube_check},
|
|
125
|
-
target.total_prs = #{total_prs}
|
|
123
|
+
target.total_prs = #{total_prs},
|
|
124
|
+
target.platform = '#{@repo}'
|
|
126
125
|
WHEN NOT MATCHED THEN
|
|
127
|
-
INSERT (calendar_week, force_merges_count, ui_tests_count, unit_tests_count, size_check_count, sonarqube_count, total_prs)
|
|
128
|
-
VALUES ('#{week}', #{failed_count}, #{ui_tests_check}, #{unit_tests_check}, #{size_check}, #{sonarqube_check}, #{total_prs});
|
|
126
|
+
INSERT (calendar_week, force_merges_count, ui_tests_count, unit_tests_count, size_check_count, sonarqube_count, total_prs, platform)
|
|
127
|
+
VALUES ('#{week}', #{failed_count}, #{ui_tests_check}, #{unit_tests_check}, #{size_check}, #{sonarqube_check}, #{total_prs}, '#{@repo}');
|
|
129
128
|
SQL
|
|
130
129
|
|
|
131
130
|
dataset.query(query)
|
|
@@ -86,8 +86,39 @@ class ReviewReport
|
|
|
86
86
|
puts " Total reviews: #{total_reviews}"
|
|
87
87
|
puts " Reviews with comments: #{reviews_with_comments}"
|
|
88
88
|
puts " Change requested reviews: #{change_requested_reviews}"
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
if ENV['BQ_CREDENTIALS']
|
|
92
|
+
require "google/cloud/bigquery"
|
|
93
|
+
require "json"
|
|
94
|
+
creds = JSON.parse(ENV['BQ_CREDENTIALS'])
|
|
95
|
+
bigquery = Google::Cloud::Bigquery.new(
|
|
96
|
+
project_id: "hellofresh-android",
|
|
97
|
+
credentials: creds
|
|
98
|
+
)
|
|
99
|
+
dataset = bigquery.dataset "github_data"
|
|
100
|
+
|
|
101
|
+
query = <<~SQL
|
|
102
|
+
MERGE INTO pr_reviews AS target
|
|
103
|
+
USING (SELECT '#{week}' AS calendar_week, '#{@repo}' AS platform) AS source
|
|
104
|
+
ON target.calendar_week = source.calendar_week AND target.platform = source.platform
|
|
105
|
+
WHEN MATCHED THEN
|
|
106
|
+
UPDATE SET
|
|
107
|
+
target.change_requested_reviews = #{change_requested_reviews},
|
|
108
|
+
target.reviews_with_comments = #{reviews_with_comments},
|
|
109
|
+
target.total_reviews = #{total_reviews},
|
|
110
|
+
target.average_review_time_hours = #{average_time_hours.round(2)},
|
|
111
|
+
target.total_prs = #{total_count},
|
|
112
|
+
target.platform = '#{@repo}'
|
|
113
|
+
WHEN NOT MATCHED THEN
|
|
114
|
+
INSERT (calendar_week, total_prs, average_review_time_hours, total_reviews, reviews_with_comments, change_requested_reviews, platform)
|
|
115
|
+
VALUES ('#{week}', #{total_count}, #{average_time_hours.round(2)}, #{total_reviews}, #{reviews_with_comments}, #{change_requested_reviews}, '#{@repo}');
|
|
116
|
+
SQL
|
|
117
|
+
|
|
118
|
+
dataset.query(query)
|
|
119
|
+
end
|
|
89
120
|
else
|
|
90
|
-
puts "
|
|
121
|
+
puts "#{week}: No pull requests with reviews."
|
|
91
122
|
end
|
|
92
123
|
end
|
|
93
124
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: github_repo_statistics
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.2.
|
|
4
|
+
version: 2.2.13
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Serghei Moret
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2024-03-
|
|
11
|
+
date: 2024-03-11 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: date
|