Fastlane Tools

Fastlane Tools

KrauseFx recently released Fastlane Tools, a framework for automating the release process to the App Store (and more). I encourage you all to check it out!

At Wikia we developed a similiar automated process for creating and submitting Apps, but it was less general and more specific to Wikia Apps, so we didn't have a chance to checkout fastlane yet.

Still we managed to incorporate some parts of the Fastlane Tools into our process, mainly sigh, pem and deliver. During the testing period (due to the amount of Wikia Apps) some bugs were found, but KrauseFx was very helpful and fixed all the issues that we found.

sigh is a tool to generate or renew a provisioning profile on Apple Developer Portal. The provisioning profiles like to get randomly invalidated in the worst moments possible. sigh regeneration of a few hundred profiles is a breeze comparing to doing this manually.

pem is like sigh, but for creating APNS (Push Notification) certificates. pem generates the Certificate Signing Request for you and generates a certificate based on it - you can upload it to a service like Parse or Urban Airship or just send the push notifications yourself. At first I thought that managing push notifications for all the Apps at Wikia is crazy, but with pem and the help of Parse we manage it pretty well.

deliver is a wrapper on a very obscure, XML-based Apple tool called iTMSTransporter. It can upload all the metadata needed for the AppStore (including screenshots) and your release App builds. Additionally deliver can create version on iTunes Connect and pass them to review.

fastlane is a tool, that automates all the previous steps into one process. Without it you still would have to run a bunch of scripts manually and with it, you can run only one.

Even without an App Farm, like Wikia has, using those tools can immensely speed up your release process. If you want your App to have a lot of updates without the hassle, just setup fastlane and go back to coding, instead of wasting time for the AppStore releases.