Установка плагина Gradle
Tuist предоставляет плагин Gradle, который интегрируется с вашим проектом Gradle и включает такие возможности, как удалённое кэширование сборок и аналитика сборок. Это руководство поможет вам установить и настроить плагин.
Плагин требует Gradle версии 8.12.1 или новее.
1. Инициализация Tuist#
Выполните следующую команду в корневом каталоге вашего проекта Gradle:
mise x tuist@latest -- tuist init
tuist init
Команда проведёт вас через аутентификацию, создание или выбор проекта Tuist и генерацию конфигурации для вашего проекта Gradle.
2. Подключение плагина#
После выполнения tuist init добавьте плагин Tuist в ваш settings.gradle.kts, следуя инструкциям в выводе команды:
plugins {
id("dev.tuist") version "0.10.0"
}
3. Аутентификация команды и непрерывной интеграции#
Хотя tuist init выполняет локальную аутентификацию для вас, вашим коллегам и средам непрерывной интеграции потребуется пройти аутентификацию отдельно.
Каждому участнику команды следует выполнить следующую команду, чтобы получить доступ к возможностям Tuist на своём компьютере:
tuist auth login
Если вы используете самостоятельно размещённый или локальный сервер Tuist, укажите тот же базовый URL, который настроен в tuist.toml:
tuist auth login --url http://localhost:8080
tuist auth whoami --url http://localhost:8080
Сохраняйте единообразие в написании имени хоста. Например, учётные данные, сохранённые для localhost, отделены от тех, что сохранены для 127.0.0.1.
Для автоматизированных раннеров следуйте руководству по аутентификации в среде непрерывной интеграции, чтобы настроить аутентификацию для вашей среды.
Кэш конфигурации и изолированные проекты#
Плагин поддерживает кэш конфигурации Gradle и изолированные проекты. Оставьте плагин в settings.gradle.kts; вам не нужно подключать его отдельно к каждому подпроекту.
Tuist не включает эти функции автоматически. Чтобы активировать их, добавьте следующее в gradle.properties:
org.gradle.configuration-cache=true
org.gradle.unsafe.isolated-projects=true
Ваши скрипты сборки и другие плагины также должны поддерживать эти функции. Gradle сообщает о проблемах совместимости при сохранении кэша конфигурации.
Справочник по конфигурации#
В блоке расширения tuist в файле settings.gradle.kts доступны следующие параметры:
| Параметр | Тип | Значение по умолчанию | Описание |
|---|---|---|---|
project | String? | null (необязательно) | Идентификатор проекта в формате account/project. Если не задан, плагин считывает его из tuist.toml. |
url | String? | null | Базовый URL сервера Tuist. Если не задан, по умолчанию используется "https://tuist.dev" или значение, определённое в tuist.toml. |
uploadInBackground | Boolean? | null | Определяет, следует ли загружать аналитику сборок и тестов в фоновом режиме. При значении null (по умолчанию) загрузка выполняется в фоновом режиме для локальных сборок и в основном потоке на раннерах непрерывной интеграции. |
stressNewTests.mode | String? | null | "report" или "enforce". Повторно запускает тесты, добавленные сборкой, и помечает нестабильные; см. стресс-тестирование новых тестов. Отключено, если не задано. |
Для локального сервера, использующего URL с протоколом http://, разрешите небезопасный протокол только в этой локальной конфигурации:
tuist {
buildCache {
allowInsecureProtocol = true
}
}
Не включайте allowInsecureProtocol для размещённых или других серверов с https://.
Рекомендуемый способ настройки project (и опционально url) — через файл tuist.toml в корневом каталоге проекта. Таким образом конфигурация будет общей для интерфейса командной строки Tuist и плагина Gradle. При необходимости вы всё ещё можете переопределить эти значения в settings.gradle.kts.
project = "account/project"
url = "https://tuist.dev"
HTTP-прокси#
Если ваша сеть направляет исходящий трафик через HTTP-прокси, см. руководство по настройке HTTP-прокси.
Следующие шаги#
После установки и настройки плагина вы можете включить:
- Удалённый кэш сборок для обмена артефактами сборки между членами команды и раннерами непрерывной интеграции.
- Аналитика сборок для отслеживания времени выполнения задач и поведения кэша в панели управления Tuist.
- Аналитика тестов для отслеживания производительности тестов и выявления нестабильных тестов.
- Нестабильные тесты для автоматического выявления, отслеживания и изоляции нестабильных тестов.