11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
# File 'lib/standup/report_generator.rb', line 11
def gitlab_report!
done = []
reviewed = []
config = @settings.config
to_date = @settings.to_date
from_date = @settings.from_date
projects_query = {
per_page: 10,
scope: :owned,
search: config['gitlab_project_search_pattern'],
order_by: :last_activity_at,
sort: :desc
}
mrs_query = {
per_page: 100,
state: :merged,
order_by: :updated_at,
sort: :desc
}
projects = Gitlab.projects(projects_query)
projects.each do |project|
begin
merged_mrs = Gitlab.merge_requests(project.id, mrs_query)
rescue Gitlab::Error::Forbidden
merged_mrs = []
end
merged_mrs.each do |mr|
updated_at = Time.parse(mr.updated_at)
author = mr.author.username
assignee = mr.assignee && mr.assignee.username
if updated_at < to_date &&
updated_at > from_date
if author == config[:username]
done << "#{mr.title} (#{project.name})"
elsif assignee == config[:username]
reviewed << "#{mr.title} (#{project.name})"
end
end
end
end
puts '----- DONE -----'
puts done
puts "----------------\n\n"
puts '--- REVIEWED ---'
puts reviewed
puts "----------------\n\n"
end
|