summaryrefslogtreecommitdiff
path: root/lib/rubygems/commands/push_command.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems/commands/push_command.rb')
-rw-r--r--lib/rubygems/commands/push_command.rb13
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/rubygems/commands/push_command.rb b/lib/rubygems/commands/push_command.rb
index b90be7bd10..6899b489ad 100644
--- a/lib/rubygems/commands/push_command.rb
+++ b/lib/rubygems/commands/push_command.rb
@@ -69,13 +69,18 @@ You can upgrade or downgrade to the latest release version with:
terminate_interaction 1
end
+ gem_data = Gem::Package.new(name)
+
unless @host then
- if gem_data = Gem::Package.new(name) then
- @host = gem_data.spec.metadata['default_gem_server']
- end
+ @host = gem_data.spec.metadata['default_gem_server']
end
- args << @host if @host
+ # Always include this, even if it's nil
+ args << @host
+
+ if gem_data.spec.metadata.has_key?('allowed_push_host')
+ args << gem_data.spec.metadata['allowed_push_host']
+ end
say "Pushing gem to #{@host || Gem.host}..."