require 'rubygems'
require 'rake'

begin
  require 'jeweler'
  Jeweler::Tasks.new do |gem|
    gem.name = "filezor"
    gem.summary = %Q{pure ruby file sync}
    gem.description = %Q{pure ruby file sync}
    gem.email = "kyle@kylemaxwell.com"
    gem.homepage = "http://github.com/fizx/filezor"
    gem.authors = ["Kyle Maxwell"]
    gem.add_dependency "trollop"
    gem.add_dependency "rest-client", "~> 1.3"
    gem.add_development_dependency "rspec", ">= 1.2.9"
    # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
  end
  Jeweler::GemcutterTasks.new
rescue LoadError
  puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
end

def sys(s);puts s; system s; end

require 'spec/rake/spectask'
Spec::Rake::SpecTask.new(:spec) do |spec|
  spec.libs << 'lib' << 'spec'
  spec.spec_files = FileList['spec/**/*_spec.rb']
end

Spec::Rake::SpecTask.new(:rcov) do |spec|
  spec.libs << 'lib' << 'spec'
  spec.pattern = 'spec/**/*_spec.rb'
  spec.rcov = true
end

task :spec => :check_dependencies

task :default => :spec
 
task :push => :build do
  abort "No HOST" unless ENV["HOST"]
  version = File.exist?('VERSION') ? File.read('VERSION').strip : ""
  sys "scp pkg/filezor-#{version}.gem #{ENV["HOST"]}:~"
  sys "ssh #{ENV["HOST"]} 'sudo gem install filezor-#{version}.gem'"
end

require 'rake/rdoctask'
Rake::RDocTask.new do |rdoc|
  version = File.exist?('VERSION') ? File.read('VERSION') : ""

  rdoc.rdoc_dir = 'rdoc'
  rdoc.title = "filezor #{version}"
  rdoc.rdoc_files.include('README*')
  rdoc.rdoc_files.include('lib/**/*.rb')
end