From 6536724e006d1b3fc4ba71c114895dc72f98bf8b Mon Sep 17 00:00:00 2001 From: Deeman Date: Mon, 13 Oct 2025 21:31:56 +0200 Subject: [PATCH] Fix SQLMesh config: remove invalid init_script parameter MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove init_script from DuckDB connection config (not a valid parameter) - Move R2 Iceberg catalog initialization to before_all hooks - Hooks run before sqlmesh plan/run commands - Uses SQLMesh @env_var() macro syntax for environment variables Fixes CI/CD error: 'invalid duckdb connection config: invalid field init_script' 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- transform/sqlmesh_materia/config.yaml | 31 ++++++++++++++++----------- 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/transform/sqlmesh_materia/config.yaml b/transform/sqlmesh_materia/config.yaml index 92c6d0f..870e642 100644 --- a/transform/sqlmesh_materia/config.yaml +++ b/transform/sqlmesh_materia/config.yaml @@ -20,21 +20,28 @@ gateways: extensions: - name: httpfs - name: iceberg - init_script: | - CREATE SECRET IF NOT EXISTS r2_secret ( - TYPE ICEBERG, - TOKEN '{{ env_var("CLOUDFLARE_API_TOKEN") }}' - ); - ATTACH '{{ env_var("R2_WAREHOUSE_NAME", "materia") }}' AS catalog ( - TYPE ICEBERG, - ENDPOINT '{{ env_var("ICEBERG_REST_URI") }}' - ); - CREATE SCHEMA IF NOT EXISTS catalog.materia; - USE catalog.materia; - + default_gateway: dev +# --- Hooks --- +# Run initialization SQL before all plans/runs +# https://sqlmesh.readthedocs.io/en/stable/reference/configuration/#execution-hooks + +before_all: + - | + CREATE SECRET IF NOT EXISTS r2_secret ( + TYPE ICEBERG, + TOKEN '@env_var("CLOUDFLARE_API_TOKEN")' + ) + - | + ATTACH '@env_var("R2_WAREHOUSE_NAME", "materia")' AS catalog ( + TYPE ICEBERG, + ENDPOINT '@env_var("ICEBERG_REST_URI")' + ) + - CREATE SCHEMA IF NOT EXISTS catalog.materia + - USE catalog.materia + # --- Model Defaults --- # https://sqlmesh.readthedocs.io/en/stable/reference/model_configuration/#model-defaults