Class: Versionius::Builder

Inherits:
Object
  • Object
show all
Defined in:
lib/versionius/builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(repository_path, version_file_path) ⇒ Builder

Returns a new instance of Builder.



6
7
8
9
# File 'lib/versionius/builder.rb', line 6

def initialize(repository_path, version_file_path)
  @repository_path = repository_path
  @version_file_path = version_file_path
end

Instance Method Details

#runObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/versionius/builder.rb', line 11

def run
  repo = Grit::Repo.new(@repository_path)

  File.open(File.join(@version_file_path, Versionius::FILE_NAME), "w+") do |file|
    tag = repo.tags.last
    unless tag.nil?
      file.puts "#{Versionius::TAG_TITLE} #{tag.name}"

      commits = between_tags(repo) if repo.tags.size > 1
    end

    (commits || repo.commits).each do |commit|
      file.puts commit.message
    end
  end
end