Class | Gem::Commands::BuildCommand |
In: |
lib/rubygems/commands/build_command.rb
|
Parent: | Gem::Command |
# File lib/rubygems/commands/build_command.rb, line 6 6: def initialize 7: super 'build', 'Build a gem from a gemspec' 8: 9: add_option '--force', 'skip validation of the spec' do |value, options| 10: options[:force] = true 11: end 12: end
# File lib/rubygems/commands/build_command.rb, line 22 22: def execute 23: gemspec = get_one_gem_name 24: 25: if File.exist? gemspec 26: spec = load_gemspec gemspec 27: 28: if spec then 29: Gem::Builder.new(spec).build options[:force] 30: else 31: alert_error "Error loading gemspec. Aborting." 32: terminate_interaction 1 33: end 34: else 35: alert_error "Gemspec file not found: #{gemspec}" 36: terminate_interaction 1 37: end 38: end
# File lib/rubygems/commands/build_command.rb, line 40 40: def load_gemspec filename 41: if yaml?(filename) 42: open(filename) do |f| 43: begin 44: Gem::Specification.from_yaml(f) 45: rescue Gem::EndOfYAMLException 46: nil 47: end 48: end 49: else 50: Gem::Specification.load(filename) # can return nil 51: end 52: end