Sha256: 31e3c477def2b3b317d9da79d85603c296633b8ac74c4b1b1cd3ebc0a692ff78
Contents?: true
Size: 882 Bytes
Versions: 30
Compression:
Stored size: 882 Bytes
Contents
require 'octokit' require 'reverse_markdown' require 'erb' class ChangeLogGenerator attr :repository, :template_path, :changelog_path def initialize(repository, template_path: "CHANGELOG.md.erb", changelog_path: "CHANGELOG.md") @repository = repository @template_path = template_path @changelog_path = changelog_path end def generate_and_save! changelog_in_md = ERB.new(template).result(binding) changelog_in_html = Octokit.markdown(changelog_in_md, context: repository, mode: "gfm") File.open(changelog_path, 'w') do |file| file.write ReverseMarkdown.convert(changelog_in_html, github_flavored: true) end end private def template open("#{__dir__}/#{template_path}").read end def releases @releases ||= Octokit.releases(repository) end end ChangeLogGenerator.new("yuki24/did_you_mean").generate_and_save!
Version data entries
30 entries across 30 versions & 2 rubygems