Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Continuos Delivery for iOS Apps

Continuos Delivery for iOS Apps

This is a "topicalized" version of Felix Krause's presentation during NSLondon.

Adapted for CocoaHeads CR chapter.
Felix gave me access to the file and I mainly changed a couple of things here and there and translated most to Spanish.

Esteban Torres

April 21, 2015
Tweet

More Decks by Esteban Torres

Other Decks in Programming

Transcript

  1. Continuous Delivery for iOS Apps
    @esttorhe (Esteban Torres)

    View Slide

  2. • “No podemos hacer release, José está de vacaciones”
    • “El provisioning profiles tiene todos los dispositivos?”
    • “No podemos liberar el update, el build está roto”
    • “Necesitamos screenshots nuevos para la página”
    • “Uh, ese fix no merece otro release…”

    View Slide

  3. Sin «Automation»

    View Slide

  4. Continuous Delivery for iOS Apps
    @esttorhe (Esteban Torres)

    View Slide

  5. Release Day
    • Testing
    • Screenshots
    • Build
    • Signing Issues
    • Prepare Push Certificate
    • Upload
    • Submit

    View Slide

  6. Continuous Integration

    View Slide

  7. Level up

    View Slide

  8. Objetivos
    • Automatic Deployment
    • Version Control
    • Developer Independent

    View Slide

  9. View Slide

  10. View Slide

  11. View Slide

  12. • App Metadata
    • Screenshots
    • IPA
    • TestFlight
    • App Submission

    View Slide

  13. • Credentials
    • TestFlight
    • iTunes Transporter
    • HTTP Requests
    • Automatic Setup

    View Slide

  14. • UI Automation
    • All combinations
    • Provide a JS file
    • Integration Tests
    • Summary

    View Slide

  15. View Slide

  16. View Slide

  17. View Slide

  18. View Slide

  19. • Accessibility Labels
    • Accessibility Improvements

    View Slide

  20. View Slide

  21. View Slide

  22. View Slide

  23. View Slide

  24. View Slide

  25. View Slide

  26. • Multiples «Lanes»
    • Pasar Información
    • De 1 Día a Cero

    View Slide

  27. xctool

    View Slide

  28. View Slide

  29. Estrategia de Deploy
    • «Lanzar» un trabajo
    • CMS personalizado
    • Basado en Git

    View Slide

  30. Fastfile

    View Slide

  31. ¿Por qué Ruby?
    • Configuración Dinámica
    • Obtener valores de donde sea
    • Fácilmente «leíble»

    View Slide

  32. View Slide

  33. View Slide

  34. View Slide

  35. View Slide

  36. Extensiones
    • Scripts de Shell
    • Private Actions
    • Built-In Actions

    View Slide

  37. FAQs
    • Pero Xcode Bots!
    • ¿Listo para producción?
    • Yo mantengo muchas apps, tenemos 2 empleados
    para éso
    • ¿Puede fastlane hacer «submit» de apps?

    View Slide

  38. @KrauseFx (Felix Krause)
    https://fastlane.tools

    View Slide