1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
require "rubygems"
require "rake"
require "rake/clean"
require "rdoc/task"
require "bundler/gem_tasks"
desc "When releasing make sure NET_SSH_BUILDGEM_SIGNED is set"
task :check_NET_SSH_BUILDGEM_SIGNED do
raise "NET_SSH_BUILDGEM_SIGNED should be set to release" unless ENV['NET_SSH_BUILDGEM_SIGNED']
end
Rake::Task[:release].enhance [:check_NET_SSH_BUILDGEM_SIGNED]
Rake::Task[:release].prerequisites.unshift(:check_NET_SSH_BUILDGEM_SIGNED)
task default: ["build"]
CLEAN.include [ 'pkg', 'rdoc' ]
name = "net-scp"
require_relative "lib/net/scp/version"
version = Net::SCP::Version::CURRENT
namespace :cert do
desc "Update public cert from private - only run if public is expired"
task :update_public_when_expired do
require 'openssl'
require 'time'
raw = File.read "net-scp-public_cert.pem"
certificate = OpenSSL::X509::Certificate.new raw
raise Exception, "Not yet expired: #{certificate.not_after}" unless certificate.not_after < Time.now
sh "gem cert --build netssh@solutious.com --days 365*5 --private-key /mnt/gem/net-ssh-private_key.pem"
sh "mv gem-public_cert.pem net-scp-public_cert.pem"
sh "gem cert --add net-scp-public_cert.pem"
end
end
if false
begin
require "jeweler"
Jeweler::Tasks.new do |s|
s.version = version
s.name = name
s.summary = "A pure Ruby implementation of the SCP client protocol"
s.description = s.summary
s.email = "net-ssh@solutious.com"
s.homepage = "https://github.com/net-ssh/net-scp"
s.authors = ["Jamis Buck", "Delano Mandelbaum"]
s.add_dependency 'net-ssh', ">=2.6.5"
s.add_development_dependency 'test-unit'
s.add_development_dependency 'mocha'
s.license = "MIT"
s.signing_key = File.join('/mnt/gem/', 'gem-private_key.pem')
s.cert_chain = ['gem-public_cert.pem']
end
Jeweler::GemcutterTasks.new
rescue LoadError
puts "Jeweler (or a dependency) not available. Install it with: sudo gem install jeweler"
end
end
require 'rake/testtask'
Rake::TestTask.new do |t|
t.libs = ["lib", "test"]
end
extra_files = %w[LICENSE.txt THANKS.txt CHANGES.txt ]
RDoc::Task.new do |rdoc|
rdoc.rdoc_dir = "rdoc"
rdoc.title = "#{name} #{version}"
rdoc.generator = 'hanna' # gem install hanna-nouveau
rdoc.main = 'README.rdoc'
rdoc.rdoc_files.include("README*")
rdoc.rdoc_files.include("bin/*.rb")
rdoc.rdoc_files.include("lib/**/*.rb")
extra_files.each { |file|
rdoc.rdoc_files.include(file) if File.exists?(file)
}
end
|