Tag Archives: Jenkins

“Connection reset by peer” error with Fastlane & Jenkins

About a week ago, my build machine with Jenkins stopped sending out builds. I went to investigate and found that Fastlane was failing during ‘sigh’ when it attempted to connect to Apple’s servers.

The error was:

Taking a look at Fastlane’s issue page on Github, I was able to see that many people were able to resolve the issue by updating Ruby to the latest version and then reinstalling Fastlane. So I tried that…

After running the commands, I kicked off a build, but it failed once again with the same error. Strange. I figured since it had the same error, it must have been a problem with the version of Ruby used by Jenkin’s “Execute Shell” step.

Everything looked fine to me. So why was it still showing the same error? I ended up re-reading the issue page on Github and noticed that someone mentioned that openssl was potentially the reason. So I checked mine and it turns out the version I was using was outdated. I ended up trying to update openssl  using homebrew.

This time I wanted to be sure that the build would succeed so I checked the versions before proceeding any further.

NO! That’s not the version that I just installed! Homebrew installed it to:  /usr/local/Cellar/openssl/1.0.2j .

So I naively attempted to link it:

Uh oh! Another error. Since openssl  is “keg-only”, I decided to create a symlink instead:

Nice! Now that everything looked like it was in order, I kicked off another build and it finally succeeded.

If you’ve encountered the same error, hopefully this helps you. I would also recommend checking your PATH  to ensure that /usr/local/bin  is before /usr/bin . If it’s not, you might be running a different version than expected.

Cheers!

Tagged , , , ,

HockeyApp plugin for Jenkins Doesn’t Show “Upload to HockeyApp” Menu Item

Since TestFlightApp is shutting down soon, I decided that I would migrate over to a different platform to handle my continuous integration builds distribution. I ended up choosing HockeyApp as the platform that I would use.

HockeyApp is well established in the mobile distribution industry. They’ve been around for quite some time, but I’ve always used TestFlightApp because of the simplicity and the pricing. The switch over to HockeyApp was quite easy. They offer an SDK similar to TestFlight and a plethora of apps – iOS, Android, Mac, and Windows. I was able to get a build distributed through the HockeyApp website in a couple hours. But this was a manual process and obviously it wouldn’t work well with what I was trying to do.

Jenkins luckily has a HockeyApp plugin and I was able to install it quite easily, just like any other plugin. But when I went to add the Post-Build Action for my job, there wasn’t an option to “Upload to HockeyApp”. I was able to install an older build and it appeared there correctly. What I found was that with the latest HockeyApp plugin for Jenkins, it was failing due to an older version of Java on the build server. I checked the version and it was 1.6.x. I upgraded it to 1.7.x and then re-installed the newer HockeyApp plugin. After the install, the menu item “Upload to HockeyApp” appeared in the Post-Build Actions. I’ve since updated Java to 1.8.x and the HockeyApp plugin still responds correctly.

TL;DR: If you don’t see the “Upload to HockeyApp” menu item, check to see if you’re running an older version of Java and update it if that’s the case. The menu item should appear for anything over Java 6.

Tagged , , ,