TechTalk#12 – Continuous Delivery with Fastlane

 

TechTalk #12

Continuous Delivery with Fastlane

 

Fastlane est un regroupement de plusieurs outils pour réaliser facilement la release d’applications mobiles. Il permet d’automatiser plusieurs taches qui sont chronophages au cours de la vie d’une application mobile comme par exemple la génération de screenshots, la gestion de la signature des applications et la release d’application.

Ce tech talk présente l’utilisation FastLane sur un projet iOS avec la présentation de différents outils disponibles dans la suite de Fastlane mais aussi au travers d’exemple. Le but finale de ce tech talk est de réaliser en live la mise en prod d’un projet avec Fastlane.

Il est possible de configurer les actions voulues avec différentes commandes, permettant de réaliser différentes actions sur les applications. La configuration est assez rapide à réaliser environ 2 à 3h et permet vraiment de gagner en automatisation. Plusieurs commandes sont présentées.

Match

La commande match permet de synchroniser les certificats ainsi que les provisioning profile pour être avoir ces informations bien à jour. Mais elle permet aussi d’ajouter automatiquement de nouveaux devices (en ajoutant l’UDID à la configuration) au compte Apple Developper, et si une modification est vu par match, il gérera la révocation et la régénération des certificats et provisioning profile.

Gym

Gympermet de compiler l’application et de packager les applications.

Cette méthode facilite l’intégration continue des applications mobiles. Par exemple, dans le cas où l’on commit sur master et que le commit est valide (test, lint, … ) alors gym va prendre en charge de réaliser le build (adhoc, AppStore) de notre application. Cela permet de vérifier en continue que le build est cohérent bien avant la mise en production.

Il est aussi utilisé pour réaliser l’upload sur fabric.iobeta.

Snapshot

Snapshotpermet de réaliser des screenshots pour tous les devices et différents langages. Des plugins permettent de rendre les multiples screenshots consistants par exemple en mettant la même heure ou la même quantité de batterie dans toutes les barres de statut.

FrameIt

FrameItpermet de modifier les screenshots pour en améliorer l’apparence. Par exemple ajouter un mockup d’iPhone et un titre à nos screenshots.

Deliver

Deliver permet de télécharger sur iTunes Connect les screenshots, les métadonnées ainsi que les IPA et fera un résumé de ce qui sera envoyé.

Il est possible de l’intégrer avec Jenkins facilement ce qui permettrait de rendre la mise en production live.

Il est aussi possible de réaliser ces actions sur Android avec les commandes comme screen grab et supply.

Il existe d’autres outils à retrouver sur le site de FastLane.

Link https://fastlane.tools/

TechTalk animé par Olivier Tabone | Co-fondateur Directeur Technique chez Ripple Motion