class Lariat::IssueWriter
Constants
- ISSUE_HEADER
- PR_HEADER
Public Class Methods
image_link(assignee)
click to toggle source
# File lib/lariat/issue_writer.rb, line 15 def self.image_link(assignee) return "" if assignee.blank? "<img src='#{assignee[:avatar_url]}' width='16' title='#{assignee[:login]}'>" end
write_build_stats(stream, build_stats)
click to toggle source
# File lib/lariat/issue_writer.rb, line 20 def self.write_build_stats(stream, build_stats) stream << "### Sabotage\n" stream << "**#{build_stats[:releases_verified]}** Deploys\n" stream << "**#{build_stats[:prs_closed]}** PRs closed\n" end
write_issue(build_stats, top_issues_results, issue_summary_results, issue_category_results, pr_results)
click to toggle source
# File lib/lariat/issue_writer.rb, line 6 def self.write_issue(build_stats, top_issues_results, issue_summary_results, issue_category_results, pr_results) StringIO.open do |stream| write_issue_summary(stream, top_issues_results) write_build_stats(stream, build_stats) write_stats_summary(stream, issue_summary_results, issue_category_results, pr_results) stream.string end end
write_issue_summary(stream, top_issues_results)
click to toggle source
# File lib/lariat/issue_writer.rb, line 26 def self.write_issue_summary(stream, top_issues_results) top_issues_results.each do |results| stream << "# #{results[:title]}\n" if results[:issues].count == 0 stream << "**No Priority 1 Issues**\n" next end results[:issues].each do |issue| stream << "* [#{issue[:title]}](#{issue[:html_url]}) #{image_link(issue[:assignee])}\n" end stream << "\n" end end
write_pr_summary(stream, pr_results)
click to toggle source
# File lib/lariat/issue_writer.rb, line 58 def self.write_pr_summary(stream, pr_results) stream << "\n" stream << "### Pull Requests\n" stream << PR_HEADER pr_results.each do |pr| stream << "#{pr[:total]} | " end end
write_stats_summary(stream, issue_summary_results, issue_category_results, pr_results)
click to toggle source
# File lib/lariat/issue_writer.rb, line 40 def self.write_stats_summary(stream, issue_summary_results, issue_category_results, pr_results) stream << "## Week in Review\n" stream << "### Issues\n" issue_summary_results.each do |issue| stream << "**#{issue[:total]}** #{issue[:title]}\n" end stream << "#### Issue Breakdown\n" stream << ISSUE_HEADER issue_category_results.each do |summary| values = summary.values.flatten stream << "#{summary.keys.first} | #{values[0]} | #{values[1]} | #{values[2]}\n" end write_pr_summary(stream, pr_results) end