在工作 dbt 项目中调用 packages.yml 中的 git repo

Posted

技术标签:

【中文标题】在工作 dbt 项目中调用 packages.yml 中的 git repo【英文标题】:Calling a git repo in packages.yml in working dbt project 【发布时间】:2021-08-11 20:53:45 【问题描述】:

我有一个 dbt 项目的 git repo。我想在一个新的 dbt 项目中使用这个项目的宏。因此,我在工作 dbt 项目的 packages.yml 文件中调用了该 repo。说明在这里 - https://docs.getdbt.com/docs/building-a-dbt-project/package-management

但是,我看到无法调试的运行时错误。任何建议表示赞赏

Error Message Snapshot

【问题讨论】:

【参考方案1】:

看来您在尝试作为包包含的 git 存储库中缺少 dbt_project.yml 文件。或者,dbt_project.yml 可能不在预期的位置。根据dbt documentation about packages

通常,dbt 期望 dbt_project.yml 位于包中的***文件中。如果项目改为嵌套在子目录中(可能在更大的 monorepo 中),您可以选择将文件夹路径指定为子目录。 dbt 将尝试仅对位于该子目录中的文件进行稀疏检出。请注意,您必须使用最新版本的 git (>=2.25.0)。

【讨论】:

以上是关于在工作 dbt 项目中调用 packages.yml 中的 git repo的主要内容,如果未能解决你的问题,请参考以下文章

dbt可以连接同一个项目的不同数据库吗?

dbt 的知识文档管理

使用本地包编译 dbt 时出错

DBT - dbt 部署模型应属于的架构的最佳实践?

构建一个dbt 数据库适配器

DBT 模型:如何从查询中创建变量并在 If 语句中使用它