Ir al contenido

Instalar el plugin de Gradle

Tuist ofrece un plugin de Gradle que se integra con tu proyecto de Gradle para habilitar funcionalidades como caché remota de compilación y análisis de compilaciones. Esta guía te acompaña paso a paso en la instalación y configuración del plugin.

El plugin requiere Gradle 8.12.1 o una versión posterior.

1. Inicializar Tuist#

Ejecuta el siguiente comando en la raíz de tu proyecto de Gradle:

bash
mise x tuist@latest -- tuist init
bash
tuist init

El comando te guiará por el proceso de autenticación, creación o selección de un proyecto de Tuist y generación de la configuración para tu proyecto de Gradle.

2. Aplicar el plugin#

Después de ejecutar tuist init, deberás añadir el plugin de Tuist a tu settings.gradle.kts según las instrucciones mostradas en la salida del comando:

kotlin
plugins {
id("dev.tuist") version "0.10.0"
}

3. Autenticar a tu equipo y a la integración continua#

Aunque tuist init te autentica localmente, tus compañeros de equipo y los entornos de integración continua deberán autenticarse por separado.

Cada compañero debe ejecutar lo siguiente para acceder a las funcionalidades de Tuist en su máquina:

bash
tuist auth login

Cuando uses un servidor de Tuist autoalojado o local, indica la misma URL base configurada en tuist.toml:

bash
tuist auth login --url http://localhost:8080
tuist auth whoami --url http://localhost:8080

Mantén consistente la escritura del nombre de host. Por ejemplo, un inicio de sesión guardado para localhost es distinto de uno guardado para 127.0.0.1.

Para runners automatizados, sigue la guía de autenticación de integración continua para configurar la autenticación en tu entorno.

Caché de configuración y proyectos aislados#

El plugin admite la caché de configuración de Gradle y los proyectos aislados. Mantén el plugin en settings.gradle.kts; no necesitas aplicarlo por separado a cada subproyecto.

Tuist no activa ninguna de estas funcionalidades automáticamente. Para habilitarlas, añade lo siguiente a gradle.properties:

plaintext
org.gradle.configuration-cache=true
org.gradle.unsafe.isolated-projects=true

Tus scripts de compilación y otros plugins también deben admitir estas funcionalidades. Gradle informa de problemas de compatibilidad al almacenar la caché de configuración.

Referencia de configuración#

Las siguientes opciones están disponibles en el bloque de extensión tuist dentro de settings.gradle.kts:

OpciónTipoPredeterminadoDescripción
projectString?null (opcional)El identificador del proyecto en formato account/project. Si no se establece, el plugin lo lee desde tuist.toml.
urlString?nullLa URL base del servidor de Tuist. Si no se establece, el valor predeterminado es "https://tuist.dev" o el definido en tuist.toml.
uploadInBackgroundBoolean?nullIndica si se deben subir los análisis de compilación y tests en segundo plano. Cuando es null (predeterminado), las subidas se ejecutan en segundo plano para compilaciones locales y en primer plano en los runners de integración continua.
stressNewTests.modeString?null"report" o "enforce". Vuelve a ejecutar los casos de test que añade una compilación y marca aquellos que resulten inestables; consulta pruebas de estrés para nuevos tests. Desactivado cuando no está configurado.

Para un servidor local que use una URL http://, permite el protocolo inseguro solo en esa configuración local:

kotlin
tuist {
buildCache {
allowInsecureProtocol = true
}
}

No habilites allowInsecureProtocol para servidores alojados u otros servidores https://.

Tuist.toml

La forma recomendada de configurar project (y opcionalmente url) es mediante un archivo tuist.toml en la raíz de tu proyecto. De este modo, la configuración se comparte entre la interfaz de línea de comandos de Tuist y el plugin de Gradle. Si es necesario, aún puedes sobrescribir estos valores en settings.gradle.kts.

toml
project = "account/project"
url = "https://tuist.dev"

Proxy HTTP#

Si tu red enruta el tráfico saliente a través de un proxy HTTP, consulta la guía de proxy HTTP.

Siguientes pasos#

Una vez instalado y configurado el plugin, puedes habilitar: