From d9155c2ec521564acd2aff1c10611ab99a8adfcf Mon Sep 17 00:00:00 2001 From: Trey Spiller Date: Fri, 5 Sep 2025 20:13:22 -0500 Subject: [PATCH 1/2] Expose jinja vars in context namespace --- sqlmesh/dbt/builtin.py | 1 + tests/dbt/test_transformation.py | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/sqlmesh/dbt/builtin.py b/sqlmesh/dbt/builtin.py index c4fe0540b7..0b653b328c 100644 --- a/sqlmesh/dbt/builtin.py +++ b/sqlmesh/dbt/builtin.py @@ -545,6 +545,7 @@ def create_builtin_globals( builtin_globals["run_started_at"] = jinja_globals.get("execution_dt") or now() builtin_globals["dbt"] = AttributeDict(builtin_globals) + builtin_globals["context"] = AttributeDict(builtin_globals) return {**builtin_globals, **jinja_globals} diff --git a/tests/dbt/test_transformation.py b/tests/dbt/test_transformation.py index b5de61031b..89e4bca154 100644 --- a/tests/dbt/test_transformation.py +++ b/tests/dbt/test_transformation.py @@ -1435,6 +1435,13 @@ def test_flags(sushi_test_project: Project): assert context.render("{{ flags.WHICH }}") == "parse" +@pytest.mark.xdist_group("dbt_manifest") +def test_context_namespace(sushi_test_project: Project): + context = sushi_test_project.context + + assert context.render("{{ context.flags.FULL_REFRESH }}") == "None" + + @pytest.mark.xdist_group("dbt_manifest") def test_relation(sushi_test_project: Project): context = sushi_test_project.context From 52d0d672ab46cace3006b48de83bab93f4e4791e Mon Sep 17 00:00:00 2001 From: Trey Spiller Date: Mon, 8 Sep 2025 09:52:08 -0500 Subject: [PATCH 2/2] Don't create unnecessary dict isntance --- sqlmesh/dbt/builtin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sqlmesh/dbt/builtin.py b/sqlmesh/dbt/builtin.py index 0b653b328c..8d48c4a77a 100644 --- a/sqlmesh/dbt/builtin.py +++ b/sqlmesh/dbt/builtin.py @@ -545,7 +545,7 @@ def create_builtin_globals( builtin_globals["run_started_at"] = jinja_globals.get("execution_dt") or now() builtin_globals["dbt"] = AttributeDict(builtin_globals) - builtin_globals["context"] = AttributeDict(builtin_globals) + builtin_globals["context"] = builtin_globals["dbt"] return {**builtin_globals, **jinja_globals}