mirror of
https://github.com/seejohnrun/haste-client.git
synced 2025-12-15 16:25:57 +00:00
* adding basic http authentication * updating ruby style * SSL support, variable name corrections
41 lines
811 B
Ruby
41 lines
811 B
Ruby
module Haste
|
|
|
|
class CLI
|
|
|
|
# Create a new uploader
|
|
def initialize
|
|
@uploader = Uploader.new(
|
|
ENV['HASTE_SERVER'],
|
|
ENV['HASTE_USER'],
|
|
ENV['HASTE_PASS'],
|
|
ENV['HASTE_SSL_CERTS'])
|
|
end
|
|
|
|
# And then handle the basic usage
|
|
def start
|
|
# Take data in
|
|
if STDIN.tty?
|
|
key = @uploader.upload_path ARGV.first
|
|
else
|
|
key = @uploader.upload_raw STDIN.readlines.join
|
|
end
|
|
# Put together a URL
|
|
if ARGV.include?('--raw')
|
|
url = "#{@uploader.server_url}/raw/#{key}"
|
|
else
|
|
url = "#{@uploader.server_url}/#{key}"
|
|
end
|
|
# And write data out
|
|
if STDOUT.tty?
|
|
STDOUT.puts url
|
|
else
|
|
STDOUT.print url
|
|
end
|
|
rescue Exception => e
|
|
abort e.message
|
|
end
|
|
|
|
end
|
|
|
|
end
|