Неинтерактивный режим Бета-версия
dbt Wizard может работать без интерактивного текстового интерфейса (TUI) — это удобно для скриптов, конвейеров CI, хуков pre-commit и любых рабочих процессов, в которых нужно получить результат за один запуск без подтверждения со стороны пользователя.
Хотите увидеть dbt Wizard в действии? Посмотрите демонстрационное видео.
Нам было бы интересно узнать о вашем опыте работы с dbt Wizard. Поделитесь отзывом, выполнив слеш-команду /feedback в интерактивном сеансе терминала или перейдя в канал #dbt-wizard в Slack-сообществе dbt.
Большое спасибо за помощь в улучшении dbt Wizard и процесса разработки данных с помощью dbt!
exec — разовые запросы
Выполните один запрос и завершите работу:
wizard exec "list all models with no tests"
Передайте входные данные через stdin:
echo "which sources have stale freshness?" | wizard exec -
Используйте exec в CI, чтобы выполнять проверки качества перед переходом к следующим этапам:
# Check test coverage before merging
wizard exec "are there any models in models/marts/ with no tests?"
Вывод в формате JSON
Для последующей обработки выводите структурированный поток событий в формате JSON:
wizard exec --json "summarize test coverage by schema" > coverage.json
Используйте JSON Schema, чтобы задать структуру ответа:
wizard exec \
--json \
--output-schema ./schemas/coverage-response.json \
"summarize test coverage by schema"
Запишите итоговое сообщение в файл:
wizard exec \
--output-last-message ./review-output.md \
"review the changes in this branch for correctness"
review — автоматическая проверка кода
Проверьте незакоммиченные изменения:
wizard review --uncommitted
Проверьте изменения в ветке относительно базовой ветки в CI:
wizard review --base main
Проверьте конкретный коммит:
wizard review --commit abc1234
Пример: проверка кода в GitHub Actions
- name: dbt Wizard review
run: |
wizard review \
--base ${{ github.base_ref }} > review.md
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
Разрешения в неинтерактивном режиме
В неинтерактивном режиме exec Wizard работает без интерактивных запросов на подтверждение. Заранее предоставьте необходимые разрешения для изолированной среды:
# Read-only analysis (default — safe for CI)
wizard exec "list models with no documentation"
# Allow file writes inside the workspace
wizard exec -s workspace-write "add not_null tests to all primary keys in staging"
# Allow shell commands like dbt compile
wizard exec -s workspace-write "compile and validate fct_orders"
Для задач анализа, требующих только чтения (проверки покрытия тестами, запросы для оценки влияния изменений, выявление пробелов в документации), достаточно разрешений по умолчанию. Для задач, которые записывают файлы или выполняют команды dbt, явно указывайте соответствующие флаги.