Top.Mail.Ru
Локальная сборка приложения | Tarantool
Tarantool
Узнайте содержание релиза 2.8
Tarantool Cartridge Cartridge CLI Команды Cartridge CLI Локальная сборка приложения

Локальная сборка приложения

Чтобы собрать приложение локально (например, для локального тестирования), в любой директории выполните следующую команду:

cartridge build [ПУТЬ] [flags]

--spec Путь к пользовательскому файлу .rockspec, который будет использоваться в текущей сборке.

Если вы выполняете команду cartridge build без параметра --spec, в директории приложения должен находиться файл .rockspec. В директории приложения, созданного по шаблону, этот файл уже есть.

Команда build также поддерживает глобальные параметры. Особенно удобно при сборке приложения использовать параметр --quiet.

Команда принимает один обязательный аргумент — путь к директории вашего приложения, то есть к исходникам для сборки. Путь по умолчанию — . (текущая директория).

Команда cartridge build включает два этапа:

  1. ./cartridge.pre-build (если такой файл есть в корневой директории приложения)
  2. tarantoolctl rocks make

Выполнение второй команды — ключевая часть процесса. В это время Cartridge устанавливает все зависимости, указанные в файле .rockspec.

Если в числе зависимостей вашего приложения есть сторонние модули с закрытым исходным кодом или сборка должна включать модули из проекта, добавленного в виде вложенного модуля, необходимо установить все зависимости до вызова tarantoolctl rocks make. Это можно сделать с помощью файла cartridge.pre-build, помещенного в директорию приложения. В директории приложения, созданного по шаблону, этот файл уже есть.

В файле cartridge.pre-build укажите все сторонние модули, которые необходимо собрать из вложенных модулей. Например, добавьте такую строку:

tarantoolctl rocks make --chdir ./third_party/proj

Подробную информацию вы найдете в описании скриптов pre-build и post-build.

По завершении сборки приложение появится в директории .rocks. Его можно запустить локально из его корневой директории.

Если вы не хотите использовать скрипт cartridge.pre-build, вы можете описать логику сборки, включив команды cmake в файл .rockspec, как это сделано в Cartridge.