fastlane: Connection reset by peer

New Issue Checklist

While attempting to use match in my workflow, I am getting a "connection reset by peer error.

Complete output when running fastlane, including the stack trace and command used
+-----------------------+-----------------------------------------------+
|                        Summary for match 0.8.1                        |
+-----------------------+-----------------------------------------------+
| git_url               | git@gitlab.com:thecb4/XXXXXX.git |
| app_identifier        | io.thecb4.XXXXXX                |
| type                  | appstore                                      |
| verbose               | true                                          |
| git_branch            | master                                        |
| username              | cavelle@XXXXX                            |
| keychain_name         | login.keychain                                |
| readonly              | false                                         |
| team_id               | XXXXXX                                    |
| force                 | false                                         |
| shallow_clone         | false                                         |
| force_for_new_devices | false                                         |
| skip_docs             | false                                         |
+-----------------------+-----------------------------------------------+
INFO [2016-10-14 16:52:47.88]: Cloning remote git repo...
INFO [2016-10-14 16:52:47.89]: $ GIT_TERMINAL_PROMPT=0 git clone 'git@gitlab.com:thecb4/FastlaneMatchTheCB4.git' '/var/folders/yh/rbjzzgk50b7f5g8pnyrntf8r0000gn/T/d20161014-9928-1ycj0u6'
INFO [2016-10-14 16:52:47.91]: ▸ Cloning into '/var/folders/yh/rbjzzgk50b7f5g8pnyrntf8r0000gn/T/d20161014-9928-1ycj0u6'...
INFO [2016-10-14 16:52:49.50]: ▸ remote: Counting objects: 57, done.
INFO [2016-10-14 16:52:49.69]: ▸ remote: Compressing objects: 100% (53/53), done.
INFO [2016-10-14 16:52:49.84]: ▸ remote: Total 57 (delta 4), reused 0 (delta 0)
INFO [2016-10-14 16:52:49.84]: ▸ Receiving objects: 100% (57/57), 102.94 KiB | 0 bytes/s, done.
INFO [2016-10-14 16:52:49.84]: ▸ Resolving deltas: 100% (4/4), done.
INFO [2016-10-14 16:52:49.85]: ▸ Checking connectivity... done.
INFO [2016-10-14 16:52:49.97]: 🔓  Decrypted '--------.cer'
INFO [2016-10-14 16:52:50.06]: 🔓  Decrypted '--------.cer'
INFO [2016-10-14 16:52:50.15]: 🔓  Decrypted '--------.p12'
INFO [2016-10-14 16:52:50.25]: 🔓  Decrypted '--------.p12'
INFO [2016-10-14 16:52:50.34]: 🔓  Decrypted 'AppStore_io.thecb4.----.mobileprovision'
INFO [2016-10-14 16:52:50.43]: 🔓  Decrypted 'AppStore_io.thecb4.----.mobileprovision'
INFO [2016-10-14 16:52:50.52]: 🔓  Decrypted 'Development_io.thecb4.----.mobileprovision'
INFO [2016-10-14 16:52:50.62]: 🔓  Decrypted 'Development_io.thecb4.----.mobileprovision'
INFO [2016-10-14 16:52:50.62]: 🔓  Successfully decrypted certificates repo
INFO [2016-10-14 16:52:50.69]: Verifying that the certificate and profile are still valid on the Dev Portal...
INFO [2016-10-14 16:53:05.22]: 🔒  Successfully encrypted certificates repo
INFO [2016-10-14 16:53:05.23]: -------------------
INFO [2016-10-14 16:53:05.23]: --- Step: slack ---
INFO [2016-10-14 16:53:05.23]: -------------------
INFO [2016-10-14 16:53:05.68]: Successfully sent Slack notification
WARN [2016-10-14 16:53:05.68]: Variable Dump:
INFO [2016-10-14 16:53:05.68]: {:DEFAULT_PLATFORM=>:ios, :PLATFORM_NAME=>:ios, :LANE_NAME=>"ios release_internal_beta", :GIT_REPO_WAS_CLEAN_ON_START=>true}
ERROR [2016-10-14 16:53:05.68]: Connection reset by peer - SSL_connect

Configuration Files

Please copy the complete content of your Fastfile and any other configuration files you use below:

Fastfile:

  lane :bootstrap_provisions do |options|

    provision_type = "development"

    if options[:type] != nil
      provision_type = options[:type]
    end

    match(
      git_url: "git@gitlab.com:thecb4/----.git",
      app_identifier: "io.thecb4.----,
      type: provision_type,
      # readonly: true
      verbose: true
    )
  end

Environment

fastlane version (run fastlane -v): fastlane 1.105.2 match 0.8.1

Do you use bundler to execute fastlane (i.e. bundle exec fastlane)? yes

Do you use a Ruby environment manager (e.g. chruby, rbenv, rvm)? no

What Xcode version do you use (e.g. 7.3, 8.0) 8.0

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Reactions: 22
  • Comments: 109 (15 by maintainers)

Most upvoted comments

Thanks for the fix!

brew install ruby
gem install fastlane

got me back in business

ok, i got it. brew uninstall ruby # not using homebrew’s ruby

rm -rf ~/.gem rm -rf ~/.gems rm -rf ~/.rbenv brew install rbenv ruby-built

Add rbenv to bash so that it loads every time you open a terminal

echo ‘if which rbenv > /dev/null; then eval “$(rbenv init -)”; fi’ >> ~/.bash_profile source ~/.bash_profile

Install Ruby

rbenv install 2.3.1 rbenv global 2.3.1

close teminal and re-open it

ruby -v # should output 2.3.1 now sudo chown -R $(whoami): ~/.rbenv # important!!! gem update --system gem install fastlane # this will install a lot of gems, since we are not using the old 2.0.0 gems anymore.

Thanks @zineer for providing a solution, could everyone try the following and let us know if that fixes the issue for you?

brew install ruby
gem install fastlane

If so, we’ll update fastlane, to properly catch the error, and tell the user to run the above shown command.

Hey everyone, we’ve been working on a new way to install and use fastlane, all you have to do is to download fastlane.zip and double click the install file. This will install fastlane with all its Ruby and OpenSSL dependencies, and should all work out of the box. We just finished building this, and would love your early feedback on this beta. Please let us know how it works for you and if you run into any problems 👍 Download the latest version here.

Same here, I just update my ruby version via rbenv:

brew update
brew install rbenv
rbenv install 2.2.4
rbenv global 2.2.4

Then you may need to modify your .bash_profile or .zshrc if you use zsh. Add these 2 lines:

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

Then you can reinstall fastlane.

It should work after a reboot 😃

Thanks @dpassage! Installed ruby 2.3.0 via RVM, reinstalled fastlane gem, and we’re up and running again.

Yep, it’s happening during sigh for us

{:DEFAULT_PLATFORM=>:ios, :PLATFORM_NAME=>:ios, :LANE_NAME=>“ios publisher”} [14:13:32]: Connection reset by peer - SSL_connect

Hei @ohwutup, I Tried your solution with newest fastlane version from your .zip 1h later and everything worked fine. Don’t know what happened before.

It appears that https://developer.apple.com is no longer accepting TLS versions below 1.2:

$ curl --tlsv1.1 https://developer.apple.com
curl: (35) Server aborted the SSL handshake
$ curl --tlsv1.0 https://developer.apple.com
curl: (35) Server aborted the SSL handshake

Unfortunately, it appears that the system ruby on El Capitan doesn’t support 1.2. 😦

@KrauseFx looks like spaceship and thus match now have a dependency on newer versions of ruby 😦. Or some major surgery to make faraday use a different SSL library.

Will it be addressed in a @fastlane release or it should be solved by updating the env?

Seems to work for me

$ rbenv install 2.3.1
$ rbenv global 2.3.1
$ gem install bundler -v 1.13.4
$ bundle install --path ./.gems --verbose
$ bundle exec fastlane --verbose your_lane

So we’ve discovered that this failure occurs if you use the system Ruby, i.e. /usr/bin/ruby, on OS X 10.11.6. Using Ruby 2.3.0 installed via RVM, this works fine.

We updated our installation instructions to also include fastlane.zip, which solves this problem 🚀

I know this is not fastlane specific but I’m running out of options. I managed to update everything These are my current versions:

jan$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin16
jan$ openssl version
OpenSSL 1.0.2j  26 Sep 2016

And I’m still getting the same Connection reset by peer - SSL_connect error.

Any idea what else I might try?

Thank you

Just a comment, after running brew install ruby I had to restart my terminal instance so changes got propagated correctly (ruby -v was still saying 2.0.0 before restarting it). Then everything worked OK for me

thx - was solved with: brew install ruby gem install fastlane

I fixed the problem by updating ruby:

brew install rbenv ruby-build

2)Add rbenv to bash so that it loads every time you open a terminal echo ‘if which rbenv > /dev/null; then eval “$(rbenv init -)”; fi’ >> ~/.bash_profile source ~/.bash_profile

  1. Install Ruby rbenv install 2.3.1 rbenv global 2.3.1 ruby -v

Having this issue with “fastlane init” as well when it tries to use produce to create an app

For those of you attempting the brew install ruby method and when you gem install fastlane you get the error:

ERROR: While executing gem ... (TypeError)
no implicit conversion of nil into String

Try updating your rubygems system with gem update --system.

I had luck getting all my fastlane tools to work again after mysteriously encountering this error after making use of a web debugger named Charles ( which seemed to have changed my OpenSSL )

The step that made the difference for me was in symlinking my Open SSL so I was using the correct version

`ln -s /usr/local/Cellar/openssl/1.0.2j/bin/openssl /usr/local/bin/openssl`

found at this site http://tonyle.ca/blog/?p=101

Just a heads up - for those that are installing rbenv, make sure you reinstall gem install fastlane after switching to rbenv. That will solve most issues as it has mine.

@ohwutup solution works perfectly. Thanks!

Had all sorts of trouble getting this working following the homebrew-based instructions from the error output. If you were previously running the system ruby, and you upgraded to homebrew’s ruby using the provided instructions, and you’re using bundler to manage fastlane, you’ll need to reinstall bundler once your ruby version has been upgraded (sudo gem install bundler did the job for me), otherwise fastlane won’t see the new ruby version.

Is it not possible to get this working with the macOS system ruby? I’m running El Cap and am running into this issue.

My issues were resolved by executing the following commands

brew update && brew install ruby
sudo gem install fastlane
sudo gem update produce
sudo gem update sigh

Thanks everyone for your help resolving this. @mfurtak pushed a new release of fastlane_core, which will print out the following: https://github.com/fastlane/fastlane/pull/6593

There is no other way than to update or re-install Ruby, as OpenSSL is compiled into your Ruby environment. Let us know if you have any more issues 👍

If you run into issue of “brew” hanging, then you might want to try: /usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

It seems like core package somehow got messed up in my case, and all brew commands were hanging.

Thanks @joamafer for the steps. They worked great!

Thanks to all for the steps on upgrading Ruby. Two of my boxes did not exhibit the issue, one did, and of course it was the build server! Ran a quick test post ruby and fastlane update and it seems to be fixed.

Doesn’t work for me. It continues to use Ruby version 2.0.0 (system):

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/net/http.rb:921:in `connect’: [!] Connection reset by peer - SSL_connect (Faraday::ConnectionFailed)

I had the same problem and I fixed it by doing the following:

  1. Follow the instructions here (https://developer.xamarin.com/guides/testcloud/calabash/configuring/osx/updating-ruby-using-rbenv/) to install rbenv and ruby-build.
  2. Run $ rbenv install 2.3.1 and rbenv global 2.3.1.
  3. Reinstall fastlane gem install fastlane.
  4. Restart the build server.