Class: Milestoner::Tags::Publisher

Inherits:
Object
  • Object
show all
Defined in:
lib/milestoner/tags/publisher.rb

Overview

Handles the tagging and pushing of a tag to a remote repository.

Instance Method Summary collapse

Constructor Details

#initialize(creator: Tags::Creator.new, pusher: Tags::Pusher.new) ⇒ Publisher

Returns a new instance of Publisher.



12
13
14
15
16
# File 'lib/milestoner/tags/publisher.rb', line 12

def initialize(creator: Tags::Creator.new, pusher: Tags::Pusher.new, **)
  super(**)
  @creator = creator
  @pusher = pusher
end

Instance Method Details

#call(version) ⇒ Object



18
19
20
21
22
# File 'lib/milestoner/tags/publisher.rb', line 18

def call version
  creator.call(version)
         .bind { pusher.call version }
         .bind { log_info version }
end