diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2021-06-25 20:27:14 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2021-06-25 20:27:14 +0900 |
commit | 47283d91614ab799dc2347c37885a37f1b91afcb (patch) | |
tree | 5858b9d87e9eb4fff7ef9cb2d131d95f4c3c0f2a | |
parent | 69786e3a666b79c64e0109fa2282ecd359ad4de5 (diff) | |
download | ruby-openssl-47283d91614ab799dc2347c37885a37f1b91afcb.tar.gz |
use Bundler for dependency management and Rake gem tasks
Back in 2016, we chose not to use Bundler in Ruby/OpenSSL development
because Bundler depended on openssl and could not be used for testing
openssl itself - "bundle exec rake test" would end up with loading two
different versions of openssl at the same time.
This has been resolved long time ago. We can now safely use it for
development dependency management and for Rake tasks.
-rw-r--r-- | .github/workflows/test.yml | 6 | ||||
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | Gemfile | 8 | ||||
-rw-r--r-- | Rakefile | 24 | ||||
-rw-r--r-- | openssl.gemspec | 5 |
5 files changed, 15 insertions, 30 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7d9dfb2b..0c2a09a6 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,7 +22,7 @@ jobs: ruby-version: ${{ matrix.ruby }} - name: depends - run: rake install_dependencies + run: bundle install - name: compile run: rake compile -- --enable-debug @@ -50,7 +50,7 @@ jobs: mingw: _upgrade_ openssl - name: depends - run: rake install_dependencies + run: bundle install # pkg-config is disabled because it can pick up the different OpenSSL installation # SSL_DIR is set as needed by MSP-Greg/setup-ruby-pkgs @@ -110,7 +110,7 @@ jobs: ruby-version: ${{ matrix.ruby }} - name: depends - run: rake install_dependencies + run: bundle install - name: compile run: rake compile -- --enable-debug --with-openssl-dir=$HOME/.openssl/${{ matrix.openssl }} @@ -1,3 +1,5 @@ +/.bundle +/Gemfile.lock /doc/ /pkg/ /tmp/ diff --git a/Gemfile b/Gemfile new file mode 100644 index 00000000..df5b0b42 --- /dev/null +++ b/Gemfile @@ -0,0 +1,8 @@ +source "https://rubygems.org" + +gemspec + +gem "rake" +gem "rake-compiler" +gem "test-unit", "~> 3.0" +gem "rdoc" @@ -1,12 +1,12 @@ -require 'rake' require 'rake/testtask' require 'rdoc/task' +require 'bundler/gem_tasks' begin require 'rake/extensiontask' Rake::ExtensionTask.new('openssl') rescue LoadError - warn "rake-compiler not installed. Run 'rake install_dependencies' to " \ + warn "rake-compiler not installed. Run 'bundle install' to " \ "install testing dependency gems." end @@ -26,26 +26,6 @@ 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 = Gem::Specification.load('openssl.gemspec') - - gemspec.development_dependencies.each do |dep| - print "Installing #{dep.name} (#{dep.requirement}) ... " - installed = dep.matching_specs - if installed.empty? - installed = Gem.install(dep.name, dep.requirement) - puts "#{installed[0].version}" - else - puts "(found #{installed[0].version})" - end - end -end - namespace :sync do task :from_ruby do sh "./tool/sync-with-trunk" diff --git a/openssl.gemspec b/openssl.gemspec index 471a3c42..f178e702 100644 --- a/openssl.gemspec +++ b/openssl.gemspec @@ -17,10 +17,5 @@ Gem::Specification.new do |spec| spec.required_ruby_version = ">= 2.3.0" - spec.add_development_dependency "rake" - spec.add_development_dependency "rake-compiler" - spec.add_development_dependency "test-unit", "~> 3.0" - spec.add_development_dependency "rdoc" - spec.metadata["msys2_mingw_dependencies"] = "openssl" end |