О командах dbt docs
dbt docs поддерживает две подкоманды: generate и serve.
dbt docs generate
Эта команда отвечает за генерацию сайта документации вашего проекта путем:
- Копирования файла сайта
index.htmlв директориюtarget/. - Компиляции ресурсов в вашем проекте, чтобы их
compiled_codeбыл включен вmanifest.json. - Выполнения запросов к метаданным базы данных для создания файла
catalog.json, который содержит метаданные о таблицах и представлениях, созданных моделями в вашем проекте.
Пример:
dbt docs generate
Используйте аргумент --select, чтобы ограничить узлы, включенные в catalog.json. Когда этот флаг указан, шаг (3) будет ограничен выбранными узлами. Все остальные узлы будут исключены. Шаг (2) не затрагивается.
Пример:
dbt docs generate --select +orders
Используйте аргумент --no-compile, чтобы пропустить повторную компиляцию. Если этот флаг указан, команда dbt docs generate пропустит шаг (2), описанный выше. Обратите внимание, что dbt всё равно выполняет некоторые специальные макросы (например, generate_schema_name) во время парсинга, даже если компиляция пропущена.
Пример:
dbt docs generate --no-compile
Используйте аргумент --empty-catalog, чтобы пропустить выполнение запросов к базе данных для заполнения catalog.json. Когда этот флаг указан, dbt docs generate пропустит шаг (3), описанный выше.
Это не рекомендуется для продакшен-окружений, поскольку в таком случае в документации будет отсутствовать информация, получаемая из метаданных базы данных (полный набор колонок в каждой таблице, а также статистика по этим таблицам).
Зато это может ускорить выполнение команды docs generate в процессе разработки, когда вам нужно лишь визуализировать lineage и другую информацию, определённую внутри вашего проекта.
Чтобы узнать, как собирать документацию в dbt, см. раздел build your docs in dbt.
Пример:
dbt docs generate --empty-catalog
Пример:
Используйте флаг --static, чтобы сгенерировать документацию в виде статической страницы для размещения у провайдера облачного хранилища. Файлы catalog.json и manifest.json будут вставлены в файл index.html, создавая одну страницу, которой легко делиться по электронной почте или через приложения для обмена файлами.
dbt docs generate --static
dbt docs serve
Эта команда запускает веб-сервер на порту 8080 для локальной подачи вашей документации и открывает сайт документации в вашем браузере по умолчанию. Веб-сервер коренится в вашей директории target/. Убедитесь, что вы запустили dbt docs generate перед dbt docs serve, потому что команда generate создает артефакт метаданных каталога, от которого зависит команда serve. Вы увидите сообщение об ошибке, если каталог отсутствует.
Используйте команду dbt docs serve, если вы разрабатываете локально с помощью Cloud CLI или dbt Core. Studio IDE не поддерживает эту команду.
Использование:
Вы можете указать другой порт, используя флаг --port.
Пример:
dbt docs serve --port 8001