Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JRuby + bundler + Wildcard SSL cert #4094

Open
jgnagy opened this issue Aug 20, 2016 · 5 comments
Open

JRuby + bundler + Wildcard SSL cert #4094

jgnagy opened this issue Aug 20, 2016 · 5 comments

Comments

@jgnagy
Copy link

jgnagy commented Aug 20, 2016

Environment

Provide at least:

  • JRuby version jruby 9.1.2.0 (2.3.0) 2016-05-26 7357c8f Java HotSpot(TM) 64-Bit Server VM 25.92-b14 on 1.8.0_92-b14 +jit [darwin-x86_64]
    Nothing special in JRUBY_OPTS, though I did have to create a Java keystore for SSL, so I set export SSL_CERT_FILE=~/.keystore where the keystore was created from the system cacerts.pem file (from curl). Without this, I got a different error of OpenSSL::X509::StoreError: setting default path failed: Invalid keystore format
  • OS X and Linux

Other relevant info you may wish to add:

  • Using bundle install to install gems. Gemfile is pretty standard, though I'm including one gem from a private host behind an Apache SSL proxy. This proxy has a wildcard cert which triggers Java to occasionally through SNI-related exceptions. For other Java apps, I've added -Djsse.enableSNIExtension=false, though adding this either using -J or JRUBY_OPTS only yields yet a different exception related to SSL. Will post that exception if necessary / helpful.

Expected Behavior

bundle install behaves the same as using ruby-2.3.1 and works appropriately.

Actual Behavior

$ bundle install --verbose
HTTP GET https://nexus.example.com/content/repositories/example-gems/versions
Bundler::Fetcher::CertificateFailureError: Could not verify the SSL certificate for https://nexus.example.com/content/repositories/example-gems/versions.
There is a chance you are experiencing a man-in-the-middle attack, but most likely your system doesn't have the CA certificates needed for verification. For information about OpenSSL certificates, see http://bit.ly/ruby-ssl. To connect without using SSL, edit your Gemfile sources and change 'https' to 'http'.
/Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/downloader.rb:53:in `request'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/downloader.rb:16:in `fetch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/compact_index.rb:81:in `block in compact_index_client'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/compact_index_client/lib/compact_index_client/updater.rb:42:in `block in update'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/tmpdir.rb:89:in `mktmpdir'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/compact_index_client/lib/compact_index_client/updater.rb:29:in `update'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/compact_index_client/lib/compact_index_client.rb:64:in `update'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/compact_index_client/lib/compact_index_client.rb:55:in `update_and_parse_checksums!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/compact_index.rb:65:in `available?'
  org/jruby/RubyMethod.java:127:in `call'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/compact_index.rb:15:in `block in available?'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:154:in `use_api'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:331:in `block in api_fetchers'
  org/jruby/RubyArray.java:2411:in `select'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:331:in `api_fetchers'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:336:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/bundle:1:in `<eval>'
  org/jruby/RubyKernel.java:983:in `eval'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/jruby_executable_hooks:15:in `<top>'
HTTP GET https://nexus.example.com/content/repositories/example-gems/api/v1/dependencies
Fetching source index from https://nexus.example.com/content/repositories/example-gems/
Gem::RemoteFetcher::FetchError: handshake alert:  unrecognized_name (https://nexus.example.com/content/repositories/example-gems/specs.4.8.gz)
/Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:89:in `connection_for'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:141:in `perform_request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:110:in `fetch'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:378:in `request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:251:in `fetch_http'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:289:in `fetch_path'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:595:in `fetch_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:605:in `fetch_all_remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/index.rb:9:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:125:in `block in specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:124:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:109:in `block in specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:39:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:29:in `attempt'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:108:in `specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:341:in `block in remote_specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:339:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/bundle:1:in `<eval>'
  org/jruby/RubyKernel.java:983:in `eval'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/jruby_executable_hooks:15:in `<top>'
Retrying fetcher due to error (2/4): Bundler::HTTPError Could not fetch specs from https://nexus.example.com/content/repositories/example-gems/
Gem::RemoteFetcher::FetchError: handshake alert:  unrecognized_name (https://nexus.example.com/content/repositories/example-gems/specs.4.8.gz)
/Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:89:in `connection_for'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:141:in `perform_request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:110:in `fetch'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:378:in `request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:251:in `fetch_http'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:289:in `fetch_path'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:595:in `fetch_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:605:in `fetch_all_remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/index.rb:9:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:125:in `block in specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:124:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:109:in `block in specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:39:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:29:in `attempt'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:108:in `specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:341:in `block in remote_specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:339:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/bundle:1:in `<eval>'
  org/jruby/RubyKernel.java:983:in `eval'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/jruby_executable_hooks:15:in `<top>'
Retrying fetcher due to error (3/4): Bundler::HTTPError Could not fetch specs from https://nexus.example.com/content/repositories/example-gems/
Gem::RemoteFetcher::FetchError: handshake alert:  unrecognized_name (https://nexus.example.com/content/repositories/example-gems/specs.4.8.gz)
/Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:89:in `connection_for'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:141:in `perform_request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:110:in `fetch'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:378:in `request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:251:in `fetch_http'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:289:in `fetch_path'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:595:in `fetch_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:605:in `fetch_all_remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/index.rb:9:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:125:in `block in specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:124:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:109:in `block in specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:39:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:29:in `attempt'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:108:in `specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:341:in `block in remote_specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:339:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/bundle:1:in `<eval>'
  org/jruby/RubyKernel.java:983:in `eval'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/jruby_executable_hooks:15:in `<top>'
Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://nexus.example.com/content/repositories/example-gems/
Gem::RemoteFetcher::FetchError: handshake alert:  unrecognized_name (https://nexus.example.com/content/repositories/example-gems/specs.4.8.gz)
/Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:89:in `connection_for'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:141:in `perform_request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:110:in `fetch'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:378:in `request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:251:in `fetch_http'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:289:in `fetch_path'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:595:in `fetch_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:605:in `fetch_all_remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/index.rb:9:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:125:in `block in specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:124:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:109:in `block in specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:39:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:29:in `attempt'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:108:in `specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:341:in `block in remote_specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:339:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/bundle:1:in `<eval>'
  org/jruby/RubyKernel.java:983:in `eval'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/bin/jruby_executable_hooks:15:in `<top>'
Could not fetch specs from
https://nexus.example.com/content/repositories/example-gems/

The cert works fine with curl and openssl s_client.

@jgnagy
Copy link
Author

jgnagy commented Aug 20, 2016

Explicitly added the CA cert retrieved by querying the server directly and still the same error.

-Your keystore contains 93 entries
+Your keystore contains 94 entries

@jgnagy jgnagy closed this as completed Aug 20, 2016
@jgnagy jgnagy reopened this Aug 20, 2016
@jgnagy
Copy link
Author

jgnagy commented Aug 20, 2016

With some additional debugging via jruby -J-Djavax.net.debug=all -S bundle install --verbose, repeats for the various files it tries to download (names changed to protect the innocent):

trigger seeding of SecureRandom
done seeding SecureRandom
Using SSLEngineImpl.
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_anon_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_GCM_SHA384
Allow unsafe renegotiation: false
Allow legacy hello messages: true
Is initial handshake: true
Is secure renegotiation: false
Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
%% No cached client session
*** ClientHello, TLSv1.2
RandomCookie:  GMT: 1454823341 bytes = { 106, 30, 195, 250, 157, 76, 133, 30, 90, 109, 46, 89, 99, 116, 248, 243, 35, 62, 74, 93, 185, 156, 75, 199, 96, 237, 30, 225 }
Session ID:  {}
Cipher Suites: [TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_anon_WITH_AES_128_CBC_SHA, TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA]
Compression Methods:  { 0 }
Extension elliptic_curves, curve names: {secp256r1, sect163k1, sect163r2, secp192r1, secp224r1, sect233k1, sect233r1, sect283k1, sect283r1, secp384r1, sect409k1, sect409r1, secp521r1, sect571k1, sect571r1, secp160k1, secp160r1, secp160r2, sect163r1, secp192k1, sect193r1, sect193r2, secp224k1, sect239k1, secp256k1}
Extension ec_point_formats, formats: [uncompressed]
Extension signature_algorithms, signature_algorithms: SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA224withECDSA, SHA224withRSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA
Extension server_name, server_name: [type=host_name (0), value=nexus.example.com]
Extension renegotiation_info, renegotiated_connection: <empty>
***
[write] MD5 and SHA1 hashes:  len = 213
0000: 01 00 00 D1 03 03 57 B7   D8 AD 6A 1E C3 FA 9D 4C  ......W...j....L
0010: 85 1E 5A 6D 2E 59 63 74   F8 F3 23 3E 4A 5D B9 9C  ..Zm.Yct..#>J]..
0020: 4B C7 60 ED 1E E1 00 00   2C C0 23 C0 27 C0 25 C0  K.`.....,.#.'.%.
0030: 29 C0 09 C0 13 00 2F C0   04 C0 0E 00 33 00 32 C0  )...../.....3.2.
0040: 08 C0 12 00 0A C0 03 C0   0D 00 16 00 13 C0 18 C0  ................
0050: 17 00 09 00 15 01 00 00   7C 00 0A 00 34 00 32 00  ............4.2.
0060: 17 00 01 00 03 00 13 00   15 00 06 00 07 00 09 00  ................
0070: 0A 00 18 00 0B 00 0C 00   19 00 0D 00 0E 00 0F 00  ................
0080: 10 00 11 00 02 00 12 00   04 00 05 00 14 00 08 00  ................
0090: 16 00 0B 00 02 01 00 00   0D 00 18 00 16 06 03 06  ................
00A0: 01 05 03 05 01 04 03 04   01 03 03 03 01 02 03 02  ................
00B0: 01 02 02 00 00 00 19 00   17 00 00 14 6E 65 78 75  ............nexu
00C0: 73 2E 69 6E 74 65 6C 6C   69 73 69 73 2E 63 6F 6D  s.example.com
00D0: FF 01 00 01 00                                     .....
main, WRITE: TLSv1.2 Handshake, length = 213
[Raw write]: length = 218
0000: 16 03 03 00 D5 01 00 00   D1 03 03 57 B7 D8 AD 6A  ...........W...j
0010: 1E C3 FA 9D 4C 85 1E 5A   6D 2E 59 63 74 F8 F3 23  ....L..Zm.Yct..#
0020: 3E 4A 5D B9 9C 4B C7 60   ED 1E E1 00 00 2C C0 23  >J]..K.`.....,.#
0030: C0 27 C0 25 C0 29 C0 09   C0 13 00 2F C0 04 C0 0E  .'.%.)...../....
0040: 00 33 00 32 C0 08 C0 12   00 0A C0 03 C0 0D 00 16  .3.2............
0050: 00 13 C0 18 C0 17 00 09   00 15 01 00 00 7C 00 0A  ................
0060: 00 34 00 32 00 17 00 01   00 03 00 13 00 15 00 06  .4.2............
0070: 00 07 00 09 00 0A 00 18   00 0B 00 0C 00 19 00 0D  ................
0080: 00 0E 00 0F 00 10 00 11   00 02 00 12 00 04 00 05  ................
0090: 00 14 00 08 00 16 00 0B   00 02 01 00 00 0D 00 18  ................
00A0: 00 16 06 03 06 01 05 03   05 01 04 03 04 01 03 03  ................
00B0: 03 01 02 03 02 01 02 02   00 00 00 19 00 17 00 00  ................
00C0: 14 6E 65 78 75 73 2E 69   6E 74 65 6C 6C 69 73 69  .nexus.example.c
00D0: 73 2E 63 6F 6D FF 01 00   01 00                    om........
[Raw read]: length = 5
0000: 15 03 03 00 02                                     .....
[Raw read]: length = 2
0000: 01 70                                              .p
main, READ: TLSv1.2 Alert, length = 2
main, RECV TLSv1.2 ALERT:  warning, unrecognized_name
SSL - handshake alert: unrecognized_name
main, fatal error: 80: problem unwrapping net record
javax.net.ssl.SSLProtocolException: handshake alert:  unrecognized_name
main, SEND TLSv1.2 ALERT:  fatal, description = internal_error
main, WRITE: TLSv1.2 Alert, length = 2
main, called closeOutbound()
main, closeOutboundInternal()
[Raw write]: length = 7
0000: 15 03 03 00 02 02 50                               ......P
main, called closeOutbound()
main, closeOutboundInternal()
Gem::RemoteFetcher::FetchError: handshake alert:  unrecognized_name (https://nexus.example.com/content/repositories/example-gems/specs.4.8.gz)
/Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:89:in `connection_for'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:141:in `perform_request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:110:in `fetch'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:378:in `request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:251:in `fetch_http'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:289:in `fetch_path'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:595:in `fetch_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:605:in `fetch_all_remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/index.rb:9:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:125:in `block in specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:124:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:109:in `block in specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:39:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:29:in `attempt'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:108:in `specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:341:in `block in remote_specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:339:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'
  /Users/jgnagy/Development/web/antaeus-web/bin/bundle:3:in `<top>'
Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://nexus.example.com/content/repositories/example-gems/
trigger seeding of SecureRandom
done seeding SecureRandom
Using SSLEngineImpl.
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_anon_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_GCM_SHA384
Allow unsafe renegotiation: false
Allow legacy hello messages: true
Is initial handshake: true
Is secure renegotiation: false
Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
%% No cached client session
*** ClientHello, TLSv1.2
RandomCookie:  GMT: 1454823342 bytes = { 139, 5, 36, 25, 113, 56, 160, 183, 180, 254, 55, 49, 20, 3, 158, 122, 121, 159, 154, 72, 225, 157, 194, 46, 210, 53, 224, 180 }
Session ID:  {}
Cipher Suites: [TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_anon_WITH_AES_128_CBC_SHA, TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA]
Compression Methods:  { 0 }
Extension elliptic_curves, curve names: {secp256r1, sect163k1, sect163r2, secp192r1, secp224r1, sect233k1, sect233r1, sect283k1, sect283r1, secp384r1, sect409k1, sect409r1, secp521r1, sect571k1, sect571r1, secp160k1, secp160r1, secp160r2, sect163r1, secp192k1, sect193r1, sect193r2, secp224k1, sect239k1, secp256k1}
Extension ec_point_formats, formats: [uncompressed]
Extension signature_algorithms, signature_algorithms: SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA224withECDSA, SHA224withRSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA
Extension server_name, server_name: [type=host_name (0), value=nexus.example.com]
Extension renegotiation_info, renegotiated_connection: <empty>
***
[write] MD5 and SHA1 hashes:  len = 213
0000: 01 00 00 D1 03 03 57 B7   D8 AE 8B 05 24 19 71 38  ......W.....$.q8
0010: A0 B7 B4 FE 37 31 14 03   9E 7A 79 9F 9A 48 E1 9D  ....71...zy..H..
0020: C2 2E D2 35 E0 B4 00 00   2C C0 23 C0 27 C0 25 C0  ...5....,.#.'.%.
0030: 29 C0 09 C0 13 00 2F C0   04 C0 0E 00 33 00 32 C0  )...../.....3.2.
0040: 08 C0 12 00 0A C0 03 C0   0D 00 16 00 13 C0 18 C0  ................
0050: 17 00 09 00 15 01 00 00   7C 00 0A 00 34 00 32 00  ............4.2.
0060: 17 00 01 00 03 00 13 00   15 00 06 00 07 00 09 00  ................
0070: 0A 00 18 00 0B 00 0C 00   19 00 0D 00 0E 00 0F 00  ................
0080: 10 00 11 00 02 00 12 00   04 00 05 00 14 00 08 00  ................
0090: 16 00 0B 00 02 01 00 00   0D 00 18 00 16 06 03 06  ................
00A0: 01 05 03 05 01 04 03 04   01 03 03 03 01 02 03 02  ................
00B0: 01 02 02 00 00 00 19 00   17 00 00 14 6E 65 78 75  ............nexu
00C0: 73 2E 69 6E 74 65 6C 6C   69 73 69 73 2E 63 6F 6D  s.example.com
00D0: FF 01 00 01 00                                     .....
main, WRITE: TLSv1.2 Handshake, length = 213
[Raw write]: length = 218
0000: 16 03 03 00 D5 01 00 00   D1 03 03 57 B7 D8 AE 8B  ...........W....
0010: 05 24 19 71 38 A0 B7 B4   FE 37 31 14 03 9E 7A 79  .$.q8....71...zy
0020: 9F 9A 48 E1 9D C2 2E D2   35 E0 B4 00 00 2C C0 23  ..H.....5....,.#
0030: C0 27 C0 25 C0 29 C0 09   C0 13 00 2F C0 04 C0 0E  .'.%.)...../....
0040: 00 33 00 32 C0 08 C0 12   00 0A C0 03 C0 0D 00 16  .3.2............
0050: 00 13 C0 18 C0 17 00 09   00 15 01 00 00 7C 00 0A  ................
0060: 00 34 00 32 00 17 00 01   00 03 00 13 00 15 00 06  .4.2............
0070: 00 07 00 09 00 0A 00 18   00 0B 00 0C 00 19 00 0D  ................
0080: 00 0E 00 0F 00 10 00 11   00 02 00 12 00 04 00 05  ................
0090: 00 14 00 08 00 16 00 0B   00 02 01 00 00 0D 00 18  ................
00A0: 00 16 06 03 06 01 05 03   05 01 04 03 04 01 03 03  ................
00B0: 03 01 02 03 02 01 02 02   00 00 00 19 00 17 00 00  ................
00C0: 14 6E 65 78 75 73 2E 69   6E 74 65 6C 6C 69 73 69  .nexus.example.c
00D0: 73 2E 63 6F 6D FF 01 00   01 00                    om........
[Raw read]: length = 5
0000: 15 03 03 00 02                                     .....
[Raw read]: length = 2
0000: 01 70                                              .p
main, READ: TLSv1.2 Alert, length = 2
main, RECV TLSv1.2 ALERT:  warning, unrecognized_name
SSL - handshake alert: unrecognized_name
main, fatal error: 80: problem unwrapping net record
javax.net.ssl.SSLProtocolException: handshake alert:  unrecognized_name
main, SEND TLSv1.2 ALERT:  fatal, description = internal_error
main, WRITE: TLSv1.2 Alert, length = 2
main, called closeOutbound()
main, closeOutboundInternal()
[Raw write]: length = 7
0000: 15 03 03 00 02 02 50                               ......P
main, called closeOutbound()
main, closeOutboundInternal()
Gem::RemoteFetcher::FetchError: handshake alert:  unrecognized_name (https://nexus.example.com/content/repositories/example-gems/specs.4.8.gz)
/Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:89:in `connection_for'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:141:in `perform_request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:110:in `fetch'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:378:in `request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:251:in `fetch_http'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:289:in `fetch_path'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:595:in `fetch_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:605:in `fetch_all_remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/index.rb:9:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:125:in `block in specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:124:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:109:in `block in specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:39:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:29:in `attempt'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:108:in `specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:341:in `block in remote_specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:339:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'
  /Users/jgnagy/Development/web/antaeus-web/bin/bundle:3:in `<top>'
Could not fetch specs from
https://nexus.example.com/content/repositories/example-gems/

@jgnagy
Copy link
Author

jgnagy commented Aug 20, 2016

Again, my suspicion is that the issue is related to how the Java SSL negotiation handles wildcard certs / how Apache responds when serving a host with a wildcard cert. lightbody/browsermob-proxy#117 is another project that seemed to have the same issue, along with some kind of fallback.

I'll investigate if there's anything I can do server-side in the meantime, but this seems like a problem with more than just my site(s).

@jgnagy
Copy link
Author

jgnagy commented Aug 20, 2016

Ok, to add some more info to this long issue, after reading a bit and some experimenting, it seems that part of the issue is with my Apache configuration. I made some assumptions about wildcard certs, default vhosts, and CNAMEs that, while they work for actual OpenSSL hosts, behave differently for Java clients. By adding the CNAME to the server aliases, I was able to move on to a different (but still SSL-related and unique to Java / JRuby) error:

Before reading the massive trace, this email thread seems to have the exact same issue at a pure-Java level with a proposed workaround (not sure if it is relevant):

http://mail-archives.apache.org/mod_mbox/cxf-users/201410.mbox/%3CCAB8XdGBEdEx3B7DX44T1++N8h_h39FLbW6_SHRZdZ4DUoc1wrA@mail.gmail.com%3E

And another example on a pure-Java level: https://community.oracle.com/thread/3803053

Here's the relevant part of the error: main, fatal: engine already closed. Rethrowing javax.net.ssl.SSLException: Received fatal alert: handshake_failure

Here's the full stack trace (only the 4th retry shown):

Retrying fetcher due to error (4/4): Bundler::HTTPError Could not fetch specs from https://nexus.example.com/content/repositories/example-gems/
trigger seeding of SecureRandom
done seeding SecureRandom
Using SSLEngineImpl.
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_anon_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDH_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
Ignoring unavailable cipher suite: TLS_DHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
Ignoring unavailable cipher suite: TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
Ignoring unavailable cipher suite: TLS_DH_anon_WITH_AES_256_GCM_SHA384
Allow unsafe renegotiation: false
Allow legacy hello messages: true
Is initial handshake: true
Is secure renegotiation: false
Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv1
Ignoring unsupported cipher suite: TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
Ignoring unsupported cipher suite: TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 for TLSv1.1
%% No cached client session
*** ClientHello, TLSv1.2
RandomCookie:  GMT: 1454871785 bytes = { 27, 214, 219, 157, 108, 1, 176, 162, 153, 124, 125, 78, 28, 176, 54, 111, 221, 60, 82, 117, 2, 30, 167, 83, 147, 185, 43, 217 }
Session ID:  {}
Cipher Suites: [TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDH_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_ECDH_anon_WITH_AES_128_CBC_SHA, TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA, SSL_RSA_WITH_DES_CBC_SHA, SSL_DHE_RSA_WITH_DES_CBC_SHA]
Compression Methods:  { 0 }
Extension elliptic_curves, curve names: {secp256r1, sect163k1, sect163r2, secp192r1, secp224r1, sect233k1, sect233r1, sect283k1, sect283r1, secp384r1, sect409k1, sect409r1, secp521r1, sect571k1, sect571r1, secp160k1, secp160r1, secp160r2, sect163r1, secp192k1, sect193r1, sect193r2, secp224k1, sect239k1, secp256k1}
Extension ec_point_formats, formats: [uncompressed]
Extension signature_algorithms, signature_algorithms: SHA512withECDSA, SHA512withRSA, SHA384withECDSA, SHA384withRSA, SHA256withECDSA, SHA256withRSA, SHA224withECDSA, SHA224withRSA, SHA1withECDSA, SHA1withRSA, SHA1withDSA
Extension server_name, server_name: [type=host_name (0), value=nexus.intellisis.com]
Extension renegotiation_info, renegotiated_connection: <empty>
***
[write] MD5 and SHA1 hashes:  len = 213
0000: 01 00 00 D1 03 03 57 B8   95 E9 1B D6 DB 9D 6C 01  ......W.......l.
0010: B0 A2 99 7C 7D 4E 1C B0   36 6F DD 3C 52 75 02 1E  .....N..6o.<Ru..
0020: A7 53 93 B9 2B D9 00 00   2C C0 23 C0 27 C0 25 C0  .S..+...,.#.'.%.
0030: 29 C0 09 C0 13 00 2F C0   04 C0 0E 00 33 00 32 C0  )...../.....3.2.
0040: 08 C0 12 00 0A C0 03 C0   0D 00 16 00 13 C0 18 C0  ................
0050: 17 00 09 00 15 01 00 00   7C 00 0A 00 34 00 32 00  ............4.2.
0060: 17 00 01 00 03 00 13 00   15 00 06 00 07 00 09 00  ................
0070: 0A 00 18 00 0B 00 0C 00   19 00 0D 00 0E 00 0F 00  ................
0080: 10 00 11 00 02 00 12 00   04 00 05 00 14 00 08 00  ................
0090: 16 00 0B 00 02 01 00 00   0D 00 18 00 16 06 03 06  ................
00A0: 01 05 03 05 01 04 03 04   01 03 03 03 01 02 03 02  ................
00B0: 01 02 02 00 00 00 19 00   17 00 00 14 6E 65 78 75  ............nexu
00C0: 73 2E 69 6E 74 65 6C 6C   69 73 69 73 2E 63 6F 6D  s.example.com
00D0: FF 01 00 01 00                                     .....
main, WRITE: TLSv1.2 Handshake, length = 213
[Raw write]: length = 218
0000: 16 03 03 00 D5 01 00 00   D1 03 03 57 B8 95 E9 1B  ...........W....
0010: D6 DB 9D 6C 01 B0 A2 99   7C 7D 4E 1C B0 36 6F DD  ...l......N..6o.
0020: 3C 52 75 02 1E A7 53 93   B9 2B D9 00 00 2C C0 23  <Ru...S..+...,.#
0030: C0 27 C0 25 C0 29 C0 09   C0 13 00 2F C0 04 C0 0E  .'.%.)...../....
0040: 00 33 00 32 C0 08 C0 12   00 0A C0 03 C0 0D 00 16  .3.2............
0050: 00 13 C0 18 C0 17 00 09   00 15 01 00 00 7C 00 0A  ................
0060: 00 34 00 32 00 17 00 01   00 03 00 13 00 15 00 06  .4.2............
0070: 00 07 00 09 00 0A 00 18   00 0B 00 0C 00 19 00 0D  ................
0080: 00 0E 00 0F 00 10 00 11   00 02 00 12 00 04 00 05  ................
0090: 00 14 00 08 00 16 00 0B   00 02 01 00 00 0D 00 18  ................
00A0: 00 16 06 03 06 01 05 03   05 01 04 03 04 01 03 03  ................
00B0: 03 01 02 03 02 01 02 02   00 00 00 19 00 17 00 00  ................
00C0: 14 6E 65 78 75 73 2E 69   6E 74 65 6C 6C 69 73 69  .nexus.example
00D0: 73 2E 63 6F 6D FF 01 00   01 00                    s.com.....
[Raw read]: length = 5
0000: 15 03 03 00 02                                     .....
[Raw read]: length = 2
0000: 02 28                                              .(
main, READ: TLSv1.2 Alert, length = 2
main, RECV TLSv1.2 ALERT:  fatal, handshake_failure
main, fatal: engine already closed.  Rethrowing javax.net.ssl.SSLException: Received fatal alert: handshake_failure
main, fatal: engine already closed.  Rethrowing javax.net.ssl.SSLException: Received fatal alert: handshake_failure
main, called closeOutbound()
main, closeOutboundInternal()
main, SEND TLSv1.2 ALERT:  warning, description = close_notify
main, WRITE: TLSv1.2 Alert, length = 2
[Raw write]: length = 7
0000: 15 03 03 00 02 01 00                               .......
main, called closeOutbound()
main, closeOutboundInternal()
Gem::RemoteFetcher::FetchError: Received fatal alert: handshake_failure (https://nexus.example.com/content/repositories/example-gems/specs.4.8.gz)
/Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:89:in `connection_for'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:141:in `perform_request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/request.rb:110:in `fetch'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:378:in `request'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:251:in `fetch_http'
  /Users/jgnagy/.rvm/rubies/jruby-9.1.2.0/lib/ruby/stdlib/rubygems/remote_fetcher.rb:289:in `fetch_path'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:595:in `fetch_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/rubygems_integration.rb:605:in `fetch_all_remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher/index.rb:9:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:125:in `block in specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:124:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:109:in `block in specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:39:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/retry.rb:29:in `attempt'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/fetcher.rb:108:in `specs_with_retry'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:341:in `block in remote_specs'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:339:in `block in remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:335:in `remote_specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/source/rubygems.rb:82:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:211:in `block in index'
  org/jruby/RubyArray.java:1593:in `each'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:209:in `block in index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/index.rb:10:in `build'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:206:in `index'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:200:in `resolve'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:140:in `specs'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/definition.rb:129:in `resolve_remotely!'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:195:in `resolve_if_need'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:70:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/installer.rb:22:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli/install.rb:102:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:175:in `install'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/cli.rb:11:in `start'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:27:in `block in (root)'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/lib/bundler/friendly_errors.rb:98:in `with_friendly_errors'
  /Users/jgnagy/.rvm/gems/jruby-9.1.2.0/gems/bundler-1.12.5/exe/bundle:19:in `<top>'
  org/jruby/RubyKernel.java:962:in `load'

@jgnagy
Copy link
Author

jgnagy commented Sep 6, 2016

Tried with 9.1.4.0 just to test. Here is a very simple test that demonstrates the problem:

$ irb
jruby-9.1.4.0 :001 > require 'openssl'
 => true
jruby-9.1.4.0 :002 > require 'net/http'
 => true
jruby-9.1.4.0 :003 > require 'uri'
 => false
jruby-9.1.4.0 :004 > Net::HTTP.get URI('https://nexus.example.com/content/repositories/example-gems/')
OpenSSL::SSL::SSLError: Received fatal alert: handshake_failure
    from org/jruby/ext/openssl/SSLSocket.java:227:in `connect_nonblock'
    from /Users/jgnagy/.rvm/rubies/jruby-9.1.4.0/lib/ruby/stdlib/net/http.rb:938:in `connect'
    from /Users/jgnagy/.rvm/rubies/jruby-9.1.4.0/lib/ruby/stdlib/net/http.rb:868:in `do_start'
    from /Users/jgnagy/.rvm/rubies/jruby-9.1.4.0/lib/ruby/stdlib/net/http.rb:857:in `start'
    from /Users/jgnagy/.rvm/rubies/jruby-9.1.4.0/lib/ruby/stdlib/net/http.rb:585:in `start'
    from /Users/jgnagy/.rvm/rubies/jruby-9.1.4.0/lib/ruby/stdlib/net/http.rb:480:in `get_response'
    from /Users/jgnagy/.rvm/rubies/jruby-9.1.4.0/lib/ruby/stdlib/net/http.rb:457:in `get'
    from (irb):4:in `<eval>'
    from org/jruby/RubyKernel.java:994:in `eval'
    from org/jruby/RubyKernel.java:1295:in `loop'
    from org/jruby/RubyKernel.java:1114:in `catch'
    from org/jruby/RubyKernel.java:1114:in `catch'
    from /Users/jgnagy/.rvm/rubies/jruby-9.1.4.0/bin/jirb:13:in `<main>'
jruby-9.1.4.0 :005 > exit
$ rvm use ruby-2.3.1
Using /Users/jgnagy/.rvm/gems/ruby-2.3.1
$ irb
2.3.1 :001 > require 'openssl'
 => true
2.3.1 :002 > require 'net/http'
 => true
2.3.1 :003 > require 'uri'
 => false
2.3.1 :004 > Net::HTTP.get URI('https://nexus.example.com/content/repositories/example-gems/')
 => "<html>\n  <head>\n
...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant