Sha256: 850b41c3340b7a63b83d5c76ab43416d6dd976f7e1c535164c9b77e1399c986c

Contents?: true

Size: 670 Bytes

Versions: 70

Compression:

Stored size: 670 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]
    }

    # Publish the gem.
    #
    # Supported options:
    #   :as - specify a shared account to publish the gem (Gemfury only)
    def push(gem, method, options = {})
      push_command = PUSH_METHODS[method.to_s] or raise "Unknown Gem push method #{method.inspect}."
      push_command += [gem]
      push_command += ["--as", options[:as]] if options[:as]
      @cli_facade.execute *push_command
    end
  end
end

Version data entries

70 entries across 66 versions & 18 rubygems

Version Path
able-neo4j-1.0.0 vendor/bundle/jruby/1.9/gems/gem_publisher-1.5.0/lib/gem_publisher/pusher.rb
logstash-input-beats-2.0.2 vendor/jruby/1.9/gems/logstash-codec-json-2.0.3/vendor/gems/gem_publisher-1.5.0/lib/gem_publisher/pusher.rb
logstash-input-beats-2.0.2 vendor/jruby/1.9/gems/gem_publisher-1.5.0/lib/gem_publisher/pusher.rb
logstash-codec-json-2.0.3 vendor/gems/gem_publisher-1.5.0/lib/gem_publisher/pusher.rb
logstash-input-beats-0.9.2 vendor/jruby/1.9/gems/gem_publisher-1.5.0/lib/gem_publisher/pusher.rb
logstash-input-beats-0.9.1 vendor/jruby/1.9/gems/gem_publisher-1.5.0/lib/gem_publisher/pusher.rb
gem_publisher-1.5.0 lib/gem_publisher/pusher.rb
gem_publisher-1.4.2 lib/gem_publisher/pusher.rb
gem_publisher-1.4.1 lib/gem_publisher/pusher.rb
gem_publisher-1.4.0 lib/gem_publisher/pusher.rb