class Milestoner::Builders::Manifest
Builds JSON manifest.
Attributes
Public Class Methods
Source
# File lib/milestoner/builders/manifest.rb, line 12 def initialize(writer: Tags::Manifest.new, path_resolver: PathResolver, **) super(**) @writer = writer @path_resolver = path_resolver end
Calls superclass method
Public Instance Methods
Source
# File lib/milestoner/builders/manifest.rb, line 18 def call return Success writer.build_path unless settings.build_manifest git.tags.either -> tags { write tags }, -> message { failure message } end
Private Instance Methods
Source
# File lib/milestoner/builders/manifest.rb, line 35 def failure message logger.error { message } Failure message end
Source
# File lib/milestoner/builders/manifest.rb, line 28 def write tags path_resolver.call writer.build_path, logger: do versions = tags.map(&:version) writer.write latest: versions.last, versions: end end