No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Automatización del Release

15/17
Recursos

La automatización del proceso de firmado y compilación de aplicaciones móviles es fundamental para optimizar el flujo de trabajo de desarrollo. Con herramientas como FastLane, podemos simplificar tareas repetitivas y garantizar consistencia en cada lanzamiento. Este enfoque no solo ahorra tiempo valioso, sino que también reduce errores humanos durante el proceso de publicación.

¿Cómo automatizar el proceso de firmado y compilación con FastLane?

FastLane es una herramienta Open Source que nos permite automatizar diferentes procesos en el desarrollo de aplicaciones móviles. Para comenzar a utilizarla, necesitamos instalarla a través de Ruby:

  1. Si no tienes Ruby instalado, puedes hacerlo con: brew install ruby
  2. Una vez instalado Ruby, instala la gema de FastLane: gem install fastlane
  3. Dentro de la carpeta de tu proyecto, inicializa FastLane: fastlane init

Después de la instalación, FastLane creará una nueva carpeta en tu proyecto con dos archivos importantes:

  • Appfile: Almacena la llave de Google Cloud y el nombre del paquete (debe coincidir con el bundle ID de la aplicación)
  • Fastfile: Contiene los pasos a realizar durante la automatización (tests, generación de flavors, etc.)

Es fundamental configurar correctamente estos archivos para que la automatización funcione adecuadamente, especialmente cuando trabajamos con diferentes entornos de desarrollo.

¿Cómo configurar las credenciales de Google Cloud para FastLane?

Para que FastLane pueda interactuar con los servicios de Google, necesitamos crear una llave JSON desde Google Cloud:

  1. Cuando creas un proyecto en Firebase, automáticamente se genera una cuenta de Google Cloud
  2. Ve a la configuración del proyecto en Firebase, sección "Cuentas de servicio"
  3. Haz clic en "Todas las cuentas de servicio" para ir a Google Cloud
  4. Crea una nueva cuenta de servicio (por ejemplo, "FastLane")
  5. Una vez creada, ve a la sección "Claves" de la cuenta
  6. Agrega una nueva clave en formato JSON
  7. Guarda el archivo descargado en una ubicación segura
  8. Actualiza la ruta de este archivo en el Appfile de FastLane
# Ejemplo de configuración en Appfile
json_key_file("ruta/al/archivo/credenciales.json")
package_name("com.tuempresa.tuapp")

¿Cómo ejecutar tareas automatizadas con FastLane?

Una vez configurado FastLane, podemos ejecutar diferentes tareas desde la terminal:

Ejecutar tests

Para correr todos los tests de la aplicación:

fastlane test

Generar versión beta

Para generar una versión beta de la aplicación:

fastlane android beta

Este proceso puede tomar tiempo ya que genera versiones en modo debug para todos los flavors configurados. Es importante notar que pueden surgir errores relacionados con Crashlytics, que se pueden solucionar con la configuración adecuada.

Generar versión para producción

Para compilar la versión de producción que irá a las tiendas:

fastlane android deploy

Antes de generar la versión de producción, es crucial tener la aplicación configurada para producción y haber habilitado la Google Play Android Developer API en Google Cloud. Para habilitarla:

  1. Ve a "API y servicios" en Google Cloud
  2. Busca "Google Play Android Developer API"
  3. Habilita la API si no lo está ya

¿Cómo integrar FastLane con GitHub Actions?

Para automatizar aún más el proceso, podemos configurar GitHub Actions para ejecutar FastLane automáticamente cuando ocurran ciertos eventos:

  1. En la carpeta de tu proyecto, presiona Command + Shift + . para mostrar archivos ocultos
  2. Dentro de la carpeta .github, crea una carpeta llamada workflows
  3. Crea un archivo YAML dentro de esta carpeta
# Ejemplo de configuración de GitHub Actions
name: CI
on:
  push:
    branches: [ main ]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Install FastLane
        run: gem install fastlane
      - name: Run tests
        run: fastlane test

Una buena práctica es utilizar los push para ejecutar tests y los tags para generar nuevas versiones. Esto permite mantener un flujo de trabajo limpio y organizado, donde cada acción tiene un propósito específico.

La automatización del proceso de desarrollo y despliegue de aplicaciones móviles es esencial para equipos que buscan eficiencia y consistencia. Con herramientas como FastLane y GitHub Actions, puedes crear un flujo de trabajo que minimice errores y maximice la productividad de tu equipo.

¿Has implementado alguna vez un proceso de automatización en tus proyectos? Comparte tu experiencia en los comentarios y cuéntanos qué herramientas has encontrado más útiles para tu flujo de trabajo.

Aportes 0

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?