Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ HOST_LAYERS_PATH := ${CURDIR}/layers
HOST_CONF_PATH := ${CURDIR}/conf
HOST_SCRIPTS_PATH := ${CURDIR}/scripts
TESTS_DIR := ${CURDIR}/tests
METABASE_BACKUP_SCRIPT := ${CURDIR}/metabase_prototype/db/init/backup_init.sh
METABASE_BACKUP_SCRIPT := ${CURDIR}/metabase_prototype/backup_init.sh
METABASE_DEFAULT_DUMP := ${CURDIR}/metabase_prototype/metabase_backup.dump

# Python
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,8 @@ To add a new utility, you need to update the [packages.conf](conf/packages.conf)
* QEMU parameters (RAM size)
* Network parameters (IP addresses, ports, including SSH ports for VMs)

[metabase_backup.dump](./metabase_prototype/metabase_backup.dump) stores metabase dashboards and graphs. More details: [Metabase Readme](./metabase_prototype/README.md)

## Complete documentation

All project documentation is available in the [docs/index.md](docs/index.md).
2 changes: 2 additions & 0 deletions docs/i18n/README_ru.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,8 @@ docker logs os-image-testing-imgtests-analyzer-1
* Параметры QEMU (размер RAM)
* Сетевые параметры (IP адреса, порты, включая SSH порты для виртуальных машин)

[metabase_backup.dump](../../metabase_prototype/metabase_backup.dump) хранит панели мониторинга и графики для metabase. Подробнее: [Metabase Readme](../../metabase_prototype/README.md)

## Полная документация

Вся документация по проекту доступна в [docs/index.md](../index.md).
4 changes: 3 additions & 1 deletion metabase_prototype/.env
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
POSTGRES_USER=admin
POSTGRES_USER=user
POSTGRES_PASSWORD=admin
POSTGRES_DB=metabase_app
MVP_RESULTS_DB=mvp_results
Expand All @@ -12,3 +12,5 @@ METABASE_META_PASS=metabase
METABASE_META_VOLUME=metabase_meta_data
METABASE_PORT=3000
METABASE_APP_VOLUME=metabase_app
METABASE_BACKUP_SCRIPT=./backup_init.sh
METABASE_DEFAULT_DUMP=./metabase_demo_backup.dump
40 changes: 40 additions & 0 deletions metabase_prototype/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# METABASE DEMO

## Быстрый старт демонстрационной версии с синтетическими данными

Файл [env](./env) содержит параметры окружения для запуска контейнеров metabase и БД с заготовленными демонстрационными данными.

Запустите контейнеры командой:

```bash
docker compose up --detach
```

Примечание: metabase нужно некоторое время загрузиться после старта контейнера, обычно не больше минуты.

## Backup по умолчанию

При создании metabase контейнеров загружается backup по умолчанию.

Файл дампа по умолчанию содержит базовые панели мониторинга и соответствующие запросы.

* Данные регистрации для дампа Metabase по умолчанию:
* email: `admin@gmail.com`
* password `123admin`

> ⚠️ Работа с параметрами среды
> Будьте осторожны с данными среды, изменения не будут применяться к Metabase, например, изменение хоста, адреса или порта PostgreSQL сделает базу данных недоступной, и вам потребуется изменить эти переменные вручную в панели администратора Metabase.

## Контейнеры и их взаимодействие

- **Контейнер основной базы данных** – `imgtests-postgres` содержит синтетические данные, в будущем будет удален, а metabase будет подключаться напрямую к базе данных проекта

- **Контейнер служебной базы метаданных** – `imgtests-metabase-meta-db` хранит внутренние настройки Metabase: вопросы, дашборды, информацию о подключениях.

- **Контейнер самого Metabase** – `imgtests-metabase` запускает веб‑сервер Metabase.

## Переменные окружения

[.env](.env) используется для хранения переменных окружения, используемых при сборке котейнеров. В нем описываются:
* Переменные базы данных (users, passwords, db name)
* Сетевые параметры (IP адреса, порты, включая SSH порты для виртуальных машин)
1 change: 1 addition & 0 deletions metabase_prototype/db/init/00_init.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ SELECT 'CREATE DATABASE ' || quote_ident('${MVP_RESULTS_DB}')
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = '${MVP_RESULTS_DB}')\gexec
SQL

psql --username "$POSTGRES_USER" --dbname="$MVP_RESULTS_DB" -f /docker-entrypoint-initdb.d/backup.sql
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname="$MVP_RESULTS_DB" -f /docker-entrypoint-initdb.d/01_schema.sql
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname="$MVP_RESULTS_DB" -f /docker-entrypoint-initdb.d/02_data.sql

Expand Down
36 changes: 0 additions & 36 deletions metabase_prototype/db/init/01_schema.sql
Original file line number Diff line number Diff line change
Expand Up @@ -244,39 +244,3 @@ SELECT
stddev_samp(value) AS stddev_value
FROM v_scalar_metabase
GROUP BY 1,2,3,4,5,6,7,8,9,10;

/* Synthetic performance and endurance data */

CREATE TABLE IF NOT EXISTS experiment (
experiment_id integer NOT NULL,
config_id integer NOT NULL,
description character varying(100) NOT NULL,
type character varying(20),
started_at timestamp without time zone,
ended_at timestamp without time zone,
tests_total integer DEFAULT 0 NOT NULL,
tests_passed integer DEFAULT 0 NOT NULL,
tests_failed integer DEFAULT 0 NOT NULL,
tests_broken integer DEFAULT 0 NOT NULL,
tests_skipped integer DEFAULT 0 NOT NULL
);

CREATE TABLE IF NOT EXISTS configuration (
config_id integer NOT NULL,
os character varying(100) NOT NULL,
packages json NOT NULL,
core_info character varying(300) NOT NULL,
core_config json NOT NULL,
hardware json NOT NULL
);

CREATE TABLE IF NOT EXISTS util_run_result (
id integer NOT NULL,
experiment_id integer NOT NULL,
util_type character varying(20) NOT NULL,
command character varying NOT NULL,
result json NOT NULL,
description character varying(100) NOT NULL,
started_at timestamp without time zone,
ended_at timestamp without time zone
);
Comment thread
NikitaKrinkin marked this conversation as resolved.
531 changes: 0 additions & 531 deletions metabase_prototype/db/init/02_data.sql

Large diffs are not rendered by default.

Loading
Loading