Перейти к содержанию

Сборка Glarus BI

Здесь мы опишем как вы можете создать и запустить Glarus BI на своём компьютере, чтобы вы могли попробовать поработать с ней или протестировать функции в процессе разработки. Вы также можете запускать разрабатываемые ветки Glarus BI используя готовый образ Docker.

Установите необходимые компоненты

Если вы используете macOS, вам нужно сначала установить инструменты командной строки Xcode, выполнив:

xcode-select --install

Чтобы завершить любую сборку кода Glarus BI, вам необходимо установить следующее.

  1. Clojure (https://clojure.org) — установите последнюю версию, следуя инструкциям в зависимости от вашей ОС.

  2. Java Development Kit JDK (https://adoptopenjdk.net/releases.html) — необходимо установить JDK 11 (подробнее о версиях Java).

  3. Node.js (http://nodejs.org/) — последняя версия LTS

  4. Менеджер пакетов Yarn для Node.js — последний выпуск версии 1.x — вы можете установить его в любой ОС, выполнив:

npm install --global yarn

На последней стабильной версии Ubuntu/Debian все вышеперечисленные инструменты, за исключением Clojure, можно установить с помощью:

sudo apt install openjdk-11-jdk nodejs && sudo npm install --global yarn

Если на вашем компьютере установлено несколько версий JDK, обязательно переключите JDK перед сборкой с помощью:

sudo update-alternatives --config java

Затем выберите Java 11 в меню.

Запуск на компьютерах Apple M1

Если вы разрабатываете на более новых компьютерах Apple M1, обратите внимание, что текущая версия NodeJS LTS имеет встроенную поддержку архитектуры arm. Однако убедитесь, что у вас установлена Rosetta 2, прежде чем пытаться создать интерфейс:

/usr/sbin/softwareupdate --install-rosetta (root permission not required)

или

/usr/sbin/softwareupdate --install-rosetta --agree-to-license (root permission required)

Если вы используете Windows, используйте WSL

Если вы разрабатываете для Windows, вам следует запустить Ubuntu в подсистеме Windows для Linux (WSL) и следовать инструкциям для Ubuntu/Linux.

Разработка с помощью VS Code в удалённом контейнере

В качестве альтернативы, без необходимости явно устанавливать вышеуказанные зависимости, следуйте руководству по использованию Visual Studio Code и его поддержке удалённого контейнера.

Клонировать репозиторий Glarus BI

После установки всех инструментов сборки вам потребуется клонировать репозиторий Glarus BI с GitHub.

  1. Создайте папку workspace (вы можете назвать её так или как хотите), в которой будут храниться файлы кода Glarus BI.

  2. Откройте приложение терминала и перейдите в папку рабочей области с помощью:

cd ~/workspace

{:start="3"} 3. Выполните следующую команду, чтобы «клонировать» Glarus BI в эту папку, используя URL репозитория Glarus BI на GitHub:

git clone https://github.com/metabase/metabase

Выберите ветку, которую хотите запустить, и запустите ее

Это часть, которую вы будете повторять снова и снова.

«Официальная» ветвь Glarus BI называется «мастер», и другие ветки разработки функций сливаются с ней, когда они утверждаются. Поэтому, если вы хотите опробовать функцию до этого, вам нужно знать название этой ветки, чтобы вы могли переключиться на нее. Вот что нужно сделать:

{:start="4"} 4. Откройте приложение терминала. 5. Перейдите в ту папку, где хранится код Glarus BI. Если вы точно следовали этому руководству, можете использовать следующую команду:

   cd ~/workspace/metabase

{:start="6"} 6. «Загрузите» последние изменения, запустив:

   git pull

Вы должны делать это каждый раз, чтобы убедиться, что у вас есть все последние ветки Glarus BI и код на вашем компьютере. Таким же образом вы будете получать обновления в функциональной ветке, когда кто-то вносит в неё изменения.

  1. Найдите имя ветки, которую вы хотите запустить, перейдя на страницу «Pull Requests» для этой функции на GitHub и скопировав оттуда имя ветки. Вот пример PR-страницы с названием ветки fix-native-dataset-drill-popover.

  2. Переключитесь на эту ветку или «проверьте» ее, запустив:

git checkout <branch-name>

Если бы мы хотели переключиться на ветку на предыдущем шаге, мы бы запустили:

git checkout fix-native-dataset-drill-popover

Если вы хотите вернуться к master, запустите:

git checkout master

Запустить Glarus BI

{:start="9"} 9. Теперь мы запустим внутренний сервер Glarus BI с помощью:

clojure -M:run

Когда это будет сделано, вы должны увидеть сообщение, в котором говорится что-то вроде «Инициализация Glarus BI завершена». Держите эту вкладку в своём терминальном приложении работающей, иначе Glarus BI остановится.

  1. Откройте другую вкладку или окно вашего терминального приложения, а затем «запустите» UI интерфейс с помощью команды:
yarn build-hot

Если у вас возникли проблемы с этим шагом, убедитесь, что вы используете LTS-версию Node.js (http://nodejs.org/).

{:start="11"} 11. В веб-браузере перейдите по адресу http://localhost:3000, где вы должны увидеть Glarus BI!

Это локальный «сервер» на вашем компьютере, а 3000 — это «порт», на котором работает Glarus BI. У вас может быть несколько разных приложений, работающих на разных портах на вашем компьютере. Обратите внимание, что если вы поделитесь какими-либо URLми с другими, начинающимися с «localhost», они не смогут получить к ним доступ, потому что ваш компьютер по умолчанию не открыт для всего мира в целях безопасности.

Чтобы переключиться на другую ветку или вернуться к master, откройте другую вкладку терминала и повторите шаги 6, 7 и 8. Если Glarus BI ещё не запущена, вам также необходимо выполнить шаги 9 и 10 ещё раз. Если он уже был запущен, интерфейс автоматически перестроится. Вы можете проверить его ход, переключившись на эту вкладку в терминале — обычно это занимает около 15 секунд, но зависит от вашего оборудования.

Завершение работы Glarus BI

Если вы хотите остановить сервер Glarus BI, вы можете либо выйти из программы терминала, либо перейти на вкладку с работающим бэкендом и нажать Ctrl+C, чтобы остановить бэкенд. В большинстве случаев вам не нужно этого делать для переключения ветвей, но в некоторых случаях изменение или функция, которую вы пытаетесь увидеть, являются изменением с серверной частью, и вам может потребоваться остановить серверную часть с помощью Ctrl +C, а затем перезапустите его, снова выполнив шаг 9.

Создание Glarus BI Uberjar

Все приложение Glarus BI скомпилировано и собрано в один файл .jar, который может работать на любой современной JVM. Существует скрипт, который выполнит все шаги процесса и выведет для вас окончательный артефакт. Вы можете передать переменную среды MB_EDITION перед запуском сценария сборки, чтобы выбрать версию, которую вы хотите собрать. Если вы не укажете значение, по умолчанию используется oss, который будет собирать Community Edition.

./bin/build.sh

После запуска сценария сборки просто найдите в target/uberjar выходной файл .jar, готовый к запуску.