Mobile app releases are a manual, tedious and error-prone process when done at scale.

It is not possible to follow a continuous delivery (CD) approach because binaries need to be submitted to the stores, and once published they can’t be rolled back. Moreover, mobile releases can take several days to complete.

In contrast, we deploy the web version of Shopify around 50 times a day. We identified this gap between web and mobile releases as a problem.

In this talk, I’ll explain how my team built a continuous integration (CI) system for our mobile apps (Android and iOS), and how we used this infrastructure as a foundation to build a Ruby on Rails application and other tools to automate and orchestrate releases to Google Play and the App Store, reducing the need for human interaction as much as possible.

We’ll see the challenges of standardizing the release process and the coordination with third-party services like GitHub and the store APIs, and how we made it easier for developers to test the apps.

Comments

Please login to leave a comment

Rated 4

Buitaker at 10:54 on 5 Jun 2019

Great exposition, also applicable to embedded software.
Awesome solution an tool, open source it!

An interesting topic and a great speaker. The material was quite plain, without any inspirational touch, and was presented quite conventionally, maybe suitable for a 20-30 people meetup at most.

Even though, the speaker seemed very quiet and confident, and it was a pleasure to attend to the session and listen to him.

Rated 4

Jerry Smith at 09:44 on 6 Jun 2019

Interesting talk showing the path chosen by the company to ease their mobile app deployment.
Presenter did a good job with a clear exposition and seem to have a good knowledge of the topic. As others said, wish the tool were open sourced.

Rated 4

Pau Trepat at 10:01 on 6 Jun 2019

Good talk, clear exposition and nice speaker.

Rated 4

Javi at 11:34 on 6 Jun 2019

Nice and clear talk

Buitaker at 18:51 on 6 Jun 2019

Surprised to see how close we are embedded software with mobile apps :)