SQLFLUFF 跳过 linting 宏文件

问题描述 投票:0回答:1

上周我一直在努力理解为什么 SQLFLUFF 会跳过我项目中的 linting 宏部分。我的项目结构是这样的:

GCP_Project
|- models
|- macros
|- .sqlfluffignore
|- .sqlfluff
|- dbt_project.yml
|- .pre-commit-config.yaml
|- profiles.yml

模型存储在

models
目录中,宏位于
macros
文件夹中。模板程序设置为
dbt
,如下所示:

[sqlfluff]
verbose = 1
templater = dbt
dialect = bigquery
sql_file_exts = .sql
max_line_length = 120
rules = CP01

[sqlfluff:templater]
unwrap_wrapped_queries = true

[sqlfluff:templater:dbt]
target = nonprod

[sqlfluff:templater:jinja]
apply_dbt_builtins = true

[sqlfluff:rules:capitalisation.keywords]
capitalisation_policy = upper

运行

pre-commit run --all-files
后,当 dbt 模型被检查时,宏文件会被跳过,显示以下消息:
WARNING    Skipped file /Users/.../macros/sample.sql because it is a macro

值得注意的是,如果我将模板器更改为

Jinja
,则只有宏文件会被检查。我的需要是 在项目中拥有能够同时检查模型和宏的 linter。

sql jinja2 lint dbt sqlfluff
1个回答
-1
投票
我有完全相同的问题,但还没有找到解决方案,是吗?

© www.soinside.com 2019 - 2024. All rights reserved.