diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2016-10-26 18:29:09 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2016-11-06 20:50:57 +0900 |
commit | bfe5c5dc3a1a4906016b6e387dee04f94f6ca9c9 (patch) | |
tree | 9e3bc33b05ad140c6ae7807109382837d4f1e90e /Rakefile | |
parent | 3f23a129fcc52a56a2a34739d6f3cfb9a75766d4 (diff) | |
download | ruby-openssl-bfe5c5dc3a1a4906016b6e387dee04f94f6ca9c9.tar.gz |
Add install_dependencies rake task that installs testing dependenciestopic/rake-install-dependencies
Parse the dependency gems from openssl.gemspec and install them. This is
extracted from tool/ruby-openssl-docker/init.sh.
.travis.yml, appveyor.yml and CONTRIBUTING.md are also updated to use
the new task.
Diffstat (limited to 'Rakefile')
-rw-r--r-- | Rakefile | 25 |
1 files changed, 21 insertions, 4 deletions
@@ -1,11 +1,14 @@ -gem 'rake-compiler' - require 'rake' -require 'rake/extensiontask' require 'rake/testtask' require 'rdoc/task' -Rake::ExtensionTask.new('openssl') +begin + require 'rake/extensiontask' + Rake::ExtensionTask.new('openssl') +rescue LoadError + warn "rake-compiler not installed. Run 'rake install_dependencies' to " \ + "install testing dependency gems." +end Rake::TestTask.new do |t| t.libs << 'test' @@ -22,6 +25,20 @@ task :debug do ruby "-I./lib -ropenssl -ve'puts OpenSSL::OPENSSL_VERSION, OpenSSL::OPENSSL_LIBRARY_VERSION'" end +task :install_dependencies do + if ENV["USE_HTTP_RUBYGEMS_ORG"] == "1" + Gem.sources.replace([Gem::Source.new("http://rubygems.org")]) + end + + Gem.configuration.verbose = false + gemspec = eval(File.read("openssl.gemspec")) + gemspec.development_dependencies.each do |dep| + print "Installing #{dep.name} (#{dep.requirement}) ... " + gem = Gem.install(dep.name, dep.requirement, force: true) + puts "#{gem[0].version}" + end +end + namespace :sync do task :from_ruby do sh "./tool/sync-with-trunk" |