macros/filter_exceptions.sql (26 lines of code) (raw):

{% macro filter_exceptions() -%} {{ return(adapter.dispatch('filter_exceptions', 'dbt_project_evaluator')()) }} {%- endmacro %} {% macro default__filter_exceptions() %} {% set query_filters %} select column_name, id_to_exclude from {{ ref('dbt_project_evaluator_exceptions') }} where fct_name = '{{ model.name }}' {% endset %} {% if execute %} {% set is_default_seed = 'dbt_project_evaluator' in graph.nodes.values() | selectattr('resource_type', 'equalto', 'seed') | selectattr('name', 'equalto', 'dbt_project_evaluator_exceptions') | map(attribute = 'package_name') | list %} {% if not is_default_seed %} {% if flags.WHICH not in ['compile'] %} where 1 = 1 {% for row_filter in run_query(query_filters) %} and {{ row_filter[0] }} not like '{{ row_filter[1] }}' {% endfor %} {% endif %} {% endif %} {% endif %} {% endmacro %}