关于 restricted-bigquery-dbt-environment
这是面向 BigQuery 上 dbt 项目的开发 Skill,指导本地开发时将模型写入 test schema。它还包括编译验证,以及运行模型和提交更改前的防护步骤。
主要功能
- 01将模型 schema 设为 test
- 02从 pyproject.toml 安装依赖
- 03编译以验证 schema
- 04运行 dbt run 前征求许可
- 05提交前检查是否移除 test schema
适用场景
- 01避免本地模型写入生产 schema
- 02验证模型目标为 test schema
- 03准备提交 dbt 更改
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ i9wa4/ dotfiles --skill restricted-bigquery-dbt-environment安装后在 Claude Code 中输入/restricted-bigquery-dbt-environment确认已加载。
详细介绍
restricted-bigquery-dbt-environment
阅读此文件后,执行以下操作, 然后以角色身份幽默地回应。
1. 概述
为防止本地开发期间意外写入生产架构,
请暂时在模型配置中添加 schema='test'。
2. 环境设置(仅首次)
从 pyproject.toml 安装依赖包。
uv pip install --requirement pyproject.toml
3. 为模型添加 schema='test'
在目标模型的配置中添加 schema='test'。
始终将其添加到开头,以尽量减少逗号差异。
{{
config(
schema='test', -- <- Add this
materialized='incremental',
...
)
}}
这会将模型写入 test 架构。
4. 验证
使用 compile 验证架构名称。
uv run dbt compile --select <model_name> --profiles-dir ~/.dbt --no-use-colors
确认输出包含 test 架构。
5. 执行 dbt run
- 必须:在执行
dbt run前征得用户许可 - 必须:确认输出架构为
test
uv run dbt run --select <model_name> --profiles-dir ~/.dbt --no-use-colors
6. 执行 dbt test
uv run dbt test --select <model_name> --profiles-dir ~/.dbt --no-use-colors
7. 提交前操作
提交前移除 schema='test'。
{{
config(
-- schema='test', <- Remove
materialized='incremental',
...
)
}}
8. 注意事项
- 绝对禁止:提交时保留
schema='test' - 绝对禁止:未设置
schema='test'就运行 dbt run(有写入生产环境的风险) - 必须:提交前使用
git diff验证已移除schema='test'
评论
支持 Markdown