CLI
Исходный код: github.com/tuist/tuist/tree/main/Tuist и github.com/tuist/tuist/tree/main/cli
Для чего нужен#
CLI — это ядро Tuist. Он отвечает за генерацию проектов, автоматизацию рабочих процессов (тестирование, запуск, построение графа зависимостей и инспекцию) и предоставляет интерфейс к серверу Tuist для таких возможностей, как аутентификация, кэш, аналитика, превью, реестр и выборочное тестирование.
Как внести вклад#
Требования#
- macOS 14.0+
- Xcode 26+
Локальная настройка#
- Клонируйте репозиторий:
git clone [email protected]:tuist/tuist.git - Установите Mise с помощью официального скрипта установки (не через Homebrew) и выполните
mise install - Установите зависимости Tuist:
tuist install - Сгенерируйте рабочее пространство:
tuist generate
Сгенерированный проект открывается автоматически. Если вам нужно открыть его позже, выполните open Tuist.xcworkspace.
Если вы попытаетесь открыть проект с помощью xed ., откроется пакет, а не рабочее пространство, созданное Tuist. Используйте Tuist.xcworkspace.
Запуск Tuist#
Из Xcode#
Отредактируйте схему tuist и задайте аргументы, например generate --no-open. Установите рабочий каталог в корень проекта (или используйте --path).
CLI зависит от сборки ProjectDescription. Если запуск не удается, сначала соберите схему Tuist-Workspace.
Из терминала#
Сначала сгенерируйте рабочее пространство:
tuist generate --no-open
Затем соберите исполняемый файл tuist с помощью Xcode и запустите его из DerivedData:
tuist_build_dir="$(xcodebuild -workspace Tuist.xcworkspace -scheme tuist -configuration Debug -destination 'platform=macOS' -showBuildSettings | awk -F' = ' '/BUILT_PRODUCTS_DIR/{print $2; exit}')"
"$tuist_build_dir/tuist" generate --path /path/to/project --no-open
Или через Swift Package Manager:
swift build --product ProjectDescription
swift run tuist generate --path /path/to/project --no-open