Файл конфигурации¶
На некоторых платных планах, GlarusBI поддерживает инициализацию параметров при запуске из файла конфигурации config.yml
. Этот файл должен находиться либо в текущем каталоге (каталоге, в котором находится запущенный JAR GlarusBI), либо в пути, указанном переменной среды MB_CONFIG_FILE_PATH
. В этом файле конфигурации вы можете указать следующее:
Настройки
Пользователей
Базы данных
Настройки, определенные в файле конфигурации, работают так же, как если бы вы установили эти настройки в Настройках администратора в вашем GlarusBI. Настройки, определенные в этом файле конфигурации, имеют приоритет и переопределят любые другие существующие настройки. Например, если база данных уже существует (то есть вы уже добавили ее через начальную настройку или Настройки администратора > Базы данных, GlarusBI обновит запись базы данных на основе данных в файле конфигурации).
Файл конфигурации не рассматривается GlarusBI как жестко заданный источник данных (наподобие переменных окружения).
Пример файла config.yml
¶
В следующем файле задается пользовательский аккаунт и две базы данных источников.
version: 1
config:
users:
- first_name: Cam
last_name: Era
password: 2cans3cans4cans
email: cam@example.com
databases:
- name: test-data (Postgres)
engine: postgres
details:
host: localhost
port: 5432
password: {% raw %} "{{ env POSTGRES_TEST_DATA_PASSWORD }}" {% endraw %}
dbname: test-data
- name: Sample Dataset (Copy)
engine: h2
details:
db: "/home/cam/metabase/resources/sample-database.db;USER=GUEST;PASSWORD={{env SAMPLE_DATASET_PASSWORD}}"
Чтобы определить, какие ключи вы можете указать, просто посмотрите на доступные поля в самом GlarusBI.
Использование переменных, определенных в config.yml
¶
На переменные окружения можно сослаться с помощью {% raw %}{{ теги-шаблона }}{% endraw %}
как {% raw %}{{ env POSTGRES_TEST_DATA_PASSWORD }}{% endraw %}
или {% raw %}[[опции {{теги-шаблона}}]]{% endraw %}
.
GlarusBI не поддерживает рекурсивное использование, поэтому если одна из ваших переменных окружения ссылается на другую переменную окружения, это вернет непредсказуемый результат.
Отключить первоначальную синхронизацию базы данных¶
При загрузке модели данных из сериализованного дампа вам нужно отключить планировщик, чтобы GlarusBI не пытался синхронизироваться.
Чтобы отключить начальную синхронизацию базы данных, вы можете добавить config-from-file-sync-database
в список settings
и установить значение в false
. Настройка config-from-file-sync-database
должна идти до списка баз данных, как показано ниже:
version: 1
config:
settings:
config-from-file-sync-databases: false
databases:
- name: my-database
engine: h2
details: ...
Список настроек¶
В общем случае, настройки, которые вы можете установить в разделе settings
этого файла конфигурации соответствуют переменным окружения.
Фактический ключ, который вы включаете в файл конфигурации, немного отличается от формата, используемого для переменных окружения. Для переменных окружения форма используется с префиксом MB
:
MB_NAME_OF_VARIABLE
тогда как в файле конфигурации это должно быть изменено на:
name-of-variable
Так что, если, к примеру, вы хотите использовать значение MB_EMAIL_FROM_NAME
не как переменную окружения, а как параметр в config.yml
файле, используйте следующее:
version: 1
config:
settings:
config-from-file-sync-databases: false
email-from-name: Stampy von Mails-a-lot
databases:
- name: my-database
engine: h2
details: ...
Пользователи и администраторы¶
Первый пользователь, созданный в экземпляре GlarusBI, является администратором. Первый пользователь, указанный в файле конфигурации, может быть назначен администратором, но не обязательно, например, если кто-то уже
запустил и вошел в GlarusBI в первый раз, этот пользователь будет автоматически назначен администратором. Кроме того, вы можете указать учетную запись пользователя как администратора, используя ключ is_superuser: true
.
В следующем примере:
version: 1
config:
users:
- first_name: a
last_name: b
password: metabot1
email: a@b.com
- first_name: b
last_name: a
password: metabot1
email: b@a.com
- first_name: c
last_name: a
password: metabot1
is_superuser: true
email: c@a.com
оба пользователи a@b.com и c@a.com будут администраторами: a@b.com потому что первый в списке (если экземляр еще не сконфигурирован), а c@a.com потому что у него задан флаг is_superuser. Если экземпляр уже сконфигурирован, то a@b.com будет создан обычнм пользователем.