class Pod::Command::Maven
Attributes
path[RW]
spec[RW]
Public Class Methods
new(argv)
click to toggle source
Calls superclass method
# File lib/cocoapods-uploader/command/maven/maven.rb, line 22 def initialize(argv) @path = argv.shift_argument @spec = argv.shift_argument super end
Public Instance Methods
run()
click to toggle source
# File lib/cocoapods-uploader/command/maven/maven.rb, line 33 def run version = Specification.from_file(@spec).version name = Specification.from_file(@spec).name file_name = "#{name}.zip" compress(@path.dup,file_name) setting = Pod::Setting.new setting.open url = "#{setting.host}#{setting.suffix.gsub('+repo+',setting.repo)}/#{name.downcase}/#{name.downcase}/#{version}/#{file_name.downcase}" puts "Upload url: #{url}" RestClient::Resource.new(url, :user => "#{setting.user}", :password => "#{setting.password}").post(:file => File.new(file_name.downcase)).code end
validate!()
click to toggle source
Calls superclass method
# File lib/cocoapods-uploader/command/maven/maven.rb, line 28 def validate! super help! 'path & spec is required.' unless @path && @spec end
Private Instance Methods
compress(path,file_name)
click to toggle source
# File lib/cocoapods-uploader/command/maven/maven.rb, line 52 def compress(path,file_name) path.sub!(%r[/$],'') archive = File.join(File.dirname(path),file_name) if Pod::Config.instance.verbose? puts "Compress to File #{archive}" end FileUtils.rm archive, :force=>true Zip::OutputStream.open(archive) do |zip| Dir["#{path}/**/**"].reject{|f|f==archive}.each do |file| if Pod::Config.instance.verbose? puts "Deflating #{file}" end entry = Zip::Entry.new("", file) entry.gather_fileinfo_from_srcpath(file) zip.put_next_entry(entry, nil, nil, Zip::Entry::DEFLATED, Zlib::BEST_COMPRESSION) entry.write_to_zip_output_stream(zip) end end end