Sha256: fd536194b7fe37185c86904e31aa8f6c1dc45ef1adf47f9aff23b665c513c14a

Contents?: true

Size: 441 Bytes

Versions: 5

Compression:

Stored size: 441 Bytes

Contents

require "gem_publisher/cli_facade"

module GemPublisher
  class Pusher
    def initialize(cli_facade = CliFacade.new)
      @cli_facade = cli_facade
    end

    PUSH_METHODS = {
      :rubygems => %w[gem push],
      :gemfury  => %w[fury push]
    }

    def push(gem, method)
      push_command = PUSH_METHODS[method] or raise "Unknown Gem push method #{method.inspect}."
      @cli_facade.execute *push_command + [gem]
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
gem_publisher-1.0.0 lib/gem_publisher/pusher.rb
gem_publisher-0.0.4 lib/gem_publisher/pusher.rb
gem_publisher-0.0.3 lib/gem_publisher/pusher.rb
gem_publisher-0.0.2 lib/gem_publisher/pusher.rb
gem_publisher-0.0.1 lib/gem_publisher/pusher.rb