Server IP : 66.29.132.122 / Your IP : 3.145.102.72 Web Server : LiteSpeed System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : admazpex ( 531) PHP Version : 7.2.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/thread-self/root/proc/thread-self/root/opt/alt/ruby20/lib64/ruby/2.0.0/rubygems/commands/ |
Upload File : |
require 'rubygems/command' require 'rubygems/local_remote_options' require 'rubygems/gemcutter_utilities' class Gem::Commands::OwnerCommand < Gem::Command include Gem::LocalRemoteOptions include Gem::GemcutterUtilities def description # :nodoc: 'Manage gem owners on RubyGems.org.' end def arguments # :nodoc: "GEM gem to manage owners for" end def usage # :nodoc: "#{program_name} GEM" end def initialize super 'owner', description add_proxy_option add_key_option defaults.merge! :add => [], :remove => [] add_option '-a', '--add EMAIL', 'Add an owner' do |value, options| options[:add] << value end add_option '-r', '--remove EMAIL', 'Remove an owner' do |value, options| options[:remove] << value end end def execute sign_in name = get_one_gem_name add_owners name, options[:add] remove_owners name, options[:remove] show_owners name end def show_owners name response = rubygems_api_request :get, "api/v1/gems/#{name}/owners.yaml" do |request| request.add_field "Authorization", api_key end with_response response do |resp| owners = YAML.load resp.body say "Owners for gem: #{name}" owners.each do |owner| say "- #{owner['email']}" end end end def add_owners name, owners manage_owners :post, name, owners end def remove_owners name, owners manage_owners :delete, name, owners end def manage_owners method, name, owners owners.each do |owner| begin response = rubygems_api_request method, "api/v1/gems/#{name}/owners" do |request| request.set_form_data 'email' => owner request.add_field "Authorization", api_key end with_response response, "Removing #{owner}" rescue # ignore end end end end